Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 11f77002 authored by Sage Weil's avatar Sage Weil
Browse files

rbd: fix leak of ops struct



The ops vector must be freed by the rbd_do_request caller.

Signed-off-by: default avatarSage Weil <sage@newdream.net>
parent 446cc634
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -996,6 +996,8 @@ static int rbd_do_op(struct request *rq,
			     ops,
			     num_reply,
			     rbd_req_cb, 0, NULL);

	rbd_destroy_ops(ops);
done:
	kfree(seg_name);
	return ret;
@@ -1063,7 +1065,9 @@ static int rbd_req_sync_notify_ack(struct rbd_device *dev,
{
	struct ceph_osd_req_op *ops;
	struct page **pages = NULL;
	int ret = rbd_create_rw_ops(&ops, 1, CEPH_OSD_OP_NOTIFY_ACK, 0);
	int ret;

	ret = rbd_create_rw_ops(&ops, 1, CEPH_OSD_OP_NOTIFY_ACK, 0);
	if (ret < 0)
		return ret;