Magellan Linux

Contents of /trunk/kernel26-magellan/patches-2.6.16-r10/0104-2.6.16.12-m32-syscall.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 70 - (show annotations) (download)
Thu May 11 19:09:22 2006 UTC (18 years ago) by niro
File size: 1237 byte(s)
import

1 From: Andi Kleen <ak@suse.de>
2 Date: Fri, 21 Apr 2006 07:43:22 +0000 (+0200)
3 Subject: [PATCH] x86_64: Pass -32 to the assembler when compiling the 32bit vsyscall pages
4 X-Git-Url: http://www.kernel.org/git/?p=linux/kernel/git/stable/linux-2.6.16.y.git;a=commitdiff;h=355bd3d4ea761a66880088ac2d0c5c95866df4a6
5
6 [PATCH] x86_64: Pass -32 to the assembler when compiling the 32bit vsyscall pages
7
8 This quietens warnings and actually fixes a bug. The unwind tables would
9 come out wrong without -32, causing pthread cancellation during them
10 to crash in the gcc runtime.
11
12 The problem seems to only happen with newer binutils
13 (it doesn't happen with 2.16.91.0.2 but happens wit 2.16.91.0.5)
14
15 Thanks to Brian Baker @ HP for test case and initial analysis.
16
17 Cc: brian.b@hp.com
18
19 Signed-off-by: Andi Kleen <ak@suse.de>
20 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
21 ---
22
23 --- a/arch/x86_64/ia32/Makefile
24 +++ b/arch/x86_64/ia32/Makefile
25 @@ -27,5 +27,5 @@ $(obj)/vsyscall-sysenter.so $(obj)/vsysc
26 $(obj)/vsyscall-%.so: $(src)/vsyscall.lds $(obj)/vsyscall-%.o FORCE
27 $(call if_changed,syscall)
28
29 -AFLAGS_vsyscall-sysenter.o = -m32
30 -AFLAGS_vsyscall-syscall.o = -m32
31 +AFLAGS_vsyscall-sysenter.o = -m32 -Wa,-32
32 +AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32