[Bug 639756] New: mis-compilation of kernel-xen code
https://bugzilla.novell.com/show_bug.cgi?id=639756 https://bugzilla.novell.com/show_bug.cgi?id=639756#c0 Summary: mis-compilation of kernel-xen code Classification: openSUSE Product: openSUSE 11.3 Version: Final Platform: i686 OS/Version: openSUSE 11.3 Status: NEW Severity: Major Priority: P5 - None Component: Development AssignedTo: pth@novell.com ReportedBy: jbeulich@novell.com QAContact: qa@suse.de Found By: Development Blocker: --- Created an attachment (id=389930) --> (http://bugzilla.novell.com/attachment.cgi?id=389930) pre-processed source of the affected file The Xen version of __change_page_attr() gets mis-compiled (also with plain 4.5.0, but not with plain 4.5.1) by means of corrupting the input to cmpxchg8b: C001B4C9 mov ecx, [esp+14] C001B4CD mov ebx, [esp+0C] C001B4D1 mov edi, [esp+08] C001B4D5 mov [esp+30], ecx C001B4D9 mov [esp+34], ebx C001B4DD !!! mov ecx, ebx C001B4DF mov eax, [edi] C001B4E1 mov edx, [edi+04] C001B4E4 *** lock cmpxchg8b [edi] C001B4E8 jne C001B4DF leading to a crash at the instruction marked with *** (see bug 638803). While re-work of the set_64bit() function in the kernel (in 2.6.34.6) results in the problem no longer being exhibited, it is clear that it may get exposed at any time again if the compiler doesn't get fixed. Possibly related to bug 636118, which is also reported as ix86 only (other than the upstream bug referenced there). Attaching full pre-processed source, to be compiled with -Wall -fno-strict-aliasing -fno-common -fno-delete-null-pointer-checks -msoft-float -mregparm=3 -freg-struct-return -mpreferred-stack-boundary=2 -march=i686 -ffreestanding -Wno-sign-compare -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-stack-protector -fomit-frame-pointer -fasynchronous-unwind-tables -fno-inline-functions-called-once -O2 -c. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=639756
https://bugzilla.novell.com/show_bug.cgi?id=639756#c2
--- Comment #2 from Richard Guenther
https://bugzilla.novell.com/show_bug.cgi?id=639756
https://bugzilla.novell.com/show_bug.cgi?id=639756#c3
--- Comment #3 from Jan Beulich
Even though unrelated(?) ... looks completely bogus.
Agreed, to some degree. But it has been working for (many) years...
In the devel:gcc project there is an updated gcc45.
Which doesn't help with kernels being built (by the build service?) for the distribution, if I'm not mistaken. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=639756
https://bugzilla.novell.com/show_bug.cgi?id=639756#c4
--- Comment #4 from Richard Guenther
(In reply to comment #2)
In the devel:gcc project there is an updated gcc45.
Which doesn't help with kernels being built (by the build service?) for the distribution, if I'm not mistaken.
True. Can you identify a patch on the 4.5 branch that fixed the bug? I don't seem to remember anything specific. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=639756
https://bugzilla.novell.com/show_bug.cgi?id=639756#c5
--- Comment #5 from Jan Beulich
https://bugzilla.novell.com/show_bug.cgi?id=639756
https://bugzilla.novell.com/show_bug.cgi?id=639756#c6
Richard Biener
participants (1)
-
bugzilla_noreply@novell.com