From: Yan, Zheng Date: Thu, 26 Jan 2017 08:58:41 +0000 (+0800) Subject: client: remove request from session->requests when handling forward X-Git-Tag: v12.0.0~71^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F13124%2Fhead;p=ceph.git client: remove request from session->requests when handling forward Client::handle_client_request_forward() reset request->mds to -1, it should also remove request from session->requests. Otherwise Client::kick_requests_closed() get confused. Fixes: http://tracker.ceph.com/issues/18675 Signed-off-by: "Yan, Zheng" --- diff --git a/src/client/Client.cc b/src/client/Client.cc index 382d2168e74..3730be5f84e 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -2224,6 +2224,7 @@ void Client::handle_client_request_forward(MClientRequestForward *fwd) << dendl; request->mds = -1; + request->item.remove_myself(); request->num_fwd = fwd->get_num_fwd(); request->resend_mds = fwd->get_dest_mds(); request->caller_cond->Signal();