ftrace: binary and not logical for continue test
Peter Zijlstra provided me with a nice brown paper bag while letting me know
that I was doing a logical AND and not a binary one, making a condition
true more often than it should be.
Luckily, a false true is handled by the calling function and no harm is
done. But this needs to be fixed regardless.
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 1801900..9639e45 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -1655,7 +1655,7 @@
case TRACE_PRINT:
seq_print_ip_sym(s, field->print.ip, sym_flags);
trace_seq_printf(s, ": %s", field->print.buf);
- if (field->flags && TRACE_FLAG_CONT)
+ if (field->flags & TRACE_FLAG_CONT)
trace_seq_print_cont(s, iter);
break;
default:
@@ -1768,7 +1768,7 @@
case TRACE_PRINT:
seq_print_ip_sym(s, field->print.ip, sym_flags);
trace_seq_printf(s, ": %s", field->print.buf);
- if (field->flags && TRACE_FLAG_CONT)
+ if (field->flags & TRACE_FLAG_CONT)
trace_seq_print_cont(s, iter);
break;
}
@@ -1833,7 +1833,7 @@
case TRACE_PRINT:
trace_seq_printf(s, "# %lx %s",
field->print.ip, field->print.buf);
- if (field->flags && TRACE_FLAG_CONT)
+ if (field->flags & TRACE_FLAG_CONT)
trace_seq_print_cont(s, iter);
break;
}