diff options
author | 2006-01-17 07:03:38 +0100 | |
---|---|---|
committer | 2006-01-16 23:18:35 -0800 | |
commit | 8817210d4d968e58f7d93db2eecd17b20dd03d40 (patch) | |
tree | 4a4084011f348f44c388e1876e55c0d2a03f46b4 /include/asm-x86_64 | |
parent | [PATCH] x86_64: Remove elf32_map in 32bit ELF loader (diff) | |
download | linux-8817210d4d968e58f7d93db2eecd17b20dd03d40.tar.gz linux-8817210d4d968e58f7d93db2eecd17b20dd03d40.tar.bz2 linux-8817210d4d968e58f7d93db2eecd17b20dd03d40.zip |
[PATCH] x86_64: Flexmap for 32bit and randomized mappings for 64bit
Another try at this.
For 32bit follow the 32bit implementation from Ingo -
mappings are growing down from the end of stack now
and vary randomly by 1GB.
Randomized mappings for 64bit just vary the normal mmap break
by 1TB. I didn't bother implementing full flex mmap for 64bit
because it shouldn't be needed there.
Cc: mingo@elte.hu
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-x86_64')
-rw-r--r-- | include/asm-x86_64/ia32.h | 2 | ||||
-rw-r--r-- | include/asm-x86_64/processor.h | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/include/asm-x86_64/ia32.h b/include/asm-x86_64/ia32.h index c7bc9c0525ba..e6b7f2234e43 100644 --- a/include/asm-x86_64/ia32.h +++ b/include/asm-x86_64/ia32.h @@ -169,6 +169,8 @@ int ia32_child_tls(struct task_struct *p, struct pt_regs *childregs); struct linux_binprm; extern int ia32_setup_arg_pages(struct linux_binprm *bprm, unsigned long stack_top, int exec_stack); +struct mm_struct; +extern void ia32_pick_mmap_layout(struct mm_struct *mm); #endif diff --git a/include/asm-x86_64/processor.h b/include/asm-x86_64/processor.h index a1ba7c97465a..8c8d88c036ed 100644 --- a/include/asm-x86_64/processor.h +++ b/include/asm-x86_64/processor.h @@ -477,4 +477,6 @@ extern unsigned long boot_option_idle_override; /* Boot loader type from the setup header */ extern int bootloader_type; +#define HAVE_ARCH_PICK_MMAP_LAYOUT 1 + #endif /* __ASM_X86_64_PROCESSOR_H */ |