Commit 5387815a authored by Rosen Penev's avatar Rosen Penev Committed by Mikulas Patocka
Browse files

dm-bufio: use kzalloc_flex



Avoid manual size calculations and use the proper helper.

Add __counted_by for extra runtime analysis.

Signed-off-by: default avatarRosen Penev <rosenp@gmail.com>
Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
parent fc1d4382
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -391,7 +391,7 @@ struct dm_buffer_cache {
	 */
	unsigned int num_locks;
	bool no_sleep;
	struct buffer_tree trees[];
	struct buffer_tree trees[] __counted_by(num_locks);
};

static DEFINE_STATIC_KEY_FALSE(no_sleep_enabled);
@@ -2511,7 +2511,7 @@ struct dm_bufio_client *dm_bufio_client_create(struct block_device *bdev, unsign
	}

	num_locks = dm_num_hash_locks();
	c = kzalloc(sizeof(*c) + (num_locks * sizeof(struct buffer_tree)), GFP_KERNEL);
	c = kzalloc_flex(*c, cache.trees, num_locks);
	if (!c) {
		r = -ENOMEM;
		goto bad_client;