aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2006-01-17 07:03:38 +0100
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-16 23:18:35 -0800
commit8817210d4d968e58f7d93db2eecd17b20dd03d40 (patch)
tree4a4084011f348f44c388e1876e55c0d2a03f46b4 /include
parent[PATCH] x86_64: Remove elf32_map in 32bit ELF loader (diff)
downloadlinux-dev-8817210d4d968e58f7d93db2eecd17b20dd03d40.tar.xz
linux-dev-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')
-rw-r--r--include/asm-x86_64/ia32.h2
-rw-r--r--include/asm-x86_64/processor.h2
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 */