All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kernel/trace: Stop and wait for kthread on preempt irq module unload
@ 2020-04-24 22:36 Joel Fernandes (Google)
  2020-04-28 10:19 ` Xiao Yang
  0 siblings, 1 reply; 14+ messages in thread
From: Joel Fernandes (Google) @ 2020-04-24 22:36 UTC (permalink / raw)
  To: linux-kernel
  Cc: Joel Fernandes (Google), Steven Rostedt, Xiao Yang, Ingo Molnar

Kthread running the test needs to be stopped or it can continue
executing code unloaded by module causing a crash.

Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Reported-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
Link: http://lore.kernel.org/r/5EA2B0C8.2080706@cn.fujitsu.com
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
---
 kernel/trace/preemptirq_delay_test.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/kernel/trace/preemptirq_delay_test.c b/kernel/trace/preemptirq_delay_test.c
index 31c0fad4cb9e1..1c28ca20e30b6 100644
--- a/kernel/trace/preemptirq_delay_test.c
+++ b/kernel/trace/preemptirq_delay_test.c
@@ -145,10 +145,10 @@ static struct attribute_group attr_group = {
 };
 
 static struct kobject *preemptirq_delay_kobj;
+static struct task_struct *test_task;
 
 static int __init preemptirq_delay_init(void)
 {
-	struct task_struct *test_task;
 	int retval;
 
 	test_task = preemptirq_start_test();
@@ -171,6 +171,9 @@ static int __init preemptirq_delay_init(void)
 static void __exit preemptirq_delay_exit(void)
 {
 	kobject_put(preemptirq_delay_kobj);
+
+	if (test_task)
+		kthread_stop(test_task);
 }
 
 module_init(preemptirq_delay_init)
-- 
2.26.2.303.gf8c07b1a785-goog


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

end of thread, other threads:[~2020-05-07 12:29 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-24 22:36 [PATCH] kernel/trace: Stop and wait for kthread on preempt irq module unload Joel Fernandes (Google)
2020-04-28 10:19 ` Xiao Yang
2020-04-28 14:15   ` Joel Fernandes
2020-04-29 11:47     ` Xiao Yang
2020-04-28 14:44   ` Steven Rostedt
2020-04-28 14:45     ` Steven Rostedt
2020-04-29 11:54       ` Xiao Yang
2020-04-29 16:31         ` Steven Rostedt
2020-04-29 19:12           ` Joel Fernandes
2020-05-06 13:38             ` Steven Rostedt
2020-05-06 14:30               ` [PATCH] tracing: Wait for preempt irq delay thread to finish Steven Rostedt
2020-05-07 10:05                 ` Xiao Yang
2020-05-07 12:29                   ` joel
2020-04-29 11:37   ` [PATCH] kernel/trace: Stop and wait for kthread on preempt irq module unload Xiao Yang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.