rbd: fix snapshot context reference count for discards
Discards take a reference to the snapshot context of an image when they are created. This reference needs to be cleaned up when the request is done just as it is for regular writes. Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
This commit is contained in:
parent
3c5df89367
commit
bef95455a4
1 changed files with 2 additions and 1 deletions
|
@ -2170,7 +2170,8 @@ static void rbd_img_request_destroy(struct kref *kref)
|
|||
rbd_dev_parent_put(img_request->rbd_dev);
|
||||
}
|
||||
|
||||
if (img_request_write_test(img_request))
|
||||
if (img_request_write_test(img_request) ||
|
||||
img_request_discard_test(img_request))
|
||||
ceph_put_snap_context(img_request->snapc);
|
||||
|
||||
kmem_cache_free(rbd_img_request_cache, img_request);
|
||||
|
|
Loading…
Reference in a new issue