On Thu, Jun 13, 2024 at 07:17:38AM -0700, Jakub Kicinski wrote: > On Wed, 12 Jun 2024 20:38:02 -0700 Paul E. McKenney wrote: > > o Make rcu_barrier() wait for kfree_rcu() objects. (This is > > surprisingly complex and will wait unnecessarily in some cases. > > However, it does preserve current code.) > > Not sure how much mental capacity for API variations we expect from > people using caches, but I feel like this would score the highest > on Rusty's API scale. I'd even venture an opinion that it's less > confusing to require cache users to have their own (trivial) callbacks > than add API variants we can't error check even at runtime... Fair point, though please see Jason's emails. And the underlying within-RCU mechanism is the same either way, so that API decision can be deferred for some time. But the within-slab mechanism does have the advantage of also possibly simplifying reference-counting and the potential upcoming hazard pointers. On the other hand, I currently have no idea what level of violence this change would make to the slab subsystem. Thanx, Paul