For nofail == false request, if __map_request failed, the caller do cleanup work,like release the relative pages.It doesn't make any sense to retry this request.So only give up it. Signed-off-by: Jianpeng Ma <majianpeng@xxxxxxxxx> --- net/ceph/osd_client.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c index dd47889..7d40a61 100644 --- a/net/ceph/osd_client.c +++ b/net/ceph/osd_client.c @@ -2129,7 +2129,8 @@ int ceph_osdc_start_request(struct ceph_osd_client *osdc, dout("osdc_start_request failed map, " " will retry %lld\n", req->r_tid); rc = 0; - } + } else + __unregister_request(osdc, req); goto out_unlock; } if (req->r_osd == NULL) { -- 1.8.1.2 ?韬{.n?????%??檩??w?{.n????u朕?Ф?塄}?财??j:+v??????2??璀??摺?囤??z夸z罐?+?????w棹f