diff options
author | Hugh Dickins <hugh@veritas.com> | 2005-04-19 13:29:21 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org.(none)> | 2005-04-19 13:29:21 -0700 |
commit | 6119be0bba10e7e7b1e5650a87812fa2fd8d3a60 (patch) | |
tree | 5acc21e0611f1caf7163c120ca4214b2ee452b0d | |
parent | 8462e201756dd3bbe7e542106fc6fd6fe059cee2 (diff) | |
download | linux-6119be0bba10e7e7b1e5650a87812fa2fd8d3a60.tar.gz linux-6119be0bba10e7e7b1e5650a87812fa2fd8d3a60.tar.bz2 linux-6119be0bba10e7e7b1e5650a87812fa2fd8d3a60.zip |
[PATCH] freepgt: arm FIRST_USER_ADDRESS PAGE_SIZE
ARM define FIRST_USER_ADDRESS as PAGE_SIZE (beyond the machine vectors when
they are mapped low), and use that definition in place of locally defined
MIN_MAP_ADDR.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | arch/arm/kernel/sys_arm.c | 11 | ||||
-rw-r--r-- | include/asm-arm/pgtable.h | 7 |
2 files changed, 9 insertions, 9 deletions
diff --git a/arch/arm/kernel/sys_arm.c b/arch/arm/kernel/sys_arm.c index c41dc605f121..7ba6342cf93d 100644 --- a/arch/arm/kernel/sys_arm.c +++ b/arch/arm/kernel/sys_arm.c @@ -51,13 +51,6 @@ asmlinkage int sys_pipe(unsigned long __user *fildes) return error; } -/* - * This is the lowest virtual address we can permit any user space - * mapping to be mapped at. This is particularly important for - * non-high vector CPUs. - */ -#define MIN_MAP_ADDR (PAGE_SIZE) - /* common code for old and new mmaps */ inline long do_mmap2( unsigned long addr, unsigned long len, @@ -69,7 +62,7 @@ inline long do_mmap2( flags &= ~(MAP_EXECUTABLE | MAP_DENYWRITE); - if (flags & MAP_FIXED && addr < MIN_MAP_ADDR) + if (flags & MAP_FIXED && addr < FIRST_USER_ADDRESS) goto out; error = -EBADF; @@ -122,7 +115,7 @@ sys_arm_mremap(unsigned long addr, unsigned long old_len, { unsigned long ret = -EINVAL; - if (flags & MREMAP_FIXED && new_addr < MIN_MAP_ADDR) + if (flags & MREMAP_FIXED && new_addr < FIRST_USER_ADDRESS) goto out; down_write(¤t->mm->mmap_sem); diff --git a/include/asm-arm/pgtable.h b/include/asm-arm/pgtable.h index 91ffb1f4cd10..2df4eacf4fa9 100644 --- a/include/asm-arm/pgtable.h +++ b/include/asm-arm/pgtable.h @@ -102,6 +102,13 @@ extern void __pgd_error(const char *file, int line, unsigned long val); #define PGDIR_SIZE (1UL << PGDIR_SHIFT) #define PGDIR_MASK (~(PGDIR_SIZE-1)) +/* + * This is the lowest virtual address we can permit any user space + * mapping to be mapped at. This is particularly important for + * non-high vector CPUs. + */ +#define FIRST_USER_ADDRESS PAGE_SIZE + #define FIRST_USER_PGD_NR 1 #define USER_PTRS_PER_PGD ((TASK_SIZE/PGDIR_SIZE) - FIRST_USER_PGD_NR) |