[ceph-client:testing 4/4] fs/ceph/caps.c:2522:2: note: in expansion of macro 'lockdep_assert_held'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [CEPH Users]     [Ceph Large]     [Ceph Dev]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux