Messages in this thread | | | From | Andy Lutomirski <> | Date | Mon, 13 Feb 2017 11:08:55 -0800 | Subject | Re: [PATCH RFC v2 tip/core/rcu] Maintain special bits at bottom of ->dynticks counter |
| |
On Mon, Feb 13, 2017 at 9:57 AM, Peter Zijlstra <peterz@infradead.org> wrote: > On Mon, Feb 13, 2017 at 09:01:04AM -0800, Paul E. McKenney wrote: >> > I think I've asked this before, but why does this live in the guts of >> > RCU? >> > >> > Should we lift this state tracking stuff out and make RCU and >> > NOHZ(_FULL) users of it, or doesn't that make sense (reason)? >> >> The dyntick-idle stuff is pretty specific to RCU. And what precisely >> would be helped by moving it? > > Maybe untangle the inter-dependencies somewhat. It just seems a wee bit > odd to have arch TLB invalidate depend on RCU implementation details > like this.
This came out of a courtyard discussion at KS/LPC. The idea is that this optimzation requires an atomic op that could be shared with RCU and that we probably care a lot more about this optimization on kernels with context tracking enabled, so putting it in RCU has nice performance properties. Other than that, it doesn't make a huge amount of sense.
Amusingly, Darwin appears to do something similar without an atomic op, and I have no idea why that's safe.
--Andy
| |