Merge tag 'powerpc-6.6-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
[platform/kernel/linux-starfive.git] / fs / ceph / debugfs.c
index bec3c45..3904333 100644 (file)
@@ -248,14 +248,20 @@ static int metrics_caps_show(struct seq_file *s, void *p)
        return 0;
 }
 
-static int caps_show_cb(struct inode *inode, struct ceph_cap *cap, void *p)
+static int caps_show_cb(struct inode *inode, int mds, void *p)
 {
+       struct ceph_inode_info *ci = ceph_inode(inode);
        struct seq_file *s = p;
-
-       seq_printf(s, "0x%-17llx%-3d%-17s%-17s\n", ceph_ino(inode),
-                  cap->session->s_mds,
-                  ceph_cap_string(cap->issued),
-                  ceph_cap_string(cap->implemented));
+       struct ceph_cap *cap;
+
+       spin_lock(&ci->i_ceph_lock);
+       cap = __get_cap_for_mds(ci, mds);
+       if (cap)
+               seq_printf(s, "0x%-17llx%-3d%-17s%-17s\n", ceph_ino(inode),
+                          cap->session->s_mds,
+                          ceph_cap_string(cap->issued),
+                          ceph_cap_string(cap->implemented));
+       spin_unlock(&ci->i_ceph_lock);
        return 0;
 }