tree:
https://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git
for-next.radical6j
head: 7b8c8263459404aea0c41574ef44e827d7ea1215
commit: 1cd536a236d31c9d8a0a0f1b2bd9978036b2aa21 [17/26] gfs2: move the rest of
glock_work_func into the state machine
config: x86_64-randconfig-s022-20210311 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-262-g5e674421-dirty
#
https://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git/commi...
git remote add gfs2
https://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git
git fetch --no-tags gfs2 for-next.radical6j
git checkout 1cd536a236d31c9d8a0a0f1b2bd9978036b2aa21
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
fs/gfs2/glock.c: note: in included file:
fs/gfs2/glock.h:218:36: sparse: sparse: context imbalance in '__gfs2_glock_put'
- unexpected unlock
> fs/gfs2/glock.c:949:9: sparse: sparse: context imbalance in
'state_machine' - wrong count at exit
vim +/state_machine +949 fs/gfs2/glock.c
936
937 /**
938 * state_machine - the glock state machine
939 * @gl: pointer to the glock we are transitioning
940 * @new_state: The new state we need to execute
941 *
942 * Just like __state_machine but it acquires the gl_lockref lock
943 */
944 static void state_machine(struct gfs2_glock *gl, int new_state)
945 __releases(&gl->gl_lockref.lock)
946 __acquires(&gl->gl_lockref.lock)
947 {
948 spin_lock(&gl->gl_lockref.lock);
949 if (!__state_machine(gl, new_state))
950 spin_unlock(&gl->gl_lockref.lock);
951 }
952
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org