[dpdk-dev] backtracing from within the code

Thomas Monjalon thomas.monjalon at 6wind.com
Fri Jun 24 12:05:26 CEST 2016


2016-06-24 09:25, Dumitrescu, Cristian:
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Catalin Vasile
> > I'm trying to add a feature to DPDK and I'm having a hard time printing a
> > backtrace.
> > I tried using this[1] functions for printing, but it does not print more than one
> > function. Maybe it lacks the symbols it needs.
[...]
> It eventually calls rte_dump_stack() in file lib/lirte_eal/linuxapp/eal/eal_debug.c, which calls backtrace(), which is probably what you are looking for. 

Example:
5: [build/app/testpmd(_start+0x29) [0x416f69]]
4: [/usr/lib/libc.so.6(__libc_start_main+0xf0) [0x7eff3b757610]]
3: [build/app/testpmd(main+0x2ff) [0x416b3f]]
2: [build/app/testpmd(init_port_config+0x88) [0x419a78]]
1: [build/lib/librte_eal.so.2.1(rte_dump_stack+0x18) [0x7eff3c126488]]

Please tell us if you have some cases where rte_dump_stack() does not work.
I do not remember what are the constraints to have it working.
Your binary is not stripped?


More information about the dev mailing list