arch/sparc/include/asm/irqflags_64.h:60:27: sparse: sparse: context imbalance in 'kfree_call_rcu' - different lock contexts for basic block

From: kbuild test robot
Date: Mon Jun 01 2020 - 18:05:35 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9bf9511e3d9f328c03f6f79bfb741c3d18f2f2c0
commit: a35d16905efc6ad5523d864a5c6efcb1e657e386 rcu: Add basic support for kfree_rcu() batching
date: 4 months ago
config: sparc-randconfig-s031-20200602 (attached as .config)
compiler: sparc64-linux-gcc (GCC) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-243-gc100a7ab-dirty
git checkout a35d16905efc6ad5523d864a5c6efcb1e657e386
# save the attached .config to linux build tree
make W=1 C=1 ARCH=sparc CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@xxxxxxxxx>


sparse warnings: (new ones prefixed by >>)

kernel/rcu/tree.c:1152:13: sparse: sparse: context imbalance in 'rcu_start_this_gp' - different lock contexts for basic block
kernel/rcu/tree.c:1565:9: sparse: sparse: context imbalance in 'rcu_gp_init' - different lock contexts for basic block
kernel/rcu/tree.c:2292:9: sparse: sparse: context imbalance in 'force_qs_rnp' - different lock contexts for basic block
kernel/rcu/tree.c:2348:25: sparse: sparse: context imbalance in 'rcu_force_quiescent_state' - unexpected unlock
>> arch/sparc/include/asm/irqflags_64.h:60:27: sparse: sparse: context imbalance in 'kfree_call_rcu' - different lock contexts for basic block
kernel/rcu/tree_exp.h:193:9: sparse: sparse: context imbalance in '__rcu_report_exp_rnp' - different lock contexts for basic block

vim +/kfree_call_rcu +60 arch/sparc/include/asm/irqflags_64.h

f5e706ad886b6a include/asm-sparc/irqflags_64.h Sam Ravnborg 2008-07-17 59
18d85bc558edfa arch/sparc/include/asm/irqflags_64.h Steven Rostedt 2011-07-06 @60 static inline notrace int arch_irqs_disabled_flags(unsigned long flags)
f5e706ad886b6a include/asm-sparc/irqflags_64.h Sam Ravnborg 2008-07-17 61 {
f5e706ad886b6a include/asm-sparc/irqflags_64.h Sam Ravnborg 2008-07-17 62 return (flags > 0);
f5e706ad886b6a include/asm-sparc/irqflags_64.h Sam Ravnborg 2008-07-17 63 }
f5e706ad886b6a include/asm-sparc/irqflags_64.h Sam Ravnborg 2008-07-17 64

:::::: The code at line 60 was first introduced by commit
:::::: 18d85bc558edfa5de7f5b49b6a25fbfdc42628e0 sparc/irqs: Do not trace arch_local_{*,irq_*} functions

:::::: TO: Steven Rostedt <rostedt@xxxxxxxxxxx>
:::::: CC: David S. Miller <davem@xxxxxxxxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip