Messages in this thread |  | | Subject | Re: [PATCH v3 01/10] tracing: Update cond flag when enabling or disabling a trigger | From | Tom Zanussi <> | Date | Mon, 29 Jun 2015 15:25:36 -0500 |
| |
On Fri, 2015-06-12 at 14:01 -0400, Steven Rostedt wrote: > Why v3 in the subject? >
It was v3 of the patch he sent, which came at about v4 of the original patchset. I guess that just causes confusion, so I'll keep the version numbers the same for a patchset.
> On Mon, 8 Jun 2015 16:32:00 -0500 > Tom Zanussi <tom.zanussi@linux.intel.com> wrote: > > > When a trigger is enabled, the cond flag should be set beforehand, > > otherwise a trigger that's expecting to process a trace record > > (e.g. one with post_trigger set) could be invoked without one. > > > > Likewise a trigger's cond flag should be reset after it's disabled, > > not before. > > > > Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> > > Signed-off-by: Daniel Wagner <daniel.wagner@bmw-carit.de> > > Why is Daniel signed off by here? >
Daniel sent me the original problem report and attempt at a patch - I started from that but fixed it up but still wanted to give him credit. From now on, I'll keep follow-ons separate (it's kind of unusual to have people sending patches for patchsets still under review, so wasn't sure about that).
Tom
> -- Steve > > > --- > > kernel/trace/trace_events_trigger.c | 10 ++++++---- > > 1 file changed, 6 insertions(+), 4 deletions(-) > > > > diff --git a/kernel/trace/trace_events_trigger.c b/kernel/trace/trace_events_trigger.c > > index 42a4009..4d2f3cc 100644 > > --- a/kernel/trace/trace_events_trigger.c > > +++ b/kernel/trace/trace_events_trigger.c > > @@ -543,11 +543,12 @@ static int register_trigger(char *glob, struct event_trigger_ops *ops, > > list_add_rcu(&data->list, &file->triggers); > > ret++; > > > > + update_cond_flag(file); > > if (trace_event_trigger_enable_disable(file, 1) < 0) { > > list_del_rcu(&data->list); > > + update_cond_flag(file); > > ret--; > > } > > - update_cond_flag(file); > > out: > > return ret; > > } > > @@ -575,8 +576,8 @@ static void unregister_trigger(char *glob, struct event_trigger_ops *ops, > > if (data->cmd_ops->trigger_type == test->cmd_ops->trigger_type) { > > unregistered = true; > > list_del_rcu(&data->list); > > - update_cond_flag(file); > > trace_event_trigger_enable_disable(file, 0); > > + update_cond_flag(file); > > break; > > } > > } > > @@ -1319,11 +1320,12 @@ static int event_enable_register_trigger(char *glob, > > list_add_rcu(&data->list, &file->triggers); > > ret++; > > > > + update_cond_flag(file); > > if (trace_event_trigger_enable_disable(file, 1) < 0) { > > list_del_rcu(&data->list); > > + update_cond_flag(file); > > ret--; > > } > > - update_cond_flag(file); > > out: > > return ret; > > } > > @@ -1344,8 +1346,8 @@ static void event_enable_unregister_trigger(char *glob, > > (enable_data->file == test_enable_data->file)) { > > unregistered = true; > > list_del_rcu(&data->list); > > - update_cond_flag(file); > > trace_event_trigger_enable_disable(file, 0); > > + update_cond_flag(file); > > break; > > } > > } >
|  |