[PATCH 0/5] handle kthread_prio kernel cmdline parameter consistently

From: Alison Chaiken
Date: Wed Jan 12 2022 - 21:15:54 EST


When CONFIG_PREEMPT_RT=y, RCU_SOFTIRQ work is moved to dedicated rcuc
per-core threads. The rcutree.kthread_prio kernel cmdline parameter
controls the priority of those threads.

A provided kthread_prio kernel cmdline parameter also elevates the
priority of rcuog threads, but only if they are launched from
rcu_spawn_gp_kthread(), not if they are launched from
rcu_spawn_one_nocb_kthread(). Fix this inconsistency.

When CONFIG_RCU_NOCB_CPU=y, an rcu_nocbs command-line parameter
offloads the work of rcuc on designated cores to new rcuop threads
that are not pinned to the cores whose expired grace-period timer
callbacks they run. While rcuop threads have the same function as
rcuc threads, their priority is not controlled by the kthread_prio
parameter. Add this feature and update the documentation accordingly.

Alison Chaiken (4):
RCU: move kthread_prio bounds-check to a separate function
RCU: make priority of grace-period thread consistent
RCU: elevate priority of offloaded callback threads
RCU: update documentation regarding kthread_prio cmdline parameter

.../admin-guide/kernel-parameters.txt | 2 +
kernel/rcu/tree.c | 42 +++++++++++--------
kernel/rcu/tree_nocb.h | 7 ++++
3 files changed, 34 insertions(+), 17 deletions(-)

--
2.32.0