在只加载了linux vmlinux符号表的情况下,trace32 只能显示内核态的调用栈函数信息,无法显示用户态调用栈的函数信息:
查看进程maps
确认地址0x40616C为进程/bin/box的虚拟地址;而0xFFFF904E12FC为/lib/libc-2.30.so的地址,其起始地址为0xFFFF90423000。
加载/bin/box符号表:
Data.LOAD.elf D:\elf\box /NoCODE /NoClear
加载/lib/libc-2.30.so符号表
Data.LOAD.elf D:\elf\libc-2.30.so 0xFFFF90423000 /NoCODE /NoClear
再查看调用栈,用户态调用栈已经能正确显示函数信息: