atom feed43 messages in org.kernel.vger.linux-kernelRe: Linux 2.6.27.27
FromSent OnAttachments
Greg KHJul 19, 2009 9:06 pm 
Greg KHJul 19, 2009 9:07 pm 
Krzysztof OledzkiJul 20, 2009 4:51 am 
Greg KHJul 20, 2009 8:09 am 
Linus TorvaldsJul 20, 2009 9:00 am 
Krzysztof OledzkiJul 20, 2009 2:44 pm 
Linus TorvaldsJul 20, 2009 3:07 pm 
Marc DionneJul 20, 2009 4:47 pm 
Linus TorvaldsJul 20, 2009 4:56 pm 
Marc DionneJul 20, 2009 5:37 pm 
Linus TorvaldsJul 20, 2009 6:01 pm 
Linus TorvaldsJul 20, 2009 6:04 pm 
Marc DionneJul 20, 2009 7:38 pm 
Krzysztof OledzkiJul 20, 2009 11:33 pm 
Krzysztof OledzkiJul 20, 2009 11:40 pm 
Krzysztof OledzkiJul 21, 2009 3:15 am 
Linus TorvaldsJul 21, 2009 9:11 am 
Linus TorvaldsJul 21, 2009 12:15 pm 
Troy MoureJul 21, 2009 2:33 pm 
Linus TorvaldsJul 21, 2009 5:52 pm 
Linus TorvaldsJul 21, 2009 6:07 pm 
Linus TorvaldsJul 21, 2009 6:16 pm 
Troy MoureJul 21, 2009 11:15 pm 
Krzysztof OledzkiJul 22, 2009 1:11 am 
Krzysztof OledzkiJul 22, 2009 1:31 am 
Krzysztof OledzkiJul 22, 2009 2:55 am 
Jens RosenboomJul 22, 2009 2:57 am 
Troy MoureJul 22, 2009 3:23 am 
Troy MoureJul 22, 2009 3:26 am 
Dick StreeflandJul 22, 2009 3:32 am 
Krzysztof OledzkiJul 22, 2009 3:44 am 
Krzysztof OledzkiJul 22, 2009 3:54 am 
Krzysztof OledzkiJul 22, 2009 4:49 am 
Henrique de Moraes HolschuhJul 22, 2009 6:26 am 
Krzysztof OledzkiJul 22, 2009 6:45 am 
Krzysztof OledzkiJul 22, 2009 6:48 am 
Ian Lance TaylorJul 22, 2009 8:35 am 
Linus TorvaldsJul 22, 2009 8:48 am 
Linus TorvaldsJul 22, 2009 8:58 am 
Krzysztof OlędzkiJul 23, 2009 10:33 am 
Greg KHJul 24, 2009 2:13 pm 
Pavel MachekJul 29, 2009 7:56 am 
Linus TorvaldsJul 29, 2009 8:58 am 
Subject:Re: Linux 2.6.27.27
From:Linus Torvalds (torv@linux-foundation.org)
Date:Jul 21, 2009 9:11:21 am
List:org.kernel.vger.linux-kernel

On Tue, 21 Jul 2009, Krzysztof Oledzki wrote:

Perfect.

And interestingly, the "fno-strict-overflow" kernel is actually much closer to the "fnone" kernel than to the "fwrapv" one. I have some silly scripts based on 'objdump -d' plus a lot of stupid sed scripting to remove the trivial differences due to instruction addresses, and then doing a 'diff -u' between the munged disassembly of the kernels gives me:

[torvalds@nehalem fno-strict-overflow]$ wc -l fnone-to-fno-strict-overflow
fwrapv-to-fno-strict-overflow 39309 fnone-to-fno-strict-overflow 91423 fwrapv-to-fno-strict-overflow 130732 total

ie the diff from the kernel with no flags is less than twice the size of the diff from fwrapv.

Still - it's almost 40kB of diffs of disassembly, so I'm not going to guarantee that I can make any sense of it and find the compiler problem in it. But I'll try. And send you test-patches to see if I can pinpoint the code that causes the problem.

Kernels are identical and are compiled from the same config, on the same server with gcc-4.2.4, binutils-2.19. There is no ccache installed and the kernels are not patched with any additonal patches - just vanilla linux-2.6.27.27.

Thank you.

Screenshot from the hanging kernel (-fno-strict-overflow): http://noc.axelspringer.pl/no-strict-overflow-vs-wrapv/2.6.27.27-hang.png

Dmesg from a bootable kernel: http://noc.axelspringer.pl/no-strict-overflow-vs-wrapv/dmesg

Great. This is all about as perfect as could be asked for. Now it's just a question of trying to find the right code generation difference...

Linus