aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ceph/mds_client.c
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2011-11-03 12:23:36 -0400
committerSage Weil <sage@newdream.net>2011-11-06 00:10:10 -0400
commitc6ffe10015f4e6fba8a915318b319c43aed1836f (patch)
treedd39730aeb6d00713ca27a1bf34b116d31479151 /fs/ceph/mds_client.c
parentb58dc4100b9190f2cb437f1f67ffcb9f9acc4923 (diff)
ceph: use new D_COMPLETE dentry flag
We used to use a flag on the directory inode to track whether the dcache contents for a directory were a complete cached copy. Switch to a dentry flag CEPH_D_COMPLETE that is safely updated by ->d_prune(). Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/mds_client.c')
-rw-r--r--fs/ceph/mds_client.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c
index 1d72f15fe9f4..b4c3efa163c2 100644
--- a/fs/ceph/mds_client.c
+++ b/fs/ceph/mds_client.c
@@ -2002,7 +2002,7 @@ out:
2002} 2002}
2003 2003
2004/* 2004/*
2005 * Invalidate dir I_COMPLETE, dentry lease state on an aborted MDS 2005 * Invalidate dir D_COMPLETE, dentry lease state on an aborted MDS
2006 * namespace request. 2006 * namespace request.
2007 */ 2007 */
2008void ceph_invalidate_dir_request(struct ceph_mds_request *req) 2008void ceph_invalidate_dir_request(struct ceph_mds_request *req)
@@ -2010,9 +2010,9 @@ void ceph_invalidate_dir_request(struct ceph_mds_request *req)
2010 struct inode *inode = req->r_locked_dir; 2010 struct inode *inode = req->r_locked_dir;
2011 struct ceph_inode_info *ci = ceph_inode(inode); 2011 struct ceph_inode_info *ci = ceph_inode(inode);
2012 2012
2013 dout("invalidate_dir_request %p (I_COMPLETE, lease(s))\n", inode); 2013 dout("invalidate_dir_request %p (D_COMPLETE, lease(s))\n", inode);
2014 spin_lock(&inode->i_lock); 2014 spin_lock(&inode->i_lock);
2015 ci->i_ceph_flags &= ~CEPH_I_COMPLETE; 2015 ceph_dir_clear_complete(inode);
2016 ci->i_release_count++; 2016 ci->i_release_count++;
2017 spin_unlock(&inode->i_lock); 2017 spin_unlock(&inode->i_lock);
2018 2018