Messages in this thread | | | From | Vaibhav Nagarnaik <> | Date | Tue, 3 May 2011 16:36:56 -0700 | Subject | Re: [RFC PATCH] tracing: Don't call wakeup() when committing the event |
| |
On Tue, May 3, 2011 at 3:47 PM, Steven Rostedt <rostedt@goodmis.org> wrote: > On Wed, 2011-05-04 at 00:09 +0200, Frederic Weisbecker wrote: > >> I wonder if we should have a lite version of wake_up() that checks >> if the list of waiters is empty before locking the queue. >> After all we don't care much about tight races for tracing. > > Since tracing is a special case here, we probably could get away to just > do it ourselves. That is, have our own flag that determines if we should > wakeup or not.
I had another question looking at the implementation of ftrace_raw_event_##call in include/trace/ftrace.h.
All the raw trace events are traced through this function and it does not call wakeup() on the trace_wait waitqueue. How do the current implementations of readers handle tracing anything other than syscalls? Since wakeup() will never get called, do the readers never poll on the waitqueue?
I understand from the logs that due to hard lockups while tracing sched events, this new API was added. But does this mean that the tracing waitqueues functionality is not being used by the readers?
> > -- Steve > > >
Vaibhav Nagarnaik
| |