]> git.apps.os.sepia.ceph.com Git - ceph-client.git/commit
ceph: stop retrying the request when exceeding 256 times
authorXiubo Li <xiubli@redhat.com>
Wed, 30 Mar 2022 06:39:33 +0000 (14:39 +0800)
committerIlya Dryomov <idryomov@gmail.com>
Mon, 25 Apr 2022 09:07:47 +0000 (11:07 +0200)
commit03243e8bbc7e0d07a37d47ed52c2aac53c9b6e7f
tree729094ab6b5bdaf2aa3f90da4fae3ac3c2944890
parent5754c912ba7e05d91237f56c4061cf53bfeb1031
ceph: stop retrying the request when exceeding 256 times

The type of 'r_attempts' in kernel 'ceph_mds_request' is 'int',
while in 'ceph_mds_request_head' the type of 'num_retry' is '__u8'.
So in case the request retries exceeding 256 times, the MDS will
receive a incorrect retry seq.

In this case it's ususally a bug in MDS and continue retrying the
request makes no sense. For now let's limit it to 256. In future
this could be fixed in ceph code, so avoid using the hardcode here.

Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Xiubo Li <xiubli@redhat.com>
fs/ceph/mds_client.c