diff options
Diffstat (limited to 'fs/ceph/mds_client.c')
-rw-r--r-- | fs/ceph/mds_client.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c index 387a48993d34..d2171f4a6980 100644 --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c | |||
@@ -89,6 +89,16 @@ static int parse_reply_info_in(void **p, void *end, | |||
89 | ceph_decode_need(p, end, info->xattr_len, bad); | 89 | ceph_decode_need(p, end, info->xattr_len, bad); |
90 | info->xattr_data = *p; | 90 | info->xattr_data = *p; |
91 | *p += info->xattr_len; | 91 | *p += info->xattr_len; |
92 | |||
93 | if (features & CEPH_FEATURE_MDS_INLINE_DATA) { | ||
94 | ceph_decode_64_safe(p, end, info->inline_version, bad); | ||
95 | ceph_decode_32_safe(p, end, info->inline_len, bad); | ||
96 | ceph_decode_need(p, end, info->inline_len, bad); | ||
97 | info->inline_data = *p; | ||
98 | *p += info->inline_len; | ||
99 | } else | ||
100 | info->inline_version = CEPH_INLINE_NONE; | ||
101 | |||
92 | return 0; | 102 | return 0; |
93 | bad: | 103 | bad: |
94 | return err; | 104 | return err; |