Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1532397

[PATCH 3/4] tracing: Have system enable return error if one of the events fail

From Steven Rostedt <rostedt@goodmis.org>
Newsgroups linux.kernel
Subject [PATCH 3/4] tracing: Have system enable return error if one of the events fail
Date 2016-11-29 16:10 +0100
Message-ID <sIScH-1DN-55@gated-at.bofh.it> (permalink)
References <sIScF-1DN-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>

If one of the events of within a system fails to enable when "1" is written
to the system "enable" file, it should return an error. Note, some events
may still be enabled, but the user should know that something did go wrong.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 kernel/trace/trace_events.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
index d35fc2b0d304..93116549a284 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
@@ -702,6 +702,7 @@ __ftrace_set_clr_event_nolock(struct trace_array *tr, const char *match,
 	struct trace_event_call *call;
 	const char *name;
 	int ret = -EINVAL;
+	int eret = 0;
 
 	list_for_each_entry(file, &tr->events, list) {
 
@@ -725,9 +726,17 @@ __ftrace_set_clr_event_nolock(struct trace_array *tr, const char *match,
 		if (event && strcmp(event, name) != 0)
 			continue;
 
-		ftrace_event_enable_disable(file, set);
+		ret = ftrace_event_enable_disable(file, set);
 
-		ret = 0;
+		/*
+		 * Save the first error and return that. Some events
+		 * may still have been enabled, but let the user
+		 * know that something went wrong.
+		 */
+		if (ret && !eret)
+			eret = ret;
+
+		ret = eret;
 	}
 
 	return ret;
-- 
2.10.2

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/4] tracing: Have tracepoint reg functions allowed to fail Steven Rostedt <rostedt@goodmis.org> - 2016-11-29 16:10 +0100
  [PATCH 4/4] tracing: Allow benchmark to be enabled at early_initcall() Steven Rostedt <rostedt@goodmis.org> - 2016-11-29 16:10 +0100
  [PATCH 3/4] tracing: Have system enable return error if one of the events fail Steven Rostedt <rostedt@goodmis.org> - 2016-11-29 16:10 +0100
  [PATCH 1/4] tracing: Have the reg function allow to fail Steven Rostedt <rostedt@goodmis.org> - 2016-11-29 16:10 +0100

csiph-web