diff options
author | kirjanov@gmail.com <kirjanov@gmail.com> | 2010-05-15 12:32:34 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-15 15:48:10 -0400 |
commit | 43aa7ac736a4e21aae4882bd8f7c67403aed45b8 (patch) | |
tree | 8ebbe9c6053c6552de8ee120384afb1b02bf8f47 /lib/btree.c | |
parent | bdef2fe88b1e4bde7458aedd207929ce3f9d66ee (diff) |
lib/btree: fix possible NULL pointer dereference
mempool_alloc() can return null in atomic case.
Signed-off-by: Denis Kirjanov <kirjanov@gmail.com>
Cc: Joern Engel <joern@logfs.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/btree.c')
-rw-r--r-- | lib/btree.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/btree.c b/lib/btree.c index 41859a820218..c9c6f0351526 100644 --- a/lib/btree.c +++ b/lib/btree.c | |||
@@ -95,7 +95,8 @@ static unsigned long *btree_node_alloc(struct btree_head *head, gfp_t gfp) | |||
95 | unsigned long *node; | 95 | unsigned long *node; |
96 | 96 | ||
97 | node = mempool_alloc(head->mempool, gfp); | 97 | node = mempool_alloc(head->mempool, gfp); |
98 | memset(node, 0, NODESIZE); | 98 | if (likely(node)) |
99 | memset(node, 0, NODESIZE); | ||
99 | return node; | 100 | return node; |
100 | } | 101 | } |
101 | 102 | ||