Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 fs/proc/task_mmu.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

diff -puN fs/proc/task_mmu.c~proc-pid-smaps-fix-fix fs/proc/task_mmu.c
--- 25/fs/proc/task_mmu.c~proc-pid-smaps-fix-fix	2005-05-02 03:28:36.000000000 -0700
+++ 25-akpm/fs/proc/task_mmu.c	2005-05-02 03:30:35.000000000 -0700
@@ -2,6 +2,7 @@
 #include <linux/hugetlb.h>
 #include <linux/mount.h>
 #include <linux/seq_file.h>
+#include <linux/highmem.h>
 
 #include <asm/elf.h>
 #include <asm/uaccess.h>
@@ -204,7 +205,7 @@ static void smaps_pte_range(pmd_t *pmd,
 			}
 		}
 	} while (address < end);
-	pte_unmap(pte);
+	pte_unmap(ptep - 1);
 }
 
 static void smaps_pmd_range(pud_t *pud,
_