diff options
author | Joern Engel <joern@logfs.org> | 2012-06-07 14:21:14 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-06-07 14:43:55 -0700 |
commit | 39caa0916ef27cf1da5026eb708a2b8413156f75 (patch) | |
tree | 8cabf096e8a485ac623883ad57064ca1d18f253b /lib | |
parent | cbf8ae32f66a9ceb8907ad9e16663c2a29e48990 (diff) | |
download | op-kernel-dev-39caa0916ef27cf1da5026eb708a2b8413156f75.zip op-kernel-dev-39caa0916ef27cf1da5026eb708a2b8413156f75.tar.gz |
btree: catch NULL value before it does harm
Storing NULL values in the btree is illegal and can lead to memory
corruption and possible other fun as well. Catch it on insert, instead
of waiting for the inevitable.
Signed-off-by: Joern Engel <joern@logfs.org>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/btree.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/btree.c b/lib/btree.c index 5cf9e74..f9a4846 100644 --- a/lib/btree.c +++ b/lib/btree.c @@ -509,6 +509,7 @@ retry: int btree_insert(struct btree_head *head, struct btree_geo *geo, unsigned long *key, void *val, gfp_t gfp) { + BUG_ON(!val); return btree_insert_level(head, geo, key, val, 1, gfp); } EXPORT_SYMBOL_GPL(btree_insert); |