47 lines
1.7 KiB
Diff
47 lines
1.7 KiB
Diff
From: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|
Date: Mon, 15 Jan 2018 20:51:50 -0600
|
|
Subject: [PATCH 24/48] tracing: Account for variables in named trigger
|
|
compatibility
|
|
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.16/older/patches-4.16.8-rt3.tar.xz
|
|
|
|
Named triggers must also have the same set of variables in order to be
|
|
considered compatible - update the trigger match test to account for
|
|
that.
|
|
|
|
The reason for this requirement is that named triggers with variables
|
|
are meant to allow one or more events to set the same variable.
|
|
|
|
Link: http://lkml.kernel.org/r/a17eae6328a99917f9d5c66129c9fcd355279ee9.1516069914.git.tom.zanussi@linux.intel.com
|
|
|
|
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
|
|
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
|
|
(cherry picked from commit f94add7df3d72bc8e659f9491e25d91c9dae1b44)
|
|
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|
---
|
|
kernel/trace/trace_events_hist.c | 7 ++++++-
|
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
|
|
|
--- a/kernel/trace/trace_events_hist.c
|
|
+++ b/kernel/trace/trace_events_hist.c
|
|
@@ -1610,7 +1610,7 @@ static int event_hist_trigger_print(stru
|
|
sort_key = &hist_data->sort_keys[i];
|
|
idx = sort_key->field_idx;
|
|
|
|
- if (WARN_ON(idx >= TRACING_MAP_FIELDS_MAX))
|
|
+ if (WARN_ON(idx >= HIST_FIELDS_MAX))
|
|
return -EINVAL;
|
|
|
|
if (i > 0)
|
|
@@ -1798,6 +1798,11 @@ static bool hist_trigger_match(struct ev
|
|
return false;
|
|
if (key_field->is_signed != key_field_test->is_signed)
|
|
return false;
|
|
+ if (!!key_field->var.name != !!key_field_test->var.name)
|
|
+ return false;
|
|
+ if (key_field->var.name &&
|
|
+ strcmp(key_field->var.name, key_field_test->var.name) != 0)
|
|
+ return false;
|
|
}
|
|
|
|
for (i = 0; i < hist_data->n_sort_keys; i++) {
|