diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 3ca82d44edd344a2800b8029f5d6e1d27d8d528b..5f5b09e9dccdffa8445b25e6772fc0905492b0f5 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); } /**