|
@@ -595,6 +595,8 @@ EXPORT_SYMBOL(kmem_cache_create);
|
|
void kmem_cache_destroy(struct kmem_cache *c)
|
|
void kmem_cache_destroy(struct kmem_cache *c)
|
|
{
|
|
{
|
|
kmemleak_free(c);
|
|
kmemleak_free(c);
|
|
|
|
+ if (c->flags & SLAB_DESTROY_BY_RCU)
|
|
|
|
+ rcu_barrier();
|
|
slob_free(c, sizeof(struct kmem_cache));
|
|
slob_free(c, sizeof(struct kmem_cache));
|
|
}
|
|
}
|
|
EXPORT_SYMBOL(kmem_cache_destroy);
|
|
EXPORT_SYMBOL(kmem_cache_destroy);
|