summaryrefslogtreecommitdiff
path: root/fs/ceph
diff options
context:
space:
mode:
authorYan, Zheng <zheng.z.yan@intel.com>2013-05-31 16:26:44 +0800
committerSage Weil <sage@inktank.com>2013-07-03 15:32:47 -0700
commit3803da4963db01da6a983ab589ebe2e6ccb97ba9 (patch)
treeb12dc5fe8f399ff8d285c2e8ef64994367c697bb /fs/ceph
parentbb137f84d1d8f692233b590f7cae14abbdc1e0c1 (diff)
downloadlwn-3803da4963db01da6a983ab589ebe2e6ccb97ba9.tar.gz
lwn-3803da4963db01da6a983ab589ebe2e6ccb97ba9.zip
ceph: reset iov_len when discarding cap release messages
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com> Reviewed-by: Sage Weil <sage@inktank.com>
Diffstat (limited to 'fs/ceph')
-rw-r--r--fs/ceph/mds_client.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c
index 4d2920304be8..ddbd5907d41b 100644
--- a/fs/ceph/mds_client.c
+++ b/fs/ceph/mds_client.c
@@ -1391,6 +1391,7 @@ static void discard_cap_releases(struct ceph_mds_client *mdsc,
num = le32_to_cpu(head->num);
dout("discard_cap_releases mds%d %p %u\n", session->s_mds, msg, num);
head->num = cpu_to_le32(0);
+ msg->front.iov_len = sizeof(*head);
session->s_num_cap_releases += num;
/* requeue completed messages */