]> git-server-git.apps.pok.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)
committerJeff Layton <jlayton@kernel.org>
Fri, 29 Apr 2022 20:06:35 +0000 (16:06 -0400)
commitc8efb96fee2acb56ad14330945f3e2c2486bd969
tree8e4da8b3b2f962c774d85f8b4a17b4c621e209a4
parent8080203e4d7ff8c6b9e4ce980a15c58fb7444766
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