Messages in this thread | | | Date | Tue, 10 Dec 2013 22:28:01 +0100 (CET) | From | Thomas Gleixner <> | Subject | Re: process 'stuck' at exit. |
| |
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*' > > 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.
Thanks,
tglx
| |