arch/nios2/include/asm/irqflags.h:12:9: sparse: sparse: context imbalance in 'snd_pcm_group_unlock_irq' - unexpected unlock

From: kernel test robot
Date: Sun Jun 28 2020 - 06:33:49 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 916a3b0fc1206f7e7ae8d00a21a3114b1dc67794
commit: 80591e61a0f7e88deaada69844e4a31280c4a38f kbuild: tell sparse about the $ARCH
date: 8 months ago
config: nios2-randconfig-s032-20200628 (attached as .config)
compiler: nios2-linux-gcc (GCC) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-dirty
git checkout 80591e61a0f7e88deaada69844e4a31280c4a38f
# save the attached .config to linux build tree
make W=1 C=1 ARCH=nios2 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

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


sparse warnings: (new ones prefixed by >>)

sound/core/pcm_native.c:544:51: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted snd_pcm_state_t [usertype] state @@ got int state @@
sound/core/pcm_native.c:544:51: sparse: expected restricted snd_pcm_state_t [usertype] state
sound/core/pcm_native.c:544:51: sparse: got int state
sound/core/pcm_native.c:709:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:709:38: sparse: expected int state
sound/core/pcm_native.c:709:38: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:721:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:721:38: sparse: expected int state
sound/core/pcm_native.c:721:38: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:770:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:770:38: sparse: expected int state
sound/core/pcm_native.c:770:38: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:1229:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted snd_pcm_state_t [usertype] state @@ got int state @@
sound/core/pcm_native.c:1229:32: sparse: expected restricted snd_pcm_state_t [usertype] state
sound/core/pcm_native.c:1229:32: sparse: got int state
sound/core/pcm_native.c:1253:31: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:1253:31: sparse: expected int state
sound/core/pcm_native.c:1253:31: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:1260:40: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:1260:40: sparse: expected int state
sound/core/pcm_native.c:1260:40: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:1286:28: sparse: sparse: restricted snd_pcm_state_t degrades to integer
sound/core/pcm_native.c:1288:40: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted snd_pcm_state_t [usertype] state @@ got int state @@
sound/core/pcm_native.c:1288:40: sparse: expected restricted snd_pcm_state_t [usertype] state
sound/core/pcm_native.c:1288:40: sparse: got int state
sound/core/pcm_native.c:1312:64: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] state @@
sound/core/pcm_native.c:1312:64: sparse: expected int state
sound/core/pcm_native.c:1312:64: sparse: got restricted snd_pcm_state_t [usertype] state
sound/core/pcm_native.c:1328:38: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:1328:38: sparse: expected int state
sound/core/pcm_native.c:1328:38: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:1697:38: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:1697:38: sparse: expected int state
sound/core/pcm_native.c:1697:38: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:1763:61: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:1763:61: sparse: expected int state
sound/core/pcm_native.c:1763:61: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:1764:63: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int state @@ got restricted snd_pcm_state_t [usertype] @@
sound/core/pcm_native.c:1764:63: sparse: expected int state
sound/core/pcm_native.c:1764:63: sparse: got restricted snd_pcm_state_t [usertype]
sound/core/pcm_native.c:1781:76: sparse: sparse: incorrect type in initializer (different base types) @@ expected int new_state @@ got restricted snd_pcm_state_t @@
sound/core/pcm_native.c:1781:76: sparse: expected int new_state
sound/core/pcm_native.c:1781:76: sparse: got restricted snd_pcm_state_t
sound/core/pcm_native.c:2128:26: sparse: sparse: restricted snd_pcm_format_t degrades to integer
sound/core/pcm_native.c:2132:54: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted snd_pcm_format_t [usertype] format @@ got unsigned int [assigned] k @@
sound/core/pcm_native.c:2132:54: sparse: expected restricted snd_pcm_format_t [usertype] format
sound/core/pcm_native.c:2132:54: sparse: got unsigned int [assigned] k
sound/core/pcm_native.c:2150:26: sparse: sparse: restricted snd_pcm_format_t degrades to integer
sound/core/pcm_native.c:2154:54: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted snd_pcm_format_t [usertype] format @@ got unsigned int [assigned] k @@
sound/core/pcm_native.c:2154:54: sparse: expected restricted snd_pcm_format_t [usertype] format
sound/core/pcm_native.c:2154:54: sparse: got unsigned int [assigned] k
sound/core/pcm_native.c:2334:30: sparse: sparse: restricted snd_pcm_access_t degrades to integer
sound/core/pcm_native.c:2336:30: sparse: sparse: restricted snd_pcm_access_t degrades to integer
sound/core/pcm_native.c:2339:38: sparse: sparse: restricted snd_pcm_access_t degrades to integer
sound/core/pcm_native.c:2341:38: sparse: sparse: restricted snd_pcm_access_t degrades to integer
sound/core/pcm_native.c:2343:38: sparse: sparse: restricted snd_pcm_access_t degrades to integer
sound/core/pcm_native.c:2353:86: sparse: sparse: restricted snd_pcm_subformat_t degrades to integer
sound/core/pcm_native.c:93:1: sparse: sparse: context imbalance in 'snd_pcm_group_lock' - different lock contexts for basic block
include/linux/spinlock.h:378:9: sparse: sparse: context imbalance in 'snd_pcm_group_unlock' - unexpected unlock
sound/core/pcm_native.c:95:1: sparse: sparse: context imbalance in 'snd_pcm_group_lock_irq' - different lock contexts for basic block
>> arch/nios2/include/asm/irqflags.h:12:9: sparse: sparse: context imbalance in 'snd_pcm_group_unlock_irq' - unexpected unlock
sound/core/pcm_native.c:159:9: sparse: sparse: context imbalance in '_snd_pcm_stream_lock_irqsave' - different lock contexts for basic block
include/linux/spinlock.h:393:9: sparse: sparse: context imbalance in 'snd_pcm_stream_unlock_irqrestore' - unexpected unlock
include/linux/spinlock.h:378:9: sparse: sparse: context imbalance in 'snd_pcm_action_group' - unexpected unlock
sound/core/pcm_native.c:1138:9: sparse: sparse: context imbalance in 'snd_pcm_stream_group_ref' - different lock contexts for basic block

vim +/snd_pcm_group_unlock_irq +12 arch/nios2/include/asm/irqflags.h

f27ffc751ca5d2 Ley Foon Tan 2014-11-06 9
f27ffc751ca5d2 Ley Foon Tan 2014-11-06 10 static inline unsigned long arch_local_save_flags(void)
f27ffc751ca5d2 Ley Foon Tan 2014-11-06 11 {
f27ffc751ca5d2 Ley Foon Tan 2014-11-06 @12 return RDCTL(CTL_STATUS);
f27ffc751ca5d2 Ley Foon Tan 2014-11-06 13 }
f27ffc751ca5d2 Ley Foon Tan 2014-11-06 14

:::::: The code at line 12 was first introduced by commit
:::::: f27ffc751ca5d216a347084996c70452a4e185a4 nios2: Interrupt handling

:::::: TO: Ley Foon Tan <lftan@xxxxxxxxxx>
:::::: CC: Ley Foon Tan <lftan@xxxxxxxxxx>

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

Attachment: .config.gz
Description: application/gzip