Hi Waiman, Thank you for the patch! Yet something to improve: [auto build test ERROR on tip/locking/core] [also build test ERROR on tip/auto-latest linus/master arm-perf/for-next/perf v5.5-rc6 next-20200117] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Waiman-Long/locking-lockdep-Reuse-zapped-chain_hlocks-entries/20200117-093009 base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 1a365e822372ba24c9da0822bc583894f6f3d821 config: sparc64-allmodconfig (attached as .config) compiler: sparc64-linux-gcc (GCC) 7.5.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=7.5.0 make.cross ARCH=sparc64 If you fix the issue, kindly add following tag Reported-by: kbuild test robot All error/warnings (new ones prefixed by >>): kernel/locking/lockdep.c: In function 'inc_chains': >> kernel/locking/lockdep.c:2304:20: error: 'LOCK_CHAIN_HARDIRQ_CONTEXT' undeclared (first use in this function); did you mean 'LOCK_USED_IN_HARDIRQ_READ'? if (irq_context & LOCK_CHAIN_HARDIRQ_CONTEXT) ^~~~~~~~~~~~~~~~~~~~~~~~~~ LOCK_USED_IN_HARDIRQ_READ kernel/locking/lockdep.c:2304:20: note: each undeclared identifier is reported only once for each function it appears in >> kernel/locking/lockdep.c:2306:25: error: 'LOCK_CHAIN_SOFTIRQ_CONTEXT' undeclared (first use in this function); did you mean 'LOCK_CHAIN_HARDIRQ_CONTEXT'? else if (irq_context & LOCK_CHAIN_SOFTIRQ_CONTEXT) ^~~~~~~~~~~~~~~~~~~~~~~~~~ LOCK_CHAIN_HARDIRQ_CONTEXT kernel/locking/lockdep.c: In function 'dec_chains': kernel/locking/lockdep.c:2314:20: error: 'LOCK_CHAIN_HARDIRQ_CONTEXT' undeclared (first use in this function); did you mean 'LOCK_USED_IN_HARDIRQ_READ'? if (irq_context & LOCK_CHAIN_HARDIRQ_CONTEXT) ^~~~~~~~~~~~~~~~~~~~~~~~~~ LOCK_USED_IN_HARDIRQ_READ kernel/locking/lockdep.c:2316:25: error: 'LOCK_CHAIN_SOFTIRQ_CONTEXT' undeclared (first use in this function); did you mean 'LOCK_CHAIN_HARDIRQ_CONTEXT'? else if (irq_context & LOCK_CHAIN_SOFTIRQ_CONTEXT) ^~~~~~~~~~~~~~~~~~~~~~~~~~ LOCK_CHAIN_HARDIRQ_CONTEXT kernel/locking/lockdep.c: In function 'task_irq_context': kernel/locking/lockdep.c:3612:9: error: 'LOCK_CHAIN_HARDIRQ_CONTEXT' undeclared (first use in this function); did you mean 'LOCK_USED_IN_HARDIRQ_READ'? return LOCK_CHAIN_HARDIRQ_CONTEXT * !!task->hardirq_context + ^~~~~~~~~~~~~~~~~~~~~~~~~~ LOCK_USED_IN_HARDIRQ_READ kernel/locking/lockdep.c:3613:9: error: 'LOCK_CHAIN_SOFTIRQ_CONTEXT' undeclared (first use in this function); did you mean 'LOCK_CHAIN_HARDIRQ_CONTEXT'? LOCK_CHAIN_SOFTIRQ_CONTEXT * !!task->softirq_context; ^~~~~~~~~~~~~~~~~~~~~~~~~~ LOCK_CHAIN_HARDIRQ_CONTEXT >> kernel/locking/lockdep.c:3614:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ vim +2304 kernel/locking/lockdep.c 2301 2302 static void inc_chains(int irq_context) 2303 { > 2304 if (irq_context & LOCK_CHAIN_HARDIRQ_CONTEXT) 2305 nr_hardirq_chains++; > 2306 else if (irq_context & LOCK_CHAIN_SOFTIRQ_CONTEXT) 2307 nr_softirq_chains++; 2308 else 2309 nr_process_chains++; 2310 } 2311 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation