• Greg Kroah-Hartman's avatar
    lz4: fix bogus gcc warning · 529ada21
    Greg Kroah-Hartman authored
    When building lz4 under gcc-7 we get the following bogus warning:
    
      CC [M]  lib/lz4/lz4hc_compress.o
    lib/lz4/lz4hc_compress.c: In function ‘lz4hc_compress’:
    lib/lz4/lz4hc_compress.c:179:42: warning: ‘delta’ may be used uninitialized in this function [-Wmaybe-uninitialized]
        chaintable[(size_t)(ptr) & MAXD_MASK] = delta;
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
    lib/lz4/lz4hc_compress.c:134:6: note: ‘delta’ was declared here
      u16 delta;
          ^~~~~
    
    This doesn't show up in the 4.4-stable tree due to us turning off
    warnings like this.  It also doesn't show up in newer kernel versions as
    this code was totally rewritten.
    
    So for now, to get the 4.9-stable tree to build with 0 warnings on x86
    allmodconfig, let's just shut the compiler up by initializing the
    variable to 0, despite it not really doing anything.
    
    To be far, this code is crazy complex, so the fact that gcc can't
    determine if the variable is really used or not isn't that bad, I'd
    blame the code here instead of the compiler.
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    529ada21
lz4hc_compress.c 12.3 KB