All of lore.kernel.org
 help / color / mirror / Atom feed
* arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RCU_in_HARDIRQ' - wrong count at exit
@ 2021-05-25 11:44 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-05-25 11:44 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 10335 bytes --]

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Boqun Feng <boqun.feng@gmail.com>
CC: Peter Zijlstra <peterz@infradead.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   a050a6d2b7e80ca52b2f4141eaf3420d201b72b3
commit: 9271a40d2a1429113160ccc4c16150921600bcc1 lockdep/selftest: Add wait context selftests
date:   4 months ago
:::::: branch date: 10 hours ago
:::::: commit date: 4 months ago
config: sh-randconfig-s032-20210525 (attached as .config)
compiler: sh4-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/torvalds/linux.git/commit/?id=9271a40d2a1429113160ccc4c16150921600bcc1
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 9271a40d2a1429113160ccc4c16150921600bcc1
        # 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=sh 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)
   lib/locking-selftest.c:298:1: sparse: sparse: context imbalance in 'AA_spin' - wrong count at exit
   lib/locking-selftest.c:300:1: sparse: sparse: context imbalance in 'AA_wlock' - wrong count at exit
   lib/locking-selftest.c:302:1: sparse: sparse: context imbalance in 'AA_rlock' - wrong count at exit
   lib/locking-selftest.c:321:13: sparse: sparse: context imbalance in 'rlock_AA1' - wrong count at exit
   lib/locking-selftest.c:327:13: sparse: sparse: context imbalance in 'rlock_AA1B' - wrong count at exit
   lib/locking-selftest.c:347:13: sparse: sparse: context imbalance in 'rlock_AA2' - wrong count at exit
   lib/locking-selftest.c:359:13: sparse: sparse: context imbalance in 'rlock_AA3' - wrong count at exit
   lib/locking-selftest.c:722:1: sparse: sparse: context imbalance in 'double_unlock_spin' - unexpected unlock
   lib/locking-selftest.c:724:1: sparse: sparse: context imbalance in 'double_unlock_wlock' - unexpected unlock
   lib/locking-selftest.c:726:1: sparse: sparse: context imbalance in 'double_unlock_rlock' - unexpected unlock
   lib/locking-selftest.c:753:1: sparse: sparse: context imbalance in 'init_held_spin' - wrong count at exit
   lib/locking-selftest.c:755:1: sparse: sparse: context imbalance in 'init_held_wlock' - wrong count at exit
   lib/locking-selftest.c:757:1: sparse: sparse: context imbalance in 'init_held_rlock' - wrong count at exit
   lib/locking-selftest.c:2456:13: sparse: sparse: context imbalance in 'rcu_exit' - unexpected unlock
   lib/locking-selftest.c:2465:13: sparse: sparse: context imbalance in 'rcu_bh_exit' - unexpected unlock
   lib/locking-selftest.c:2474:13: sparse: sparse: context imbalance in 'rcu_sched_exit' - unexpected unlock
   lib/locking-selftest.c:2493:13: sparse: sparse: context imbalance in 'raw_spinlock_exit' - unexpected unlock
   lib/locking-selftest.c:2502:13: sparse: sparse: context imbalance in 'spinlock_exit' - unexpected unlock
   lib/locking-selftest.c: note: in included file (through include/linux/thread_info.h, include/asm-generic/preempt.h, arch/sh/include/generated/asm/preempt.h, ...):
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RCU_in_HARDIRQ' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RCU_in_NOTTHREADED_HARDIRQ' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RCU_in_SOFTIRQ' - wrong count at exit
   lib/locking-selftest.c:2573:1: sparse: sparse: context imbalance in 'RCU_in_RCU' - wrong count at exit
   lib/locking-selftest.c:2573:1: sparse: sparse: context imbalance in 'RCU_in_RCU_BH' - wrong count at exit
   lib/locking-selftest.c:2573:1: sparse: sparse: context imbalance in 'RCU_in_RCU_CALLBACK' - wrong count at exit
   lib/locking-selftest.c:2573:1: sparse: sparse: context imbalance in 'RCU_in_RCU_SCHED' - wrong count at exit
   lib/locking-selftest.c:2573:1: sparse: sparse: context imbalance in 'RCU_in_RAW_SPINLOCK' - wrong count at exit
   lib/locking-selftest.c:2573:1: sparse: sparse: context imbalance in 'RCU_in_SPINLOCK' - wrong count at exit
   lib/locking-selftest.c:2573:1: sparse: sparse: context imbalance in 'RCU_in_MUTEX' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_HARDIRQ' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_NOTTHREADED_HARDIRQ' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_SOFTIRQ' - wrong count at exit
   lib/locking-selftest.c:2574:1: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_RCU' - wrong count at exit
   lib/locking-selftest.c:2574:1: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_RCU_BH' - wrong count at exit
   lib/locking-selftest.c:2574:1: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_RCU_CALLBACK' - wrong count at exit
   lib/locking-selftest.c:2574:1: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_RCU_SCHED' - wrong count at exit
   lib/locking-selftest.c:2574:1: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_RAW_SPINLOCK' - wrong count at exit
   lib/locking-selftest.c:2574:1: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_SPINLOCK' - wrong count at exit
   lib/locking-selftest.c:2574:1: sparse: sparse: context imbalance in 'RAW_SPINLOCK_in_MUTEX' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'SPINLOCK_in_HARDIRQ' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'SPINLOCK_in_NOTTHREADED_HARDIRQ' - wrong count at exit
>> arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'SPINLOCK_in_SOFTIRQ' - wrong count at exit
   lib/locking-selftest.c:2575:1: sparse: sparse: context imbalance in 'SPINLOCK_in_RCU' - wrong count at exit
   lib/locking-selftest.c:2575:1: sparse: sparse: context imbalance in 'SPINLOCK_in_RCU_BH' - wrong count at exit
   lib/locking-selftest.c:2575:1: sparse: sparse: context imbalance in 'SPINLOCK_in_RCU_CALLBACK' - wrong count at exit
   lib/locking-selftest.c:2575:1: sparse: sparse: context imbalance in 'SPINLOCK_in_RCU_SCHED' - wrong count at exit
   lib/locking-selftest.c:2575:1: sparse: sparse: context imbalance in 'SPINLOCK_in_RAW_SPINLOCK' - wrong count at exit
   lib/locking-selftest.c:2575:1: sparse: sparse: context imbalance in 'SPINLOCK_in_SPINLOCK' - wrong count at exit
   lib/locking-selftest.c:2575:1: sparse: sparse: context imbalance in 'SPINLOCK_in_MUTEX' - wrong count at exit
   lib/locking-selftest.c:2576:1: sparse: sparse: context imbalance in 'MUTEX_in_RCU' - wrong count at exit
   lib/locking-selftest.c:2576:1: sparse: sparse: context imbalance in 'MUTEX_in_RCU_BH' - wrong count at exit
   lib/locking-selftest.c:2576:1: sparse: sparse: context imbalance in 'MUTEX_in_RCU_SCHED' - wrong count at exit
   lib/locking-selftest.c:2576:1: sparse: sparse: context imbalance in 'MUTEX_in_RAW_SPINLOCK' - wrong count at exit
   lib/locking-selftest.c:2576:1: sparse: sparse: context imbalance in 'MUTEX_in_SPINLOCK' - wrong count at exit

vim +/RCU_in_HARDIRQ +76 arch/sh/include/asm/thread_info.h

a6a31139897a5e include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  66  
^1da177e4c3f41 include/asm-sh/thread_info.h      Linus Torvalds 2005-04-16  67  /* how to get the thread information struct from C */
^1da177e4c3f41 include/asm-sh/thread_info.h      Linus Torvalds 2005-04-16  68  static inline struct thread_info *current_thread_info(void)
^1da177e4c3f41 include/asm-sh/thread_info.h      Linus Torvalds 2005-04-16  69  {
^1da177e4c3f41 include/asm-sh/thread_info.h      Linus Torvalds 2005-04-16  70  	struct thread_info *ti;
37744feebc0869 arch/sh/include/asm/thread_info.h Arnd Bergmann  2020-04-20  71  #if defined(CONFIG_CPU_HAS_SR_RB)
114f132975ae8d include/asm-sh/thread_info.h      Paul Mundt     2007-11-09  72  	__asm__ __volatile__ ("stc	r7_bank, %0" : "=r" (ti));
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  73  #else
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  74  	unsigned long __dummy;
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  75  
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27 @76  	__asm__ __volatile__ (
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  77  		"mov	r15, %0\n\t"
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  78  		"and	%1, %0\n\t"
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  79  		: "=&r" (ti), "=r" (__dummy)
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  80  		: "1" (~(THREAD_SIZE - 1))
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  81  		: "memory");
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  82  #endif
f1517494407b1f include/asm-sh/thread_info.h      Paul Mundt     2006-09-27  83  
^1da177e4c3f41 include/asm-sh/thread_info.h      Linus Torvalds 2005-04-16  84  	return ti;
^1da177e4c3f41 include/asm-sh/thread_info.h      Linus Torvalds 2005-04-16  85  }
^1da177e4c3f41 include/asm-sh/thread_info.h      Linus Torvalds 2005-04-16  86  

:::::: The code at line 76 was first introduced by commit
:::::: f1517494407b1f1ca0063a756cc30d75e96d433c sh: Cleanup and document register bank usage.

:::::: TO: Paul Mundt <lethal@linux-sh.org>
:::::: CC: Paul Mundt <lethal@linux-sh.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 20699 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-05-25 11:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-25 11:44 arch/sh/include/asm/thread_info.h:76:9: sparse: sparse: context imbalance in 'RCU_in_HARDIRQ' - wrong count at exit kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.