* [PATCH] Bring x86-64 ia32 emul in sync with i386 on READ_IMPLIES_EXEC enabling
@ 2006-07-02 0:22 Markus Schoder
2006-07-04 11:24 ` [discuss] " Andi Kleen
0 siblings, 1 reply; 2+ messages in thread
From: Markus Schoder @ 2006-07-02 0:22 UTC (permalink / raw)
To: discuss; +Cc: linux-kernel
Currently ia32 binaries behave differently with respect to enabling
READ_IMPLIES_EXEC. On i386 a binary with the exec_stack flag set is
executed with READ_IMPLIES_EXEC enabled as well. The same binary
executes without READ_IMPLIES_EXEC on x86-64.
This causes binaries that work on i386 to fail on x86-64 which goes
somewhat against the whole 32 bit emulation idea.
It has been argued that READ_IMPLIES_EXEC should not be enabled at all
for binaries that have the exec_stack flag. Which is probably a valid
point. However until this is clarified I think x86-64 should behave the
same for ia32 binaries as i386.
The following patch brings x86-64 in sync with i386 for ia32 binaries.
Signed-off-by: Markus Schoder <lists@gammarayburst.de>
-----
diff -u -r linux-2.6.17.3.old/arch/x86_64/ia32/ia32_binfmt.c linux-2.6.17.3/arch/x86_64/ia32/ia32_binfmt.c
--- linux-2.6.17.3.old/arch/x86_64/ia32/ia32_binfmt.c 2006-06-18 15:10:19.000000000 +0200
+++ linux-2.6.17.3/arch/x86_64/ia32/ia32_binfmt.c 2006-07-01 16:59:56.121915808 +0200
@@ -182,7 +182,7 @@
#define user user32
#define __ASM_X86_64_ELF_H 1
-#define elf_read_implies_exec(ex, have_pt_gnu_stack) (!(have_pt_gnu_stack))
+#define elf_read_implies_exec(ex, executable_stack) (executable_stack != EXSTACK_DISABLE_X)
//#include <asm/ia32.h>
#include <linux/elf.h>
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [discuss] [PATCH] Bring x86-64 ia32 emul in sync with i386 on READ_IMPLIES_EXEC enabling
2006-07-02 0:22 [PATCH] Bring x86-64 ia32 emul in sync with i386 on READ_IMPLIES_EXEC enabling Markus Schoder
@ 2006-07-04 11:24 ` Andi Kleen
0 siblings, 0 replies; 2+ messages in thread
From: Andi Kleen @ 2006-07-04 11:24 UTC (permalink / raw)
To: discuss; +Cc: Markus Schoder, linux-kernel
> The following patch brings x86-64 in sync with i386 for ia32 binaries.
Added. Thanks
-Andi
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-07-04 11:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-07-02 0:22 [PATCH] Bring x86-64 ia32 emul in sync with i386 on READ_IMPLIES_EXEC enabling Markus Schoder
2006-07-04 11:24 ` [discuss] " Andi Kleen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox