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

From: Peter Zijlstra
Date: Thu Apr 13 2017 - 05:15:50 EST


On Wed, Apr 12, 2017 at 09:55:40AM -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.

Why mention a way out of a problem you shouldn't have to begin with?

Just state its bad and result in lock contention and leave it at that.