• Kees Cook's avatar
    m68k: cmpxchg: Dereference matching size · 2a55550f
    Kees Cook authored
    Similar to the recent arm64 fix[1], avoid overly wide casts in the m68k
    cmpxchg implementation. Avoids this warning under -Warray-bounds with
    GCC 11:
    
    net/sched/cls_tcindex.c: In function 'tcindex_set_parms':
    ./arch/m68k/include/asm/cmpxchg.h:64:17: warning: array subscript 'volatile struct __xchg_dummy[0]' is partly outside array bounds of 'struct tcf_result[1]' [-Warray-bounds]
       64 |                 __asm__ __volatile__
          |                 ^~~~~~~
    net/sched/cls_tcindex.c:338:27: note: while referencing 'cr'
      338 |         struct tcf_result cr = {};
          |                           ^~
    
    No binary output difference are seen from this change.
    
    [1] commit 3364c6ce ("arm64: atomics: lse: Dereference matching size")
    
    Cc: "Peter Zijlstra (Intel)" <peterz@infradead.org>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Greg Ungerer <gerg@linux-m68k.org>
    Cc: linux-m68k@lists.linux-m68k.org
    Acked-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
    Link: https://lore.kernel.org/lkml/CAMuHMdVRrD+2zKoHxAaQdDuiK5JFDanbv0SJ91OdWfx+eyekPQ@mail.gmail.comSigned-off-by: default avatarKees Cook <keescook@chromium.org>
    2a55550f
cmpxchg.h 3.08 KB