tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.locking/urgent head: 7c4c257fea99f39dc639d68017c9d5e573d8e59d commit: 7c4c257fea99f39dc639d68017c9d5e573d8e59d [3/3] locking/seqlock, headers: Untangle the spaghetti monster config: x86_64-allyesconfig (attached as .config) compiler: gcc-9 (Debian 9.3.0-15) 9.3.0 reproduce (this is a W=1 build): git checkout 7c4c257fea99f39dc639d68017c9d5e573d8e59d # save the attached .config to linux build tree make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> All error/warnings (new ones prefixed by >>): In file included from include/linux/rbtree.h:22, from include/linux/mm_types.h:10, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: include/linux/rcupdate.h: In function 'rcu_lock_acquire': >> include/linux/rcupdate.h:241:2: error: implicit declaration of function >> 'lock_acquire'; did you mean 'rcu_lock_acquire'? >> [-Werror=implicit-function-declaration] 241 | lock_acquire(map, 0, 0, 2, 0, NULL, _THIS_IP_); | ^~~~~~~~~~~~ | rcu_lock_acquire include/linux/rcupdate.h: In function 'rcu_lock_release': >> include/linux/rcupdate.h:246:2: error: implicit declaration of function >> 'lock_release'; did you mean 'rcu_lock_release'? >> [-Werror=implicit-function-declaration] 246 | lock_release(map, _THIS_IP_); | ^~~~~~~~~~~~ | rcu_lock_release include/linux/rcupdate.h: In function 'rcu_preempt_sleep_check': >> include/linux/rcupdate.h:305:19: error: implicit declaration of function >> 'lock_is_held' [-Werror=implicit-function-declaration] 305 | RCU_LOCKDEP_WARN(lock_is_held(&rcu_lock_map), | ^~~~~~~~~~~~ include/linux/rcupdate.h:296:52: note: in definition of macro 'RCU_LOCKDEP_WARN' 296 | if (debug_lockdep_rcu_enabled() && !__warned && (c)) { \ | ^ >> include/linux/rcupdate.h:298:4: error: implicit declaration of function >> 'lockdep_rcu_suspicious' [-Werror=implicit-function-declaration] 298 | lockdep_rcu_suspicious(__FILE__, __LINE__, s); \ | ^~~~~~~~~~~~~~~~~~~~~~ include/linux/rcupdate.h:305:2: note: in expansion of macro 'RCU_LOCKDEP_WARN' 305 | RCU_LOCKDEP_WARN(lock_is_held(&rcu_lock_map), | ^~~~~~~~~~~~~~~~ In file included from include/linux/mm_types.h:11, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: include/linux/rwsem.h: At top level: >> include/linux/rwsem.h:46:2: error: unknown type name 'raw_spinlock_t' 46 | raw_spinlock_t wait_lock; | ^~~~~~~~~~~~~~ In file included from include/linux/swait.h:8, from include/linux/completion.h:12, from include/linux/mm_types.h:12, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: >> include/linux/wait.h:36:2: error: unknown type name 'spinlock_t' 36 | spinlock_t lock; | ^~~~~~~~~~ In file included from include/linux/completion.h:12, from include/linux/mm_types.h:12, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: >> include/linux/swait.h:44:2: error: unknown type name 'raw_spinlock_t' 44 | raw_spinlock_t lock; | ^~~~~~~~~~~~~~ In file included from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: >> include/linux/lockdep.h:254:13: warning: conflicting types for 'lock_acquire' 254 | extern void lock_acquire(struct lockdep_map *lock, unsigned int subclass, | ^~~~~~~~~~~~ In file included from include/linux/rbtree.h:22, from include/linux/mm_types.h:10, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: include/linux/rcupdate.h:241:2: note: previous implicit declaration of 'lock_acquire' was here 241 | lock_acquire(map, 0, 0, 2, 0, NULL, _THIS_IP_); | ^~~~~~~~~~~~ In file included from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: >> include/linux/lockdep.h:258:13: warning: conflicting types for 'lock_release' 258 | extern void lock_release(struct lockdep_map *lock, unsigned long ip); | ^~~~~~~~~~~~ In file included from include/linux/rbtree.h:22, from include/linux/mm_types.h:10, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: include/linux/rcupdate.h:246:2: note: previous implicit declaration of 'lock_release' was here 246 | lock_release(map, _THIS_IP_); | ^~~~~~~~~~~~ In file included from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: >> include/linux/lockdep.h:265:19: error: static declaration of 'lock_is_held' >> follows non-static declaration 265 | static inline int lock_is_held(const struct lockdep_map *lock) | ^~~~~~~~~~~~ In file included from include/linux/rbtree.h:22, from include/linux/mm_types.h:10, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: include/linux/rcupdate.h:305:19: note: previous implicit declaration of 'lock_is_held' was here 305 | RCU_LOCKDEP_WARN(lock_is_held(&rcu_lock_map), | ^~~~~~~~~~~~ include/linux/rcupdate.h:296:52: note: in definition of macro 'RCU_LOCKDEP_WARN' 296 | if (debug_lockdep_rcu_enabled() && !__warned && (c)) { \ | ^ In file included from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: >> include/linux/lockdep.h:598:6: warning: conflicting types for >> 'lockdep_rcu_suspicious' 598 | void lockdep_rcu_suspicious(const char *file, const int line, const char *s); | ^~~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/rbtree.h:22, from include/linux/mm_types.h:10, from include/asm-generic/fixmap.h:19, from arch/x86/include/asm/fixmap.h:189, from arch/x86/include/asm/apic.h:11, from arch/x86/include/asm/smp.h:13, from include/linux/smp.h:82, from include/linux/lockdep.h:14, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/crypto.h:19, from arch/x86/kernel/asm-offsets.c:9: include/linux/rcupdate.h:298:4: note: previous implicit declaration of 'lockdep_rcu_suspicious' was here 298 | lockdep_rcu_suspicious(__FILE__, __LINE__, s); \ | ^~~~~~~~~~~~~~~~~~~~~~ include/linux/rcupdate.h:305:2: note: in expansion of macro 'RCU_LOCKDEP_WARN' 305 | RCU_LOCKDEP_WARN(lock_is_held(&rcu_lock_map), | ^~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors make[2]: *** [scripts/Makefile.build:114: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1175: prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:185: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +/lock_is_held +265 include/linux/lockdep.h fbb9ce9530fd9b Ingo Molnar 2006-07-03 239 fbb9ce9530fd9b Ingo Molnar 2006-07-03 240 /* fbb9ce9530fd9b Ingo Molnar 2006-07-03 241 * Acquire a lock. fbb9ce9530fd9b Ingo Molnar 2006-07-03 242 * fbb9ce9530fd9b Ingo Molnar 2006-07-03 243 * Values for "read": fbb9ce9530fd9b Ingo Molnar 2006-07-03 244 * fbb9ce9530fd9b Ingo Molnar 2006-07-03 245 * 0: exclusive (write) acquire fbb9ce9530fd9b Ingo Molnar 2006-07-03 246 * 1: read-acquire (no recursion allowed) fbb9ce9530fd9b Ingo Molnar 2006-07-03 247 * 2: read-acquire with same-instance recursion allowed fbb9ce9530fd9b Ingo Molnar 2006-07-03 248 * fbb9ce9530fd9b Ingo Molnar 2006-07-03 249 * Values for check: fbb9ce9530fd9b Ingo Molnar 2006-07-03 250 * fb9edbe98493fc Oleg Nesterov 2014-01-20 251 * 0: simple checks (freeing, held-at-exit-time, etc.) fb9edbe98493fc Oleg Nesterov 2014-01-20 252 * 1: full validation fbb9ce9530fd9b Ingo Molnar 2006-07-03 253 */ fbb9ce9530fd9b Ingo Molnar 2006-07-03 @254 extern void lock_acquire(struct lockdep_map *lock, unsigned int subclass, 7531e2f34d1d55 Peter Zijlstra 2008-08-11 255 int trylock, int read, int check, 7531e2f34d1d55 Peter Zijlstra 2008-08-11 256 struct lockdep_map *nest_lock, unsigned long ip); fbb9ce9530fd9b Ingo Molnar 2006-07-03 257 5facae4f3549b5 Qian Cai 2019-09-19 @258 extern void lock_release(struct lockdep_map *lock, unsigned long ip); fbb9ce9530fd9b Ingo Molnar 2006-07-03 259 f8319483f57f1c Peter Zijlstra 2016-11-30 260 /* f8319483f57f1c Peter Zijlstra 2016-11-30 261 * Same "read" as for lock_acquire(), except -1 means any. f8319483f57f1c Peter Zijlstra 2016-11-30 262 */ 08f36ff642342f Matthew Wilcox 2018-01-17 263 extern int lock_is_held_type(const struct lockdep_map *lock, int read); f8319483f57f1c Peter Zijlstra 2016-11-30 264 08f36ff642342f Matthew Wilcox 2018-01-17 @265 static inline int lock_is_held(const struct lockdep_map *lock) f8319483f57f1c Peter Zijlstra 2016-11-30 266 { f8319483f57f1c Peter Zijlstra 2016-11-30 267 return lock_is_held_type(lock, -1); f8319483f57f1c Peter Zijlstra 2016-11-30 268 } f607c668577481 Peter Zijlstra 2009-07-20 269 :::::: The code at line 265 was first introduced by commit :::::: 08f36ff642342fb058212099757cb5d40f158c2a lockdep: Make lockdep checking constant :::::: TO: Matthew Wilcox <[email protected]> :::::: CC: Thomas Gleixner <[email protected]> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected]
.config.gz
Description: application/gzip

