kernel/trace: Fix cleanup logic of enable_trace_eprobe
authorTzvetomir Stoyanov (VMware) <tz.stoyanov@gmail.com>
Mon, 3 Jul 2023 04:28:53 +0000 (07:28 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 23 Jul 2023 11:49:24 +0000 (13:49 +0200)
commitf92a82dc486a539e2888b403ab18cf3963eb5b4d
tree2c2e0b909b9aa64fa6d7cbdf8a0b21440530fb5d
parent7772d5c44011aaf7035ff86b5881e89e7765c49f
kernel/trace: Fix cleanup logic of enable_trace_eprobe

[ Upstream commit cf0a624dc706c306294c14e6b3e7694702f25191 ]

The enable_trace_eprobe() function enables all event probes, attached
to given trace probe. If an error occurs in enabling one of the event
probes, all others should be roll backed. There is a bug in that roll
back logic - instead of all event probes, only the failed one is
disabled.

Link: https://lore.kernel.org/all/20230703042853.1427493-1-tz.stoyanov@gmail.com/
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Fixes: 7491e2c44278 ("tracing: Add a probe that attaches to trace events")
Signed-off-by: Tzvetomir Stoyanov (VMware) <tz.stoyanov@gmail.com>
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
kernel/trace/trace_eprobe.c