lkml.org 
[lkml]   [2016]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] qla2xxx: rewrite code to avoid hitting gcc bug 70646
    On 04/15/2016 04:40 PM, James Bottomley wrote:
    > On Fri, 2016-04-15 at 12:36 +0200, Denys Vlasenko wrote:
    >> More info here:
    >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70646
    >
    > This bug is under investigation, so I'd rather not alter code for a gcc
    > bug until we know if we can supply options to fix it rather than
    > changing code.


    Background. The bug exists in gcc for 2 years, but it is rather
    hard to trigger, so nobody noticed.

    Unfortunately for kernel, these two commits landed in Linus tree
    in March 16 and 17:


    On 04/13/2016 05:36 AM, Josh Poimboeuf wrote:
    > It occurs with the combination of the following two recent commits:
    >
    > - bc27fb68aaad ("include/uapi/linux/byteorder, swab: force inlining of some byteswap operations")
    > - ef3fb2422ffe ("scsi: fc: use get/put_unaligned64 for wwn access")


    and now *many* users of qla2x00 and new-ish gcc are going to
    very much notice it, as their kernels will start crashing reliably.

    The commits can be reverted, sure, but they per se do not contain
    anything unusual. They, together with not very typical construct
    in qla2x00_get_host_fabric_name, one
    which boils down to "swab64p(constant_array_of_8_bytes)",
    just happen to nudge gcc in a right way to finally trigger the bug.

    So I came with another idea how to forestall the imminent deluge of
    qla2x00 oops reports - this patch.

    \
     
     \ /
      Last update: 2016-04-15 21:21    [W:2.090 / U:0.052 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site