Re: [PATCH 1/3] rcu: Replace magic number with meaningful constant in rcu_seq_done_exact()
From: Frederic Weisbecker
Date: Tue Apr 01 2025 - 09:39:54 EST
Le Mon, Mar 31, 2025 at 02:29:52PM -0700, Paul E. McKenney a écrit :
> The disagreement is a feature, at least up to a point. That feature
> allows CPUs to go idle for long periods without RCU having to bother
> them or to mess with their per-CPU data (give or take ->gpwrap). It also
> allows per-rcu_node-leaf locking, which is important on large systems.
>
> Trying to make precisely globally agreed-on beginnings and ends of
> RCU grace periods will not end well from performance, scalability,
> or real-time-response viewpoints. ;-)
The distributed disagreement is definetly a feature. The duplicate root
is more debatable.
> But simplifications that don't hurt performance, scalability, and
> real-time-response are of course welcome.
I'm not even sure my proposal is a simplification. Perhaps it is. Another
hope is that it could avoid future accidents.
> Indeed, this probably needs actual performance results showing that
> it is needed. My guess is that only systems with a single rcu_node
> structure that is both leaf and root would have any chance of noticing.
> And those tend to have few CPUs, so they might not care.
Do you have any idea for a benchmark to test here?
Thanks.
> Thanx, Paul