aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYan, Zheng <zheng.z.yan@intel.com>2012-11-19 10:49:04 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-01-17 08:46:49 -0800
commit4899444757a896e3d38650e8fe11b50e2eecc88f (patch)
tree62279d2b6acab3f55f42369bd18b85cc40224374
parentf89f14aff0007cbed2648b10e78982a95802962a (diff)
downloadlinux-linaro-stable-4899444757a896e3d38650e8fe11b50e2eecc88f.tar.gz
ceph: Don't update i_max_size when handling non-auth cap
(cherry picked from commit 5e62ad30157d0da04cf40c6d1a2f4bc840948b9c) The cap from non-auth mds doesn't have a meaningful max_size value. Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com> Signed-off-by: Sage Weil <sage@inktank.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/ceph/caps.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ceph/caps.c b/fs/ceph/caps.c
index 3251e9cc6401..c633d1d728b3 100644
--- a/fs/ceph/caps.c
+++ b/fs/ceph/caps.c
@@ -2388,7 +2388,7 @@ static void handle_cap_grant(struct inode *inode, struct ceph_mds_caps *grant,
&atime);
/* max size increase? */
- if (max_size != ci->i_max_size) {
+ if (ci->i_auth_cap == cap && max_size != ci->i_max_size) {
dout("max_size %lld -> %llu\n", ci->i_max_size, max_size);
ci->i_max_size = max_size;
if (max_size >= ci->i_wanted_max_size) {