Skip to content

Commit 5870ba3

Browse files
committed
Merge tag 'ceph-for-6.8-rc7' of https://github.com/ceph/ceph-client
Pull ceph fix from Ilya Dryomov: "Catch up with mdsmap encoding rectification which ended up being necessary after all to enable cluster upgrades from problematic v18.2.0 and v18.2.1 releases" * tag 'ceph-for-6.8-rc7' of https://github.com/ceph/ceph-client: ceph: switch to corrected encoding of max_xattr_size in mdsmap
2 parents 7505aa1 + 51d3114 commit 5870ba3

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

fs/ceph/mdsmap.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -380,10 +380,11 @@ struct ceph_mdsmap *ceph_mdsmap_decode(struct ceph_mds_client *mdsc, void **p,
380380
ceph_decode_skip_8(p, end, bad_ext);
381381
/* required_client_features */
382382
ceph_decode_skip_set(p, end, 64, bad_ext);
383+
/* bal_rank_mask */
384+
ceph_decode_skip_string(p, end, bad_ext);
385+
}
386+
if (mdsmap_ev >= 18) {
383387
ceph_decode_64_safe(p, end, m->m_max_xattr_size, bad_ext);
384-
} else {
385-
/* This forces the usage of the (sync) SETXATTR Op */
386-
m->m_max_xattr_size = 0;
387388
}
388389
bad_ext:
389390
doutc(cl, "m_enabled: %d, m_damaged: %d, m_num_laggy: %d\n",

fs/ceph/mdsmap.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ struct ceph_mdsmap {
2727
u32 m_session_timeout; /* seconds */
2828
u32 m_session_autoclose; /* seconds */
2929
u64 m_max_file_size;
30-
u64 m_max_xattr_size; /* maximum size for xattrs blob */
30+
/*
31+
* maximum size for xattrs blob.
32+
* Zeroed by default to force the usage of the (sync) SETXATTR Op.
33+
*/
34+
u64 m_max_xattr_size;
3135
u32 m_max_mds; /* expected up:active mds number */
3236
u32 m_num_active_mds; /* actual up:active mds number */
3337
u32 possible_max_rank; /* possible max rank index */

0 commit comments

Comments
 (0)