]> asedeno.scripts.mit.edu Git - linux.git/commit
rcutorture: Add support to detect if boost kthread prio is too low
authorJoel Fernandes (Google) <joel@joelfernandes.org>
Tue, 19 Jun 2018 22:14:18 +0000 (15:14 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 12 Jul 2018 22:42:08 +0000 (15:42 -0700)
commit4babd855fd6137f9792117eb73b096c221a49d3c
tree5274671db713424db122f1564478592aea94d047
parent622be33fcbc93e9b672b99ed338369eb5e843ac3
rcutorture: Add support to detect if boost kthread prio is too low

When rcutorture is built in to the kernel, an earlier patch detects
that and raises the priority of RCU's kthreads to allow rcutorture's
RCU priority boosting tests to succeed.

However, if rcutorture is built as a module, those priorities must be
raised manually via the rcutree.kthread_prio kernel boot parameter.
If this manual step is not taken, rcutorture's RCU priority boosting
tests will fail due to kthread starvation.  One approach would be to
raise the default priority, but that risks breaking existing users.
Another approach would be to allow runtime adjustment of RCU's kthread
priorities, but that introduces numerous "interesting" race conditions.
This patch therefore instead detects too-low priorities, and prints a
message and disables the RCU priority boosting tests in that case.

Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcu/rcu.h
kernel/rcu/rcutorture.c
kernel/rcu/tree.c