|
@@ -452,13 +452,6 @@ overflow:
|
|
|
return ERR_PTR(-EBUSY);
|
|
|
}
|
|
|
|
|
|
-static void rcu_free_va(struct rcu_head *head)
|
|
|
-{
|
|
|
- struct vmap_area *va = container_of(head, struct vmap_area, rcu_head);
|
|
|
-
|
|
|
- kfree(va);
|
|
|
-}
|
|
|
-
|
|
|
static void __free_vmap_area(struct vmap_area *va)
|
|
|
{
|
|
|
BUG_ON(RB_EMPTY_NODE(&va->rb_node));
|
|
@@ -491,7 +484,7 @@ static void __free_vmap_area(struct vmap_area *va)
|
|
|
if (va->va_end > VMALLOC_START && va->va_end <= VMALLOC_END)
|
|
|
vmap_area_pcpu_hole = max(vmap_area_pcpu_hole, va->va_end);
|
|
|
|
|
|
- call_rcu(&va->rcu_head, rcu_free_va);
|
|
|
+ kfree_rcu(va, rcu_head);
|
|
|
}
|
|
|
|
|
|
/*
|