summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul E. McKenney2011-08-18 18:30:32 +0200
committerPaul E. McKenney2011-09-29 06:38:46 +0200
commitab8f11e5f6655861ad4758a7da76b2fc0e0dcc98 (patch)
tree3833850589c9593f42ba11b9aed589bbc18f28dd
parentrcu: Make rcu_torture_fqs() exit loops at end of test (diff)
downloadkernel-qcow2-linux-ab8f11e5f6655861ad4758a7da76b2fc0e0dcc98.tar.gz
kernel-qcow2-linux-ab8f11e5f6655861ad4758a7da76b2fc0e0dcc98.tar.xz
kernel-qcow2-linux-ab8f11e5f6655861ad4758a7da76b2fc0e0dcc98.zip
rcu: Make rcu_torture_boost() exit loops at end of test
One of the loops in rcu_torture_boost() fails to check kthread_should_stop(), and thus might be slowing or even stopping completion of rcutorture tests at rmmod time. This commit adds the kthread_should_stop() check to the offending loop. Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
-rw-r--r--kernel/rcutorture.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c
index 2431d576e9ca..764825c2685c 100644
--- a/kernel/rcutorture.c
+++ b/kernel/rcutorture.c
@@ -779,7 +779,8 @@ static int rcu_torture_boost(void *arg)
* interval. Besides, we are running at RT priority,
* so delays should be relatively rare.
*/
- while (oldstarttime == boost_starttime) {
+ while (oldstarttime == boost_starttime &&
+ !kthread_should_stop()) {
if (mutex_trylock(&boost_mutex)) {
boost_starttime = jiffies +
test_boost_interval * HZ;