tracing: Have stack trace not record if RCU is not watching
authorSteven Rostedt (VMware) <rostedt@goodmis.org>
Tue, 5 Dec 2017 09:41:51 +0000 (04:41 -0500)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Fri, 15 Dec 2017 01:48:22 +0000 (20:48 -0500)
commitb00d607bb188e187c7b60074d2fa91a6f1985029
treed316d0fbc4cbd906f38d3f4e2d1a2502f4439988
parenta773d419275bf54854ca6cfda8f2594ed2790faa
tracing: Have stack trace not record if RCU is not watching

The stack tracer records a stack dump whenever it sees a stack usage that is
more than what it ever saw before. This can happen at any function that is
being traced. If it happens when the CPU is going idle (or other strange
locations), RCU may not be watching, and in this case, the recording of the
stack trace will trigger a warning. There's been lots of efforts to make
hacks to allow stack tracing to proceed even if RCU is not watching, but
this only causes more issues to appear. Simply do not trace a stack if RCU
is not watching. It probably isn't a bad stack anyway.

Acked-by: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
kernel/trace/trace_stack.c