Skip to content
  • Masahiro Yamada's avatar
    sandbox: change local_irq_save() to macro · 1638d980
    Masahiro Yamada authored
    
    
    local_irq_save() should be a macro, not a function
    because local_irq_save() saves flag to the given argument.
    
    GCC is silent about this issue, but Clang warns:
    
    In file included from lib/asm-offsets.c:15:
    In file included from include/common.h:20:
    In file included from include/linux/bitops.h:110:
    arch/sandbox/include/asm/bitops.h:59:17:
     warning: variable 'flags' is uninitialized when used here
          [-Wuninitialized]
            local_irq_save(flags);
                           ^~~~~
    
    That change causes another warning:
    
    In file included from include/linux/bitops.h:110:0,
                     from include/common.h:20,
                     from lib/asm-offsets.c:15:
    arch/sandbox/include/asm/bitops.h: In function ‘test_and_set_bit’:
    arch/sandbox/include/asm/bitops.h:56:16: warning: unused variable ‘flags’ [-Wunused-variable]
    
    So, flags should be set to __always_unused.
    
    Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
    Cc: Simon Glass <sjg@chromium.org>
    Cc: Jeroen Hofstee <jeroen@myspectrum.nl>
    Acked-by: default avatarSimon Glass <sjg@chromium.org>
    Acked-by: default avatarJeroen Hofstee <jeroen@myspectrum.nl>
    1638d980