]> git.baikalelectronics.ru Git - kernel.git/commit
bcache: fix cache_set_flush() NULL pointer dereference on OOM
authorEric Wheeler <git@linux.ewheeler.net>
Mon, 7 Mar 2016 23:17:50 +0000 (15:17 -0800)
committerJens Axboe <axboe@fb.com>
Tue, 8 Mar 2016 16:19:10 +0000 (09:19 -0700)
commitfc31b59148bbf7a4e6bcf6132ffcfe7c37052da9
tree39c76fd608151d09474df9654b14367855808e7b
parent3d07ccc61002703ed43087ebe3fd32909e59cbbc
bcache: fix cache_set_flush() NULL pointer dereference on OOM

When bch_cache_set_alloc() fails to kzalloc the cache_set, the
asyncronous closure handling tries to dereference a cache_set that
hadn't yet been allocated inside of cache_set_flush() which is called
by __cache_set_unregister() during cleanup.  This appears to happen only
during an OOM condition on bcache_register.

Signed-off-by: Eric Wheeler <bcache@linux.ewheeler.net>
Cc: stable@vger.kernel.org
drivers/md/bcache/super.c