Răsfoiți Sursa

dm cache: fix error return code in cache_create

Return -ENOMEM if memory allocation fails in cache_create
instead of 0 (to avoid NULL pointer dereference).

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Cc: stable@vger.kernel.org
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Wei Yongjun 12 ani în urmă
părinte
comite
fa4d683af3
1 a modificat fișierele cu 1 adăugiri și 0 ștergeri
  1. 1 0
      drivers/md/dm-cache-target.c

+ 1 - 0
drivers/md/dm-cache-target.c

@@ -1971,6 +1971,7 @@ static int cache_create(struct cache_args *ca, struct cache **result)
 	atomic_set(&cache->nr_migrations, 0);
 	init_waitqueue_head(&cache->migration_wait);
 
+	r = -ENOMEM;
 	cache->nr_dirty = 0;
 	cache->dirty_bitset = alloc_bitset(from_cblock(cache->cache_size));
 	if (!cache->dirty_bitset) {