• Arnd Bergmann's avatar
    Kbuild: use cc-disable-warning consistently for maybe-uninitialized · c4fe79a4
    Arnd Bergmann authored
    commit b334e19a upstream.
    
    In commit a76bcf55 ("Kbuild: enable -Wmaybe-uninitialized warning
    for "make W=1""), I reverted another change that happened to fix a problem
    with old compilers, and now we get this report again with old compilers
    (prior to gcc-4.8) and GCOV enabled:
    
       cc1: warnings being treated as errors
       drivers/gpu/drm/i915/intel_ringbuffer.c: In function 'intel_ring_setup_status_page':
       drivers/gpu/drm/i915/intel_ringbuffer.c:438: error: 'mmio.reg' may be used uninitialized in this function
       At top level:
    >> cc1: error: unrecognized command line option "-Wno-maybe-uninitialized"
    
    The problem is that we turn off the warning conditionally in a number
    of places as we should, but one of them does it unconditionally.
    Instead, change it to call cc-disable-warning as we do elsewhere.
    
    The original patch that caused it was merged into linux-4.7, then
    4.8 removed the change and 4.9 brought it back, so we probably want
    a backport to 4.9 once this is merged.
    
    Use a ':=' assignment instead of '=' to force the cc-disable-warning
    call to only be evaluated once instead of every time.
    
    Fixes: a76bcf55 ("Kbuild: enable -Wmaybe-uninitialized warning for "make W=1"")
    Fixes: e72e2dfe ("gcov: disable -Wmaybe-uninitialized warning")
    Reported-by: default avatarkbuild test robot <fengguang.wu@intel.com>
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    c4fe79a4
Makefile 57.7 KB