X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;ds=sidebyside;f=mm%2Fslob.c;h=9641da3d5e58dfca1d7c79dbef99760364fa98b2;hb=ba8b3a40ba7e06d00c27508f090803af90e8dbbf;hp=c78742defdc6477ef7474ebc1fc8117173aaabfc;hpb=93db6294958f62643a917e44d1abc85440e600cf;p=~andy%2Flinux diff --git a/mm/slob.c b/mm/slob.c index c78742defdc..9641da3d5e5 100644 --- a/mm/slob.c +++ b/mm/slob.c @@ -595,6 +595,8 @@ EXPORT_SYMBOL(kmem_cache_create); void kmem_cache_destroy(struct kmem_cache *c) { kmemleak_free(c); + if (c->flags & SLAB_DESTROY_BY_RCU) + rcu_barrier(); slob_free(c, sizeof(struct kmem_cache)); } EXPORT_SYMBOL(kmem_cache_destroy);