在分析进程的核心(由信号 6 终止)时,在 LINUX 上,堆栈 bt 显示:
Core was generated by `/opt/namsam/pac_rrc_qx_e1/bin/rrcprb'.
Program terminated with signal 6, Aborted.
#0 0x0000005555ffb004 in epoll_wait () from /lib64/libc.so.6
(gdb) bt
#0 0x0000005555ffb004 in epoll_wait () from /lib64/libc.so.6
#1 0x0000005555ffafe8 in __epoll_wait_nocancel () from /lib64/libc.so.6
#2 0x0000005555ffafe8 in __epoll_wait_nocancel () from /lib64/libc.so.6
#3 0x0000005555ffafe8 in __epoll_wait_nocancel () from /lib64/libc.so.6
#4 0x0000005555ffafe8 in __epoll_wait_nocancel () from /lib64/libc.so.6
#5 0x0000005555ffafe8 in __epoll_wait_nocancel () from /lib64/libc.so.6
#6 0x0000005555ffafe8 in __epoll_wait_nocancel () from /lib64/libc.so.6
#7 0x0000005555ffafe8 in __epoll_wait_nocancel () from /lib64/libc.so.6
libc 似乎陷入了某种循环。这里的应用程序
rrcprb
有问题吗?你能帮我调试这个问题吗?
由于
__epoll_wait_nocancel
不会调用自身,因此很明显您获得的堆栈跟踪是伪造的。最可能的原因是您的 libc.so.6
中的展开描述符不正确。
您实际上也不太可能坠毁于
epoll_wait
。尝试 thread apply all where
,看看是否有“更有趣”的堆栈跟踪/线程供您查看。