summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhangXiaoxu <zhangxiaoxu5@huawei.com>2019-08-19 05:31:21 +0200
committerMike Snitzer <snitzer@redhat.com>2019-08-22 22:11:24 +0200
commitae148243d3f0816b37477106c05a2ec7d5f32614 (patch)
treeff7287f6d90e4ebb7a8c18273e0f78647ba9a3c1
parentdm btree: fix order of block initialization in btree_split_beneath (diff)
downloadlinux-ae148243d3f0816b37477106c05a2ec7d5f32614.tar.xz
linux-ae148243d3f0816b37477106c05a2ec7d5f32614.zip
dm space map metadata: fix missing store of apply_bops() return value
In commit 6096d91af0b6 ("dm space map metadata: fix occasional leak of a metadata block on resize"), we refactor the commit logic to a new function 'apply_bops'. But when that logic was replaced in out() the return value was not stored. This may lead out() returning a wrong value to the caller. Fixes: 6096d91af0b6 ("dm space map metadata: fix occasional leak of a metadata block on resize") Cc: stable@vger.kernel.org Signed-off-by: ZhangXiaoxu <zhangxiaoxu5@huawei.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com>
-rw-r--r--drivers/md/persistent-data/dm-space-map-metadata.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/persistent-data/dm-space-map-metadata.c b/drivers/md/persistent-data/dm-space-map-metadata.c
index aec449243966..25328582cc48 100644
--- a/drivers/md/persistent-data/dm-space-map-metadata.c
+++ b/drivers/md/persistent-data/dm-space-map-metadata.c
@@ -249,7 +249,7 @@ static int out(struct sm_metadata *smm)
}
if (smm->recursion_count == 1)
- apply_bops(smm);
+ r = apply_bops(smm);
smm->recursion_count--;