[U-Boot] [PATCH v2] sandbox: change local_irq_save() to macro
Jeroen Hofstee
jeroen at myspectrum.nl
Thu Jun 12 23:20:20 CEST 2014
On do, 2014-06-12 at 12:26 +0900, Masahiro Yamada wrote:
> 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: Masahiro Yamada <yamada.m at jp.panasonic.com>
> Cc: Simon Glass <sjg at chromium.org>
> Cc: Jeroen Hofstee <jeroen at myspectrum.nl>
Acked-by: Jeroen Hofstee <jeroen at myspectrum.nl>
Regards,
Jeroen
More information about the U-Boot
mailing list