From: Steven Rostedt (VMware) Date: Tue, 30 Nov 2021 17:31:23 +0000 (-0500) Subject: tracing/histograms: String compares should not care about signed values X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=3d73021f8d74e81b150b2307d26325858d0955aa;p=linux-block.git tracing/histograms: String compares should not care about signed values commit 450fec13d9170127678f991698ac1a5b05c02e2f upstream. When comparing two strings for the "onmatch" histogram trigger, fields that are strings use string comparisons, which do not care about being signed or not. Do not fail to match two string fields if one is unsigned char array and the other is a signed char array. Link: https://lore.kernel.org/all/20211129123043.5cfd687a@gandalf.local.home/ Cc: stable@vgerk.kernel.org Cc: Tom Zanussi Cc: Yafang Shao Fixes: b05e89ae7cf3b ("tracing: Accept different type for synthetic event fields") Reviewed-by: Masami Hiramatsu Reported-by: Sven Schnelle Signed-off-by: Steven Rostedt (VMware) Signed-off-by: Greg Kroah-Hartman --- diff --git a/kernel/trace/trace_events_hist.c b/kernel/trace/trace_events_hist.c index c2ec467a5766..003e5f37861e 100644 --- a/kernel/trace/trace_events_hist.c +++ b/kernel/trace/trace_events_hist.c @@ -3344,7 +3344,7 @@ static int check_synth_field(struct synth_event *event, if (strcmp(field->type, hist_field->type) != 0) { if (field->size != hist_field->size || - field->is_signed != hist_field->is_signed) + (!field->is_string && field->is_signed != hist_field->is_signed)) return -EINVAL; }