aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/drbd
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruen@kernel.org>2011-09-28 16:15:04 -0400
committerPhilipp Reisner <philipp.reisner@linbit.com>2012-05-09 09:15:49 -0400
commit7b4e4d31268cbd885782bf3eee8027c852c9d191 (patch)
treecd6d3dbaa71d9d6b408b4a2f9e7c386f6990ff8b /drivers/block/drbd
parent40424e4a24bc500639cb4bf1bf846362b0e692a5 (diff)
drbd: drbd_nl_resize(): Fix missing put_ldev() on error path
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block/drbd')
-rw-r--r--drivers/block/drbd/drbd_nl.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/block/drbd/drbd_nl.c b/drivers/block/drbd/drbd_nl.c
index 6d116a2b2321..1a81d9ed1b24 100644
--- a/drivers/block/drbd/drbd_nl.c
+++ b/drivers/block/drbd/drbd_nl.c
@@ -1727,7 +1727,7 @@ static int drbd_nl_resize(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp,
1727 1727
1728 if (rs.no_resync && mdev->agreed_pro_version < 93) { 1728 if (rs.no_resync && mdev->agreed_pro_version < 93) {
1729 retcode = ERR_NEED_APV_93; 1729 retcode = ERR_NEED_APV_93;
1730 goto fail; 1730 goto fail_ldev;
1731 } 1731 }
1732 1732
1733 if (mdev->ldev->known_size != drbd_get_capacity(mdev->ldev->backing_bdev)) 1733 if (mdev->ldev->known_size != drbd_get_capacity(mdev->ldev->backing_bdev))
@@ -1754,6 +1754,10 @@ static int drbd_nl_resize(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp,
1754 fail: 1754 fail:
1755 reply->ret_code = retcode; 1755 reply->ret_code = retcode;
1756 return 0; 1756 return 0;
1757
1758 fail_ldev:
1759 put_ldev(mdev);
1760 goto fail;
1757} 1761}
1758 1762
1759static int drbd_nl_syncer_conf(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp, 1763static int drbd_nl_syncer_conf(struct drbd_conf *mdev, struct drbd_nl_cfg_req *nlp,