Commit 1383b347 authored by Zhao Heming's avatar Zhao Heming Committed by Song Liu
Browse files

md/bitmap: fix memory leak of temporary bitmap



Callers of get_bitmap_from_slot() are responsible to free the bitmap.

Suggested-by: default avatarGuoqing Jiang <guoqing.jiang@cloud.ionos.com>
Signed-off-by: default avatarZhao Heming <heming.zhao@suse.com>
Signed-off-by: default avatarSong Liu <songliubraving@fb.com>
parent cf0b9b48
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1950,6 +1950,7 @@ out:
}
EXPORT_SYMBOL_GPL(md_bitmap_load);

/* caller need to free returned bitmap with md_bitmap_free() */
struct bitmap *get_bitmap_from_slot(struct mddev *mddev, int slot)
{
	int rv = 0;
@@ -2013,6 +2014,7 @@ int md_bitmap_copy_from_slot(struct mddev *mddev, int slot,
	md_bitmap_unplug(mddev->bitmap);
	*low = lo;
	*high = hi;
	md_bitmap_free(bitmap);

	return rv;
}
@@ -2616,4 +2618,3 @@ struct attribute_group md_bitmap_group = {
	.name = "bitmap",
	.attrs = md_bitmap_attrs,
};
+1 −0
Original line number Diff line number Diff line
@@ -1166,6 +1166,7 @@ static int resize_bitmaps(struct mddev *mddev, sector_t newsize, sector_t oldsiz
			 * can't resize bitmap
			 */
			goto out;
		md_bitmap_free(bitmap);
	}

	return 0;