aboutsummaryrefslogtreecommitdiffstats
path: root/lib/radix-tree.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2018-05-31 12:27:56 +0200
committerIngo Molnar <mingo@kernel.org>2018-05-31 12:27:56 +0200
commitc52b5c5f96b217854a953689f65234f7448c7f47 (patch)
treecb9e41e3c25965e550b28f5aa5467cce5983125a /lib/radix-tree.c
parentperf/x86: Store user space frame-pointer value on a sample (diff)
parentMerge tag 'nds32-for-linus-4.17-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/greentime/linux (diff)
downloadlinux-dev-c52b5c5f96b217854a953689f65234f7448c7f47.tar.xz
linux-dev-c52b5c5f96b217854a953689f65234f7448c7f47.zip
Merge branch 'linus' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'lib/radix-tree.c')
-rw-r--r--lib/radix-tree.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/radix-tree.c b/lib/radix-tree.c
index 43e0cbedc3a0..a9e41aed6de4 100644
--- a/lib/radix-tree.c
+++ b/lib/radix-tree.c
@@ -2034,10 +2034,12 @@ void *radix_tree_delete_item(struct radix_tree_root *root,
unsigned long index, void *item)
{
struct radix_tree_node *node = NULL;
- void __rcu **slot;
+ void __rcu **slot = NULL;
void *entry;
entry = __radix_tree_lookup(root, index, &node, &slot);
+ if (!slot)
+ return NULL;
if (!entry && (!is_idr(root) || node_tag_get(root, node, IDR_FREE,
get_slot_offset(node, slot))))
return NULL;