]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
rbd: rbd_obj_request_wait() should cancel the request if interrupted
authorIlya Dryomov <ilya.dryomov@inktank.com>
Thu, 19 Jun 2014 07:38:14 +0000 (11:38 +0400)
committerIlya Dryomov <ilya.dryomov@inktank.com>
Tue, 8 Jul 2014 11:08:45 +0000 (15:08 +0400)
commit71c20a066f1a4ee1339db0efb58290fbb62e62f2
tree5055abe05cb7a383196f2cef2ff68acb5f30bb1f
parentc9f9b93ddfd76498fe36d9f550bd26533a4ee6bf
rbd: rbd_obj_request_wait() should cancel the request if interrupted

rbd_obj_request_wait() should cancel the underlying OSD request if
interrupted.  Otherwise libceph will hold onto it indefinitely, causing
assert failures or leaking the original object request.

This also adds an rbd wrapper around ceph_osdc_cancel_request() to
match rbd_obj_request_submit() and rbd_obj_request_wait().

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
Reviewed-by: Alex Elder <elder@linaro.org>
drivers/block/rbd.c