Re: 4.8.6-rt5 ftrace function_graph hangs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 11/21/2016 04:26 PM, He Zhe wrote:
>
> On 11/19/2016 12:35 AM, Steven Rostedt wrote:
>> On Fri, 18 Nov 2016 14:23:24 +0800
>> He Zhe <zhe.he@xxxxxxxxxxxxx> wrote:
>>
>>> Hi,
>>>
>>> I'm using 4.8.6-rt5 and find the following issue on nxp-t4xxx board/qemuppc/qemux86-64.
>>> When executing "echo function_graph > /sys/kernel/debug/tracing/current_tracer" the system hangs.
>>> I traced the kernel to where it dies but don't know how to fix. Please help. Thank you.
>>>
>>> (gdb) b ftrace_startup
>>>
>>> ...
>>>
>>> Run till exit from #0 ftrace_startup (ops=0xc0cf1704 <graph_ops>, command=8) at /PATH/TO/kernel/trace/ftrace.c:2653
>>> 0xc00eb768 in register_ftrace_graph (retfunc=0xc010186c <trace_graph_return>, entryfunc=0xc01014c4 <trace_graph_entry>)
>>>     at /PATH/TO/kernel-source/kernel/trace/ftrace.c:5908
>>> 5908 ret = ftrace_startup(&graph_ops, FTRACE_START_FUNC_RET);
>>> Value returned is $1 = 0
>>> (gdb) l
>>> 5903 */
>>> 5904 __ftrace_graph_entry = entryfunc;
>>> 5905 ftrace_graph_entry = ftrace_graph_entry_test;
>>> 5906 update_function_graph_func();
>>> 5907
>>> 5908 ret = ftrace_startup(&graph_ops, FTRACE_START_FUNC_RET);
>>> 5909 out:
>>> 5910 mutex_unlock(&ftrace_lock);
>>> 5911 return ret;
>>> 5912 }
>>> (gdb) n
>>> 5910 mutex_unlock(&ftrace_lock);
>>> (gdb) n
>>>
>>> hangs...
>>>
>> Can't you get a backtrace from this? It's running under qemu right? So
>> it should be able to break it and see where it is at.
>>
>> Note, my PowerPC box has just died, so I'm no longer able to work on
>> it, and don't have time to set up a qemu ppc image at the moment.
> Thanks you.
> So far we've found it happens on nxp-t4020(ppc) nxp-ls1021a(arma7) intel-x86 qemuppc qemux86-64.
> Here is my backtrace and the config is attached.
>
> (gdb) l
> 5905            ftrace_graph_entry = ftrace_graph_entry_test;
> 5906            update_function_graph_func();
> 5907
> 5908            ret = ftrace_startup(&graph_ops, FTRACE_START_FUNC_RET);
> 5909    out:
> 5910            mutex_unlock(&ftrace_lock);   <--- dies here
> 5911            return ret;
> 5912    }
> 5913
> 5914    void unregister_ftrace_graph(void)
> (gdb) bt
> #0  register_ftrace_graph (retfunc=0xc0101548 <trace_graph_return>, entryfunc=0xc01011a0 <trace_graph_entry>)
>     at /PATH/kernel/trace/ftrace.c:5910
> #1  0xc0100e3c in graph_trace_init (tr=<optimized out>) at /PATH/kernel/trace/trace_functions_graph.c:461
> #2  0xc00f46cc in tracer_init (tr=<optimized out>, t=<optimized out>) at /PATH/kernel/trace/trace.c:4588
> #3  tracing_set_tracer (tr=0xc0cdd970 <global_trace>, buf=0xca347e18 "function_graph")
>     at /PATH/kernel/trace/trace.c:4849
> #4  0xc00f4868 in tracing_set_trace_write (filp=<optimized out>, ubuf=<optimized out>, cnt=3392437791, ppos=0xca347f18)
>     at /PATH/kernel/trace/trace.c:4887
> #5  0xc01b77c0 in __vfs_write (file=<optimized out>, p=<optimized out>, count=<optimized out>, pos=<optimized out>)
>     at /PATH/fs/read_write.c:510
> #6  0xc01b88ec in vfs_write (file=0xcd9e2000, buf=0x1011ff80 "function_graph\n", count=15, pos=0xca347f18)
>     at /PATH/fs/read_write.c:560
> #7  0xc01b9968 in SYSC_write (count=<optimized out>, buf=<optimized out>, fd=<optimized out>)
>     at /PATH/fs/read_write.c:607
> #8  SyS_write (fd=<optimized out>, buf=269614976, count=15) at /PATH/fs/read_write.c:599
> #9  0xc00127e4 in syscall_dotrace_cont () at /PATH/arch/powerpc/kernel/entry_32.S:353

And I've tried on "a7fac75 Linux 4.8.1" and the latest linux-4.8.y-rt-rebase branch.They have the same issue.

Zhe

>
> Zhe
>
>> -- Steve
>>

--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux