diff options
author | Steven Rostedt (Red Hat) <rostedt@goodmis.org> | 2013-07-31 19:16:22 +0200 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2013-07-31 19:16:22 +0200 |
commit | 2ba64035d0ca966fd189bc3e0826343fc81bf482 (patch) | |
tree | ca96642c76e96d13d7ace443a26e26f622c3337f | |
parent | tracing: trace_remove_event_call() should fail if call/file is in use (diff) | |
download | linux-2ba64035d0ca966fd189bc3e0826343fc81bf482.tar.xz linux-2ba64035d0ca966fd189bc3e0826343fc81bf482.zip |
tracing: Add comment to describe special break case in probe_remove_event_call()
The "break" used in the do_for_each_event_file() is used as an optimization
as the loop is really a double loop. The loop searches all event files
for each trace_array. There's only one matching event file per trace_array
and after we find the event file for the trace_array, the break is used
to jump to the next trace_array and start the search there.
As this is not a standard way of using "break" in C code, it requires
a comment right before the break to let people know what is going on.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r-- | kernel/trace/trace_events.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c index ec04836273c0..29a7ebcfb426 100644 --- a/kernel/trace/trace_events.c +++ b/kernel/trace/trace_events.c @@ -1732,6 +1732,12 @@ static int probe_remove_event_call(struct ftrace_event_call *call) */ if (file->flags & FTRACE_EVENT_FL_ENABLED) return -EBUSY; + /* + * The do_for_each_event_file_safe() is + * a double loop. After finding the call for this + * trace_array, we use break to jump to the next + * trace_array. + */ break; } while_for_each_event_file(); |