public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Frederic Weisbecker <fweisbec@gmail.com>
Subject: [for-next][PATCH 02/20] tracing: Consolidate ftrace_trace_onoff_unreg() into callback
Date: Fri, 15 Mar 2013 15:39:37 -0400	[thread overview]
Message-ID: <20130315195122.339042353@goodmis.org> (raw)
In-Reply-To: 20130315193935.359219613@goodmis.org

[-- Attachment #1: Type: text/plain, Size: 1925 bytes --]

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

The only thing ftrace_trace_onoff_unreg() does is to do a strcmp()
against the cmd parameter to determine what op to unregister. But
this compare is also done after the location that this function is
called (and returns). By moving the check for '!' to unregister after
the strcmp(), the callback function itself can just do the unregister
and we can get rid of the helper function.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 kernel/trace/trace_functions.c |   24 +++++-------------------
 1 file changed, 5 insertions(+), 19 deletions(-)

diff --git a/kernel/trace/trace_functions.c b/kernel/trace/trace_functions.c
index 38cfb29..a88a3e0 100644
--- a/kernel/trace/trace_functions.c
+++ b/kernel/trace/trace_functions.c
@@ -283,22 +283,6 @@ ftrace_trace_onoff_print(struct seq_file *m, unsigned long ip,
 }
 
 static int
-ftrace_trace_onoff_unreg(char *glob, char *cmd, char *param)
-{
-	struct ftrace_probe_ops *ops;
-
-	/* we register both traceon and traceoff to this callback */
-	if (strcmp(cmd, "traceon") == 0)
-		ops = &traceon_probe_ops;
-	else
-		ops = &traceoff_probe_ops;
-
-	unregister_ftrace_function_probe_func(glob, ops);
-
-	return 0;
-}
-
-static int
 ftrace_trace_onoff_callback(struct ftrace_hash *hash,
 			    char *glob, char *cmd, char *param, int enable)
 {
@@ -311,15 +295,17 @@ ftrace_trace_onoff_callback(struct ftrace_hash *hash,
 	if (!enable)
 		return -EINVAL;
 
-	if (glob[0] == '!')
-		return ftrace_trace_onoff_unreg(glob+1, cmd, param);
-
 	/* we register both traceon and traceoff to this callback */
 	if (strcmp(cmd, "traceon") == 0)
 		ops = &traceon_probe_ops;
 	else
 		ops = &traceoff_probe_ops;
 
+	if (glob[0] == '!') {
+		unregister_ftrace_function_probe_func(glob+1, ops);
+		return 0;
+	}
+
 	if (!param)
 		goto out_reg;
 
-- 
1.7.10.4



[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

  parent reply	other threads:[~2013-03-15 19:55 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-15 19:39 [for-next][PATCH 00/20] tracing: function triggers, stack tracer fixes, clocks and documenation Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 01/20] tracing: Consolidate updating of count for traceon/off Steven Rostedt
2013-03-15 19:39 ` Steven Rostedt [this message]
2013-03-15 19:39 ` [for-next][PATCH 03/20] ftrace: Separate unlimited probes from count limited probes Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 04/20] ftrace: Fix function probe to only enable needed functions Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 05/20] tracing: Add alloc/free_snapshot() to replace duplicate code Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 06/20] tracing: Add snapshot trigger to function probes Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 07/20] tracing: Fix comments for ftrace_event_file/call flags Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 08/20] ftrace: Clean up function probe methods Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 09/20] ftrace: Use manual free after synchronize_sched() not call_rcu_sched() Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 10/20] tracing: Add a way to soft disable trace events Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 11/20] tracing: Add function probe triggers to enable/disable events Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 12/20] tracing: Add skip argument to trace_dump_stack() Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 13/20] tracing: Add function probe to trigger stack traces Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 14/20] tracing: Use stack of calling function for stack tracer Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 15/20] tracing: Fix stack tracer with fentry use Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 16/20] tracing: Remove most or all of stack tracer stack size from stack_max_size Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 17/20] tracing: Add function-trace option to disable function tracing of latency tracers Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 18/20] tracing: Add "uptime" trace clock that uses jiffies Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 19/20] tracing: Add "perf" trace_clock Steven Rostedt
2013-03-15 19:39 ` [for-next][PATCH 20/20] tracing: Bring Documentation/trace/ftrace.txt up to date Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130315195122.339042353@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=akpm@linux-foundation.org \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox