On Tue, 10 Dec 2013 22:28:01 +0100 (CET) Thomas Gleixner <t...@linutronix.de> wrote:
> On Tue, 10 Dec 2013, Darren Hart wrote: > > On Tue, 2013-12-10 at 15:55 -0500, Dave Jones wrote: > > > On Tue, Dec 10, 2013 at 09:34:24PM +0100, Thomas Gleixner wrote: > > > > > > > > > PS: Oleg - the whole thread is on lkml. Ping me if you need more > > > context. > > > > > > > > > > btw, I've left the machine in that state, and will for as long as > > > necesary > > > > > in case someone has any ideas for further tracing experiments. > > > > > > > > Can you gather a trace with the function tracer? That will tell us > > > > what the thing is actually doing. > > > > > > Feed me command lines, and I'll see what I can do. > > > > > > Dave > > > > > > > So let's see if we can determine the call chain inside futex_requeue, if > > there is one. We want to see if we are calling the following functions: > > > > futex.c: free_pi_state > > futex.c: get_futex_value_locked > > futex.c: futex_proxy_trylock_atomic > > futex.c: lookup_pi_state > > futex.c: fault_in_user_writeable > > > > I'm hoping we can make use of ftrace here? > > > > Consider: > > > > $ trace-cmd record -P <PID> -p function -l '*futex*' Note the above just picks functions that have "futex" in its name, and will not include all the functions you listed above. > > > > And to try outside of futex: > > > > $ trace-cmd record -P <PID> -p function > > > > Then ^C after a few seconds. The trace will be in trace.dat > > We definitely want the latter. The futex code gets compiled into some > badly traceable mess. Yeah, lets use all functions. If its in a loop, we should see exactly what is happening, with full function tracing. You may be able to simplify it to just: trace-cmd record -p function sleep 10 and then read the trace. Nasty loopers usually dominate these types of traces so no need to filter on them in the recording. -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/