diff options
author | Steven Rostedt (Red Hat) <rostedt@goodmis.org> | 2014-01-10 17:51:01 -0500 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2014-02-20 12:13:08 -0500 |
commit | bf6065b5c7014ab30383405718c7a6b96d2cbdb2 (patch) | |
tree | 4384129e5a26ee055cc58059fc680e5d8e4ca18c /kernel/trace | |
parent | 8c1a49aedb73fb2f15aaa32ad9e2e1c4289f45cb (diff) |
tracing: Pass trace_array to flag_changed callback
As options (flags) may affect instances instead of being global
the flag_changed() callbacks need to receive the trace_array descriptor
of the instance they will be modifying.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace')
-rw-r--r-- | kernel/trace/trace.c | 2 | ||||
-rw-r--r-- | kernel/trace/trace.h | 2 | ||||
-rw-r--r-- | kernel/trace/trace_irqsoff.c | 4 | ||||
-rw-r--r-- | kernel/trace/trace_sched_wakeup.c | 4 |
4 files changed, 8 insertions, 4 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index d7dfc7efc4bf..ee8da93e91e0 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c | |||
@@ -3393,7 +3393,7 @@ int set_tracer_flag(struct trace_array *tr, unsigned int mask, int enabled) | |||
3393 | 3393 | ||
3394 | /* Give the tracer a chance to approve the change */ | 3394 | /* Give the tracer a chance to approve the change */ |
3395 | if (tr->current_trace->flag_changed) | 3395 | if (tr->current_trace->flag_changed) |
3396 | if (tr->current_trace->flag_changed(tr->current_trace, mask, !!enabled)) | 3396 | if (tr->current_trace->flag_changed(tr, mask, !!enabled)) |
3397 | return -EINVAL; | 3397 | return -EINVAL; |
3398 | 3398 | ||
3399 | if (enabled) | 3399 | if (enabled) |
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h index 649a23d421c1..36e44732c650 100644 --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h | |||
@@ -358,7 +358,7 @@ struct tracer { | |||
358 | int (*set_flag)(struct trace_array *tr, | 358 | int (*set_flag)(struct trace_array *tr, |
359 | u32 old_flags, u32 bit, int set); | 359 | u32 old_flags, u32 bit, int set); |
360 | /* Return 0 if OK with change, else return non-zero */ | 360 | /* Return 0 if OK with change, else return non-zero */ |
361 | int (*flag_changed)(struct tracer *tracer, | 361 | int (*flag_changed)(struct trace_array *tr, |
362 | u32 mask, int set); | 362 | u32 mask, int set); |
363 | struct tracer *next; | 363 | struct tracer *next; |
364 | struct tracer_flags *flags; | 364 | struct tracer_flags *flags; |
diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c index fd99b0c183ac..4bf812f454e6 100644 --- a/kernel/trace/trace_irqsoff.c +++ b/kernel/trace/trace_irqsoff.c | |||
@@ -572,8 +572,10 @@ static void irqsoff_function_set(int set) | |||
572 | unregister_irqsoff_function(is_graph()); | 572 | unregister_irqsoff_function(is_graph()); |
573 | } | 573 | } |
574 | 574 | ||
575 | static int irqsoff_flag_changed(struct tracer *tracer, u32 mask, int set) | 575 | static int irqsoff_flag_changed(struct trace_array *tr, u32 mask, int set) |
576 | { | 576 | { |
577 | struct tracer *tracer = tr->current_trace; | ||
578 | |||
577 | if (mask & TRACE_ITER_FUNCTION) | 579 | if (mask & TRACE_ITER_FUNCTION) |
578 | irqsoff_function_set(set); | 580 | irqsoff_function_set(set); |
579 | 581 | ||
diff --git a/kernel/trace/trace_sched_wakeup.c b/kernel/trace/trace_sched_wakeup.c index f0bbdc261028..e14da5e97a69 100644 --- a/kernel/trace/trace_sched_wakeup.c +++ b/kernel/trace/trace_sched_wakeup.c | |||
@@ -179,8 +179,10 @@ static void wakeup_function_set(int set) | |||
179 | unregister_wakeup_function(is_graph()); | 179 | unregister_wakeup_function(is_graph()); |
180 | } | 180 | } |
181 | 181 | ||
182 | static int wakeup_flag_changed(struct tracer *tracer, u32 mask, int set) | 182 | static int wakeup_flag_changed(struct trace_array *tr, u32 mask, int set) |
183 | { | 183 | { |
184 | struct tracer *tracer = tr->current_trace; | ||
185 | |||
184 | if (mask & TRACE_ITER_FUNCTION) | 186 | if (mask & TRACE_ITER_FUNCTION) |
185 | wakeup_function_set(set); | 187 | wakeup_function_set(set); |
186 | 188 | ||