summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYan, Zheng <zheng.z.yan@intel.com>2013-05-06 09:17:01 +0800
committerYan, Zheng <zheng.z.yan@intel.com>2013-05-28 13:57:21 +0800
commit2b1b6cae2de541ad18d51dd1005e71c08336aba5 (patch)
treed433e70d9126ec2f23d3464193aa60d6928977a1
parentfc94f47b8bdeb39e9ae919e2ca725c5c3bfe442e (diff)
downloadceph-2b1b6cae2de541ad18d51dd1005e71c08336aba5.tar.gz
mds: notify auth MDS when cap_wanted changes
So the auth MDS can choose locks' states base on our cap_wanted. Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
-rw-r--r--src/mds/Locker.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mds/Locker.cc b/src/mds/Locker.cc
index 63862f89abb..781704c86f8 100644
--- a/src/mds/Locker.cc
+++ b/src/mds/Locker.cc
@@ -2200,8 +2200,11 @@ void Locker::adjust_cap_wanted(Capability *cap, int wanted, int issue_seq)
}
CInode *cur = cap->get_inode();
- if (!cur->is_auth())
+ if (!cur->is_auth()) {
+ request_inode_file_caps(cur);
return;
+ }
+
if (cap->wanted() == 0) {
if (cur->item_open_file.is_on_list() &&
!cur->is_any_caps_wanted()) {
@@ -2220,7 +2223,6 @@ void Locker::adjust_cap_wanted(Capability *cap, int wanted, int issue_seq)
mds->mdlog->submit_entry(le);
}
}
-
}