CC: kbuild-all(a)lists.01.org TO: Mark Rutland tree: https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git atomics/arch-atomic head: 606c4c0bfb61fbd35a6fc6da0be373b3f6ae89f6 commit: 606c4c0bfb61fbd35a6fc6da0be373b3f6ae89f6 [33/33] locking/atomics: atomic-instrumented: simplify ifdeffery :::::: branch date: 8 hours ago :::::: commit date: 8 hours ago config: sparc-randconfig-s032-20210511 (attached as .config) compiler: sparc64-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.3-341-g8af24329-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?id=606c4c0bfb61fbd35a6fc6da0be373b3f6ae89f6 git remote add mark-rutland https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git git fetch --no-tags mark-rutland atomics/arch-atomic git checkout 606c4c0bfb61fbd35a6fc6da0be373b3f6ae89f6 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=sparc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) arch/sparc/vdso/vdso32/vclock_gettime.c: note: in included file (through arch/sparc/include/asm/atomic.h, include/linux/atomic.h, include/asm-generic/bitops/lock.h, ...): arch/sparc/include/asm/atomic_64.h:37:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:37:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:37:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:37:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:37:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:37:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:38:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:38:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:38:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:38:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:38:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:38:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:43:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:43:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:43:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:43:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:44:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:44:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:44:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:44:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:45:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:45:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:45:1: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:45:1: sparse: sparse: got * arch/sparc/include/asm/atomic_64.h:63:46: sparse: sparse: Expected ) in function declarator arch/sparc/include/asm/atomic_64.h:63:46: sparse: sparse: got * arch/sparc/vdso/vdso32/vclock_gettime.c: note: in included file (through include/linux/atomic.h, include/asm-generic/bitops/lock.h, arch/sparc/include/asm/bitops_64.h, ...): include/linux/atomic-arch-fallback.h:1259:45: sparse: sparse: Expected ) in function declarator include/linux/atomic-arch-fallback.h:1259:45: sparse: sparse: got * include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ) in function declarator include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got ! >> include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Trying to use reserved word 'if' as identifier include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ) in nested declarator include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got volatile >> include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Trying to use reserved word 'const' as identifier include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got } >> include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Trying to use reserved word 'do' as identifier include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ; at end of declaration include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got { include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ) in function declarator include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got ! >> include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Trying to use reserved word 'if' as identifier include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ) in function declarator include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got * >> include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Trying to use reserved word 'typeof' as identifier include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1261:16: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1262:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1262:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ) in function declarator include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got ! include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Trying to use reserved word 'if' as identifier include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Trying to use reserved word 'do' as identifier include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ; at end of declaration include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got { include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ) in function declarator include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got ! include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Trying to use reserved word 'if' as identifier include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Trying to use reserved word 'do' as identifier include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ; at end of declaration include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got { include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1270:9: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1271:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1271:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1448:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1448:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1464:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1464:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1473:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1473:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1482:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1482:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1491:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1491:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1545:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1545:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1554:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1554:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1563:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1563:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1572:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1572:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1619:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1619:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1635:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1635:1: sparse: sparse: got } include/linux/atomic-arch-fallback.h:1644:1: sparse: sparse: Expected ; at the end of type declaration include/linux/atomic-arch-fallback.h:1644:1: sparse: sparse: got } >> include/linux/atomic-arch-fallback.h:1653:1: sparse: sparse: too many errors vim +/if +1261 include/linux/atomic-arch-fallback.h 37f8173dd84936 Peter Zijlstra 2020-01-24 1256 37f8173dd84936 Peter Zijlstra 2020-01-24 1257 #ifndef arch_atomic64_read_acquire 37f8173dd84936 Peter Zijlstra 2020-01-24 1258 static __always_inline s64 37f8173dd84936 Peter Zijlstra 2020-01-24 1259 arch_atomic64_read_acquire(const atomic64_t *v) 37f8173dd84936 Peter Zijlstra 2020-01-24 1260 { 37f8173dd84936 Peter Zijlstra 2020-01-24 @1261 return smp_load_acquire(&(v)->counter); 37f8173dd84936 Peter Zijlstra 2020-01-24 1262 } 37f8173dd84936 Peter Zijlstra 2020-01-24 1263 #define arch_atomic64_read_acquire arch_atomic64_read_acquire 37f8173dd84936 Peter Zijlstra 2020-01-24 1264 #endif 37f8173dd84936 Peter Zijlstra 2020-01-24 1265 :::::: The code at line 1261 was first introduced by commit :::::: 37f8173dd84936ea78000ed1cad24f8b18d48ebb locking/atomics: Flip fallbacks and instrumentation :::::: TO: Peter Zijlstra :::::: CC: Thomas Gleixner --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org