[PATCH 1/2] tracing: Return -ENOENT if there is no target synthetic event

From: Steven Rostedt
Date: Tue Oct 30 2018 - 09:15:06 EST


From: Masami Hiramatsu <mhiramat@xxxxxxxxxx>

Return -ENOENT error if there is no target synthetic event.
This notices an operation failure to user as below;

# echo 'wakeup_latency u64 lat; pid_t pid;' > synthetic_events
# echo '!wakeup' >> synthetic_events
sh: write error: No such file or directory

Link: http://lkml.kernel.org/r/154013449986.25576.9487131386597290172.stgit@devbox

Acked-by: Tom Zanussi <zanussi@xxxxxxxxxxxxxxx>
Tested-by: Tom Zanussi <zanussi@xxxxxxxxxxxxxxx>
Cc: Shuah Khan <shuah@xxxxxxxxxx>
Cc: Rajvi Jingar <rajvi.jingar@xxxxxxxxx>
Cc: stable@xxxxxxxxxxxxxxx
Fixes: 4b147936fa50 ('tracing: Add support for 'synthetic' events')
Signed-off-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
Signed-off-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx>
---
kernel/trace/trace_events_hist.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/kernel/trace/trace_events_hist.c b/kernel/trace/trace_events_hist.c
index d239004aaf29..eb908ef2ecec 100644
--- a/kernel/trace/trace_events_hist.c
+++ b/kernel/trace/trace_events_hist.c
@@ -1063,8 +1063,10 @@ static int create_synth_event(int argc, char **argv)
event = NULL;
ret = -EEXIST;
goto out;
- } else if (delete_event)
+ } else if (delete_event) {
+ ret = -ENOENT;
goto out;
+ }

if (argc < 2) {
ret = -EINVAL;
--
2.19.0