summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSuresh B. Siddha <suresh.b.siddha@intel.com>2004-10-18 18:10:06 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-10-18 18:10:06 -0700
commit48716031dc20f32b7a0f76f3590150f6e49e64a3 (patch)
treefec84737f16adc4560c358ca6bb2bd0db6f75a59 /include
parent18e1a8cb3c13d8742c444a4c856dd22f28792908 (diff)
[PATCH] no exec: i386 and x86_64 cleanups
Sync x86_64 noexec behaviour with i386. And remove all the confusing noexec related boot parameters. Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r--include/asm-x86_64/elf.h5
-rw-r--r--include/asm-x86_64/page.h12
2 files changed, 7 insertions, 10 deletions
diff --git a/include/asm-x86_64/elf.h b/include/asm-x86_64/elf.h
index 9839b92d2706..cfeec4e555ab 100644
--- a/include/asm-x86_64/elf.h
+++ b/include/asm-x86_64/elf.h
@@ -143,6 +143,11 @@ typedef struct user_i387_struct elf_fpregset_t;
#ifdef __KERNEL__
extern void set_personality_64bit(void);
#define SET_PERSONALITY(ex, ibcs2) set_personality_64bit()
+/*
+ * An executable for which elf_read_implies_exec() returns TRUE will
+ * have the READ_IMPLIES_EXEC personality flag set automatically.
+ */
+#define elf_read_implies_exec(ex, have_pt_gnu_stack) (!(have_pt_gnu_stack))
/*
* An executable for which elf_read_implies_exec() returns TRUE will
diff --git a/include/asm-x86_64/page.h b/include/asm-x86_64/page.h
index c5c2b01cfcfa..b45e80c76653 100644
--- a/include/asm-x86_64/page.h
+++ b/include/asm-x86_64/page.h
@@ -130,18 +130,10 @@ extern __inline__ int get_order(unsigned long size)
#define virt_addr_valid(kaddr) pfn_valid(__pa(kaddr) >> PAGE_SHIFT)
#define pfn_to_kaddr(pfn) __va((pfn) << PAGE_SHIFT)
-#define __VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \
- VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
-#define __VM_STACK_FLAGS (VM_GROWSDOWN | VM_READ | VM_WRITE | VM_EXEC | \
- VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
-
#define VM_DATA_DEFAULT_FLAGS \
- (test_thread_flag(TIF_IA32) ? vm_data_default_flags32 : \
- vm_data_default_flags)
+ (((current->personality & READ_IMPLIES_EXEC) ? VM_EXEC : 0 ) | \
+ VM_READ | VM_WRITE | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
-#define VM_STACK_DEFAULT_FLAGS \
- (test_thread_flag(TIF_IA32) ? vm_stack_flags32 : vm_stack_flags)
-
#define CONFIG_ARCH_GATE_AREA 1
#ifndef __ASSEMBLY__