Commit a15f7fc2 authored by Tom Zanussi's avatar Tom Zanussi Committed by Steven Rostedt (VMware)

tracing: Exclude 'generic fields' from histograms

There are a small number of 'generic fields' (comm/COMM/cpu/CPU) that
are found by trace_find_event_field() but are only meant for
filtering.  Specifically, they unlike normal fields, they have a size
of 0 and thus wreak havoc when used as a histogram key.

Exclude these (return -EINVAL) when used as histogram keys.

Link: http://lkml.kernel.org/r/956154cbc3e8a4f0633d619b886c97f0f0edf7b4.1506105045.git.tom.zanussi@linux.intel.comSigned-off-by: default avatarTom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
parent 1a149d7d
...@@ -450,7 +450,7 @@ static int create_val_field(struct hist_trigger_data *hist_data, ...@@ -450,7 +450,7 @@ static int create_val_field(struct hist_trigger_data *hist_data,
} }
field = trace_find_event_field(file->event_call, field_name); field = trace_find_event_field(file->event_call, field_name);
if (!field) { if (!field || !field->size) {
ret = -EINVAL; ret = -EINVAL;
goto out; goto out;
} }
...@@ -548,7 +548,7 @@ static int create_key_field(struct hist_trigger_data *hist_data, ...@@ -548,7 +548,7 @@ static int create_key_field(struct hist_trigger_data *hist_data,
} }
field = trace_find_event_field(file->event_call, field_name); field = trace_find_event_field(file->event_call, field_name);
if (!field) { if (!field || !field->size) {
ret = -EINVAL; ret = -EINVAL;
goto out; goto out;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment