[U-Boot] [PATCH v2] sandbox: change local_irq_save() to macro

Simon Glass sjg at chromium.org
Thu Jun 12 06:27:44 CEST 2014


On 11 June 2014 23:26, Masahiro Yamada <yamada.m at jp.panasonic.com> 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: Simon Glass <sjg at chromium.org>


More information about the U-Boot mailing list