lkml.org 
[lkml]   [2009]   [Jul]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Linux 2.6.27.27


    On Tue, 21 Jul 2009, Krzysztof Oledzki wrote:
    >
    > OK, there are three kernels, exactly as you requested:
    >
    > http://noc.axelspringer.pl/no-strict-overflow-vs-wrapv/vmlinux-fno-strict-overflow.bz2 (Hangs)
    > http://noc.axelspringer.pl/no-strict-overflow-vs-wrapv/vmlinux-fwrapv.bz2 (OK)
    > http://noc.axelspringer.pl/no-strict-overflow-vs-wrapv/vmlinux-fnone.bz2 (OK)

    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


    \
     
     \ /
      Last update: 2009-10-18 23:28    [W:4.248 / U:1.080 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site