rcu-tasks: Selectively enable more RCU Tasks Trace IPIs
authorPaul E. McKenney <paulmck@kernel.org>
Thu, 10 Sep 2020 04:51:09 +0000 (21:51 -0700)
committerPaul E. McKenney <paulmck@kernel.org>
Wed, 16 Sep 2020 23:32:37 +0000 (16:32 -0700)
commit574de8766f6efa0757f3c7ac15c9eb29a4636861
tree8c45b3abeda484174910c1eb7d51bed6b2c7a969
parent2393a613d2e3da35bd73ee55d9dca0fb04810955
rcu-tasks: Selectively enable more RCU Tasks Trace IPIs

Many workloads are quite sensitive to IPIs, and such workloads should
build kernels with CONFIG_TASKS_TRACE_RCU_READ_MB=y to prevent RCU
Tasks Trace from using them under normal conditions.  However, other
workloads are quite happy to permit more IPIs if doing so makes BPF
program updates go faster.  This commit therefore sets the default
value for the rcupdate.rcu_task_ipi_delay kernel parameter to zero for
kernels that have been built with CONFIG_TASKS_TRACE_RCU_READ_MB=n,
while retaining the old default of (HZ / 10) for kernels that have
indicated an aversion to IPIs via CONFIG_TASKS_TRACE_RCU_READ_MB=y.

Link: https://lore.kernel.org/bpf/CAADnVQK_AiX+S_L_A4CQWT11XyveppBbQSQgH_qWGyzu_E8Yeg@mail.gmail.com/
Reported-by: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: <bpf@vger.kernel.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
kernel/rcu/tasks.h