tree: https://github.com/ceph/ceph-client.git testing head: 35d3521ea33df79af4358eb1e75f4d89316bf879 commit: 35d3521ea33df79af4358eb1e75f4d89316bf879 [4/4] ceph: ceph_kick_flushing_caps needs the s_mutex config: sh-allmodconfig (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 git checkout 35d3521ea33df79af4358eb1e75f4d89316bf879 # save the attached .config to linux build tree GCC_VERSION=9.3.0 make.cross ARCH=sh If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot <lkp@xxxxxxxxx> All error/warnings (new ones prefixed by >>): In file included from include/linux/bug.h:5, from include/linux/thread_info.h:12, from include/asm-generic/preempt.h:5, from ./arch/sh/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/spinlock.h:51, from include/linux/wait.h:9, from include/linux/wait_bit.h:8, from include/linux/fs.h:6, from fs/ceph/caps.c:4: fs/ceph/caps.c: In function 'ceph_kick_flushing_caps': >> include/linux/lockdep.h:364:52: error: invalid type argument of '->' (have 'struct mutex') 364 | #define lockdep_is_held(lock) lock_is_held(&(lock)->dep_map) | ^~ arch/sh/include/asm/bug.h:69:25: note: in definition of macro 'WARN_ON' 69 | int __ret_warn_on = !!(x); \ | ^ >> include/linux/lockdep.h:390:27: note: in expansion of macro 'lockdep_is_held' 390 | WARN_ON(debug_locks && !lockdep_is_held(l)); \ | ^~~~~~~~~~~~~~~ >> fs/ceph/caps.c:2522:2: note: in expansion of macro 'lockdep_assert_held' 2522 | lockdep_assert_held(session->s_mutex); | ^~~~~~~~~~~~~~~~~~~ vim +/lockdep_assert_held +2522 fs/ceph/caps.c 2514 2515 void ceph_kick_flushing_caps(struct ceph_mds_client *mdsc, 2516 struct ceph_mds_session *session) 2517 { 2518 struct ceph_inode_info *ci; 2519 struct ceph_cap *cap; 2520 u64 oldest_flush_tid; 2521 > 2522 lockdep_assert_held(session->s_mutex); 2523 2524 dout("kick_flushing_caps mds%d\n", session->s_mds); 2525 2526 spin_lock(&mdsc->cap_dirty_lock); 2527 oldest_flush_tid = __get_oldest_flush_tid(mdsc); 2528 spin_unlock(&mdsc->cap_dirty_lock); 2529 2530 list_for_each_entry(ci, &session->s_cap_flushing, i_flushing_item) { 2531 spin_lock(&ci->i_ceph_lock); 2532 cap = ci->i_auth_cap; 2533 if (!(cap && cap->session == session)) { 2534 pr_err("%p auth cap %p not mds%d ???\n", 2535 &ci->vfs_inode, cap, session->s_mds); 2536 spin_unlock(&ci->i_ceph_lock); 2537 continue; 2538 } 2539 if (ci->i_ceph_flags & CEPH_I_KICK_FLUSH) { 2540 __kick_flushing_caps(mdsc, session, ci, 2541 oldest_flush_tid); 2542 } 2543 spin_unlock(&ci->i_ceph_lock); 2544 } 2545 } 2546 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip