mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] rcutorture: Make stall-tasks directly exit when rcutorture tests end
@ 2024-03-21  8:28 Zqiang
  2024-03-21  8:32 ` Z qiang
  2024-03-26 18:03 ` Paul E. McKenney
  0 siblings, 2 replies; 3+ messages in thread
From: Zqiang @ 2024-03-21  8:28 UTC (permalink / raw)
  To: paulmck, frederic, neeraj.upadhyay, joel
  Cc: qiang.zhang1211, rcu, linux-kernel

When the rcutorture tests start to exit, the rcu_torture_cleanup() is
invoked to stop kthreads and release resources, if the stall-task
kthreads exist, cpu-stall has started and the rcutorture.stall_cpu
is set to a larger value, the rcu_torture_cleanup() will be blocked
for a long time and the hung-task may occur, this commit therefore
add kthread_should_stop() to the loop of cpu-stall operation, when
rcutorture tests ends, no need to wait for cpu-stall to end, exit
directly.

Signed-off-by: Zqiang <qiang.zhang1211@gmail.com>
---
 kernel/rcu/rcutorture.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
index 3f9c3766f52b..6a3cd6ed8b25 100644
--- a/kernel/rcu/rcutorture.c
+++ b/kernel/rcu/rcutorture.c
@@ -2490,7 +2490,7 @@ static int rcu_torture_stall(void *args)
 		pr_alert("%s start on CPU %d.\n",
 			  __func__, raw_smp_processor_id());
 		while (ULONG_CMP_LT((unsigned long)ktime_get_seconds(),
-				    stop_at))
+				    stop_at) && !kthread_should_stop())
 			if (stall_cpu_block) {
 #ifdef CONFIG_PREEMPTION
 				preempt_schedule();
-- 
2.17.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-03-26 18:03 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-21  8:28 [PATCH] rcutorture: Make stall-tasks directly exit when rcutorture tests end Zqiang
2024-03-21  8:32 ` Z qiang
2024-03-26 18:03 ` Paul E. McKenney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®