Messages in this thread | | | Date | Fri, 30 Jun 2017 17:07:40 -0400 | From | Steven Rostedt <> | Subject | Re: [RFC] tracing: Add support for critical section event tracing |
| |
On Fri, 30 Jun 2017 14:03:14 -0700 Joel Fernandes <joelaf@google.com> wrote:
> Hi Steven, > > Thanks a lot for the comments, I agree with all of them and had a > comment about one of them: > > On Fri, Jun 30, 2017 at 5:51 AM, Steven Rostedt <rostedt@goodmis.org> wrote: > [..] > > Are you not worried about recursion here? There's no protection. > > Wouldn't it be better to have: > > > > if (!this_cpu_read(tracing_events_cpu)) > > return; > > > > trace_critical_end(ip, parent_ip); > > > > this_cpu_write(tracing_events_cpu, 0); > > > > ? > > > > I tried to go over some scenarios and I think it shouldn't be a > problem because we start the critical event only when either > interrupts are turned off while preemption is turned on, or preempt is > turned off while interrupts are turned on, and the fact that we call > the tracer while still in the critical section. Let me know if you had > a scenario in mind that can cause problems with this.
Then may I ask what is tracing_events_cpu actually protecting?
-- Steve
| |