diff options
author | Xiubo Li <xiubli@redhat.com> | 2023-07-25 11:51:59 +0200 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2023-08-31 14:56:27 +0200 |
commit | ce0d5bd3a6c176f9a3bf867624a07119dd4d0878 (patch) | |
tree | 5d2a065219add296e35e8823691130c36d05482e /drivers | |
parent | ceph: make members in struct ceph_mds_request_args_ext a union (diff) | |
download | linux-ce0d5bd3a6c176f9a3bf867624a07119dd4d0878.tar.xz linux-ce0d5bd3a6c176f9a3bf867624a07119dd4d0878.zip |
ceph: make num_fwd and num_retry to __u32
The num_fwd in MClientRequestForward is int32_t, while the num_fwd
in ceph_mds_request_head is __u8. This is buggy when the num_fwd
is larger than 256 it will always be truncate to 0 again. But the
client couldn't recoginize this.
This will make them to __u32 instead. Because the old cephs will
directly copy the raw memories when decoding the reqeust's head,
so we need to make sure this kclient will be compatible with old
cephs. For newer cephs they will decode the requests depending
the version, which will be much simpler and easier to extend new
members.
Link: https://tracker.ceph.com/issues/62145
Signed-off-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions