Re: [PATCH v2 tip/core/rcu 04/11] rcu: Make RCU_FANOUT_LEAF help text more explicit about skew_tick

From: Paul E. McKenney
Date: Tue Apr 18 2017 - 14:42:22 EST


On Mon, Apr 17, 2017 at 05:18:25PM -0700, Josh Triplett wrote:
> On Mon, Apr 17, 2017 at 04:28:51PM -0700, Paul E. McKenney wrote:
> > If you set RCU_FANOUT_LEAF too high, you can get lock contention
> > on the leaf rcu_node, and you should boot with the skew_tick kernel
> > parameter set in order to avoid this lock contention. This commit
> > therefore upgrades the RCU_FANOUT_LEAF help text to explicitly state
> > this.
> >
> > Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
> > ---
> > init/Kconfig | 10 ++++++++--
> > 1 file changed, 8 insertions(+), 2 deletions(-)
> >
> > diff --git a/init/Kconfig b/init/Kconfig
> > index a92f27da4a27..946e561e67b7 100644
> > --- a/init/Kconfig
> > +++ b/init/Kconfig
> > @@ -612,11 +612,17 @@ config RCU_FANOUT_LEAF
> > initialization. These systems tend to run CPU-bound, and thus
> > are not helped by synchronized interrupts, and thus tend to
> > skew them, which reduces lock contention enough that large
> > - leaf-level fanouts work well.
> > + leaf-level fanouts work well. That said, setting leaf-level
> > + fanout to a large number will likely cause problematic
> > + lock contention on the leaf-level rcu_node structures unless
> > + you boot with the skew_tick kernel parameter.
> >
> > Select a specific number if testing RCU itself.
> >
> > - Select the maximum permissible value for large systems.
> > + Select the maximum permissible value for large systems, but
> > + please understand that you may also need to set the
> > + skew_tick kernel boot parameter to avoid contention
> > + on the rcu_node structure's locks.
>
> Nit: the indentation seems wrong here.

Right you are! Fixed, thank you!

Thanx, Paul