]> git.proxmox.com Git - mirror_ubuntu-zesty-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)
committerTim Gardner <tim.gardner@canonical.com>
Thu, 21 Apr 2016 12:53:01 +0000 (06:53 -0600)
commit0961cbf7301cd5d01644589d1b51242eb280e864
treee980e00591d96cb264da1367aae5cdc56741cf16
parentd5f4725587c7e9117eb0c337a848398c113ad55b
bcache: fix cache_set_flush() NULL pointer dereference on OOM

BugLink: http://bugs.launchpad.net/bugs/1572722
commit f8b11260a445169989d01df75d35af0f56178f95 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
drivers/md/bcache/super.c