进程被信号 6 终止,核心显示 libc 中的某种循环[已关闭]

问题描述 投票:0回答:1

在分析进程的核心(由信号 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
有问题吗?你能帮我调试这个问题吗?

linux gdb glibc coredump sigabrt
1个回答
2
投票

由于

__epoll_wait_nocancel
不会调用自身,因此很明显您获得的堆栈跟踪是伪造的。最可能的原因是您的
libc.so.6
中的展开描述符不正确。

您实际上也不太可能坠毁于

epoll_wait
。尝试
thread apply all where
,看看是否有“更有趣”的堆栈跟踪/线程供您查看。

© www.soinside.com 2019 - 2024. All rights reserved.