Hello Tejun, Thanks a lot for looking into this issue as it seems to affect a lot of users! On Sat, Jan 14, 2017 at 12:54:42AM -0500, Tejun Heo wrote: > This patch updates the cache release path so that it simply uses > call_rcu() instead of the synchronous rcu_barrier() + custom batching. > This doesn't cost more while being logically simpler and way more > scalable. The point of rcu_barrier() is to wait until all rcu calls freeing slabs from the cache being destroyed are over (rcu_free_slab, kmem_rcu_free). I'm not sure if call_rcu() guarantees that for all rcu implementations too. If it did, why would we need rcu_barrier() at all? -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html