]> git.baikalelectronics.ru Git - kernel.git/commit
tracing: Wait for preempt irq delay thread to finish
authorSteven Rostedt (VMware) <rostedt@goodmis.org>
Wed, 6 May 2020 14:20:10 +0000 (10:20 -0400)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Thu, 7 May 2020 17:32:40 +0000 (13:32 -0400)
commit303d51c10c1d5047bec647896cc92b2ec4213b12
tree126e7e7715b2d4a92904fce097df68da3aca8a6d
parent2e67d2c4db8a17b7f3c7c97cd6a800e0a7a239a3
tracing: Wait for preempt irq delay thread to finish

Running on a slower machine, it is possible that the preempt delay kernel
thread may still be executing if the module was immediately removed after
added, and this can cause the kernel to crash as the kernel thread might be
executing after its code has been removed.

There's no reason that the caller of the code shouldn't just wait for the
delay thread to finish, as the thread can also be created by a trigger in
the sysfs code, which also has the same issues.

Link: http://lore.kernel.org/r/5EA2B0C8.2080706@cn.fujitsu.com
Cc: stable@vger.kernel.org
Fixes: f990cf6b6ee6b ("lib: Add module for testing preemptoff/irqsoff latency tracers")
Reported-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
Reviewed-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
Reviewed-by: Joel Fernandes <joel@joelfernandes.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
kernel/trace/preemptirq_delay_test.c