[PATCH] x86_64: Pass -32 to the assembler when compiling the 32bit vsyscall pages
This quietens warnings and actually fixes a bug. The unwind tables would come out wrong without -32, causing pthread cancellation during them to crash in the gcc runtime. The problem seems to only happen with newer binutils (it doesn't happen with 2.16.91.0.2 but happens wit 2.16.91.0.5) Thanks to David Altobelli <david.altobelli@hp.com> and Brian Baker <Brian.B@hp.com> for test case and initial analysis. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
304dbdb7a4
commit
ddbe3eec59
|
@ -27,5 +27,5 @@ $(obj)/vsyscall-sysenter.so $(obj)/vsyscall-syscall.so: \
|
|||
$(obj)/vsyscall-%.so: $(src)/vsyscall.lds $(obj)/vsyscall-%.o FORCE
|
||||
$(call if_changed,syscall)
|
||||
|
||||
AFLAGS_vsyscall-sysenter.o = -m32
|
||||
AFLAGS_vsyscall-syscall.o = -m32
|
||||
AFLAGS_vsyscall-sysenter.o = -m32 -Wa,-32
|
||||
AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32
|
||||
|
|
Loading…
Reference in a new issue