[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201201160006.206022360@goodmis.org>
Date: Tue, 01 Dec 2020 10:58:43 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: linux-kernel@...r.kernel.org
Cc: Ingo Molnar <mingo@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Ingo Molnar <mingo@...hat.com>, stable@...r.kernel.org,
Vasily Averin <vvs@...tuozzo.com>
Subject: [for-linus][PATCH 08/12] tracing: Remove WARN_ON in start_thread()
From: Vasily Averin <vvs@...tuozzo.com>
This patch reverts commit 978defee11a5 ("tracing: Do a WARN_ON()
if start_thread() in hwlat is called when thread exists")
.start hook can be legally called several times if according
tracer is stopped
screen window 1
[root@...alhost ~]# echo 1 > /sys/kernel/tracing/events/kmem/kfree/enable
[root@...alhost ~]# echo 1 > /sys/kernel/tracing/options/pause-on-trace
[root@...alhost ~]# less -F /sys/kernel/tracing/trace
screen window 2
[root@...alhost ~]# cat /sys/kernel/debug/tracing/tracing_on
0
[root@...alhost ~]# echo hwlat > /sys/kernel/debug/tracing/current_tracer
[root@...alhost ~]# echo 1 > /sys/kernel/debug/tracing/tracing_on
[root@...alhost ~]# cat /sys/kernel/debug/tracing/tracing_on
0
[root@...alhost ~]# echo 2 > /sys/kernel/debug/tracing/tracing_on
triggers warning in dmesg:
WARNING: CPU: 3 PID: 1403 at kernel/trace/trace_hwlat.c:371 hwlat_tracer_start+0xc9/0xd0
Link: https://lkml.kernel.org/r/bd4d3e70-400d-9c82-7b73-a2d695e86b58@virtuozzo.com
Cc: Ingo Molnar <mingo@...hat.com>
Cc: stable@...r.kernel.org
Fixes: 978defee11a5 ("tracing: Do a WARN_ON() if start_thread() in hwlat is called when thread exists")
Signed-off-by: Vasily Averin <vvs@...tuozzo.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@...dmis.org>
---
kernel/trace/trace_hwlat.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/trace/trace_hwlat.c b/kernel/trace/trace_hwlat.c
index c9ad5c6fbaad..d071fc271eef 100644
--- a/kernel/trace/trace_hwlat.c
+++ b/kernel/trace/trace_hwlat.c
@@ -368,7 +368,7 @@ static int start_kthread(struct trace_array *tr)
struct task_struct *kthread;
int next_cpu;
- if (WARN_ON(hwlat_kthread))
+ if (hwlat_kthread)
return 0;
/* Just pick the first CPU on first iteration */
--
2.28.0
Powered by blists - more mailing lists