On 14.02.20 07:42, Nathan Chancellor wrote: > Clang warns: > > In file included from ../arch/s390/purgatory/purgatory.c:10: > In file included from ../include/linux/kexec.h:18: > In file included from ../include/linux/crash_core.h:6: > In file included from ../include/linux/elfcore.h:5: > In file included from ../include/linux/user.h:1: > In file included from ../arch/s390/include/asm/user.h:11: > ../arch/s390/include/asm/page.h:45:6: warning: converting the result of > '<<' to a boolean always evaluates to false > [-Wtautological-constant-compare] > if (PAGE_DEFAULT_KEY) > ^ > ../arch/s390/include/asm/page.h:23:44: note: expanded from macro > 'PAGE_DEFAULT_KEY' > #define PAGE_DEFAULT_KEY (PAGE_DEFAULT_ACC << 4) > ^ > 1 warning generated. > > Explicitly compare this against zero to silence the warning as it is > intended to be used in a boolean context. > > Fixes: de3fa841e429 ("s390/mm: fix compile for PAGE_DEFAULT_KEY != 0") > Link: https://github.com/ClangBuiltLinux/linux/issues/860 > Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx> Acked-by: Christian Borntraeger <borntraeger@xxxxxxxxxx> > --- > arch/s390/include/asm/page.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/s390/include/asm/page.h b/arch/s390/include/asm/page.h > index 85e944f04c70..1019efd85b9d 100644 > --- a/arch/s390/include/asm/page.h > +++ b/arch/s390/include/asm/page.h > @@ -42,7 +42,7 @@ void __storage_key_init_range(unsigned long start, unsigned long end); > > static inline void storage_key_init_range(unsigned long start, unsigned long end) > { > - if (PAGE_DEFAULT_KEY) > + if (PAGE_DEFAULT_KEY != 0) > __storage_key_init_range(start, end); > } > >