summaryrefslogtreecommitdiff
path: root/Documentation/kmemleak.txt
diff options
context:
space:
mode:
authorEric Wheeler <git@linux.ewheeler.net>2016-02-26 14:33:56 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-04-12 09:08:53 -0700
commit32bb1185093c67c2280e440685ebc6b23fd47743 (patch)
tree9d244b0ea5b2edae88fb39ce91677d4868b4a8b1 /Documentation/kmemleak.txt
parent84512e476ce92fbdb60d4687e3ea230dbf0655c8 (diff)
bcache: cleaned up error handling around register_cache()
commit 9b299728ed777428b3908ac72ace5f8f84b97789 upstream. Fix null pointer dereference by changing register_cache() to return an int instead of being void. This allows it to return -ENOMEM or -ENODEV and enables upper layers to handle the OOM case without NULL pointer issues. See this thread: http://thread.gmane.org/gmane.linux.kernel.bcache.devel/3521 Fixes this error: gargamel:/sys/block/md5/bcache# echo /dev/sdh2 > /sys/fs/bcache/register bcache: register_cache() error opening sdh2: cannot allocate memory BUG: unable to handle kernel NULL pointer dereference at 00000000000009b8 IP: [<ffffffffc05a7e8d>] cache_set_flush+0x102/0x15c [bcache] PGD 120dff067 PUD 1119a3067 PMD 0 Oops: 0000 [#1] SMP Modules linked in: veth ip6table_filter ip6_tables (...) CPU: 4 PID: 3371 Comm: kworker/4:3 Not tainted 4.4.2-amd64-i915-volpreempt-20160213bc1 #3 Hardware name: System manufacturer System Product Name/P8H67-M PRO, BIOS 3904 04/27/2013 Workqueue: events cache_set_flush [bcache] task: ffff88020d5dc280 ti: ffff88020b6f8000 task.ti: ffff88020b6f8000 RIP: 0010:[<ffffffffc05a7e8d>] [<ffffffffc05a7e8d>] cache_set_flush+0x102/0x15c [bcache] Signed-off-by: Eric Wheeler <bcache@linux.ewheeler.net> Tested-by: Marc MERLIN <marc@merlins.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'Documentation/kmemleak.txt')
0 files changed, 0 insertions, 0 deletions