diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 3ca82d44edd3..5f5b09e9dccd 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -2309,7 +2309,7 @@ EXPORT_SYMBOL_GPL(free_vm_area); #ifdef CONFIG_SMP static struct vmap_area *node_to_va(struct rb_node *n) { - return n ? rb_entry(n, struct vmap_area, rb_node) : NULL; + return rb_entry_safe(n, struct vmap_area, rb_node); } /**