Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a43fb731 authored by Sage Weil's avatar Sage Weil
Browse files

ceph: check mapping to determine if FILE_CACHE cap is used



See if the i_data mapping has any pages to determine if the FILE_CACHE
capability is currently in use, instead of assuming it is any time the
rdcache_gen value is set (i.e., issued -> used).

This allows the MDS RECALL_STATE process work for inodes that have cached
pages.

Signed-off-by: default avatarSage Weil <sage@newdream.net>
parent e835124c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -814,7 +814,7 @@ int __ceph_caps_used(struct ceph_inode_info *ci)
		used |= CEPH_CAP_PIN;
	if (ci->i_rd_ref)
		used |= CEPH_CAP_FILE_RD;
	if (ci->i_rdcache_ref || ci->i_rdcache_gen)
	if (ci->i_rdcache_ref || ci->vfs_inode.i_data.nrpages)
		used |= CEPH_CAP_FILE_CACHE;
	if (ci->i_wr_ref)
		used |= CEPH_CAP_FILE_WR;