Messages in this thread Patch in this message | | | From | Li Wang <> | Subject | [PATCH 2/2] ceph: Add necessary clean up if invalid reply received in handle_reply() | Date | Wed, 27 Nov 2013 22:28:14 +0800 |
| |
Wake up possible waiters, invoke the call back if any, unregister the request
Signed-off-by: Li Wang <liwang@ubuntukylin.com> Signed-off-by: Yunchuan Wen <yunchuanwen@ubuntukylin.com> --- net/ceph/osd_client.c | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c index 2b4b32a..a17eaae 100644 --- a/net/ceph/osd_client.c +++ b/net/ceph/osd_client.c @@ -1581,6 +1581,13 @@ done: return; bad_put: + req->r_result = -EIO; + __unregister_request(osdc, req); + if (req->r_callback) + req->r_callback(req, msg); + else + complete_all(&req->r_completion); + complete_request(req); ceph_osdc_put_request(req); bad_mutex: mutex_unlock(&osdc->request_mutex); -- 1.7.9.5
| |