当回溯以零开始时,如何调试崩溃
How to debug crash, when backtrace starts with zero
我的长期运行的应用程序由于分段错误而随机崩溃。当尝试调试生成的coredump时,我遇到了wierd-stacktrace:
(gdb) bt full
#0 __memmove_ssse3 () at ../sysdeps/i386/i686/multiarch/memcpy-ssse3.S:2582
No locals.
#1 0x00000000 in ?? ()
No symbol table info available.
回溯从0x00000000开始是怎么回事
我可以做些什么来进一步调试此问题?我无法在gdb中运行它,因为它可能需要一周的时间才能崩溃。
通常,这意味着堆栈上的返回地址已被0覆盖,可能是由于溢出了堆栈上数组的末尾。您可以尝试在gcc或clang上使用地址消毒剂进行构建(如果您正在使用它们(。或者,您可以尝试运行valgrind,看看它是否会告诉您无效的内存写入。
相关文章:
- 当回溯以零开始时,如何调试崩溃
- 使用调试/崩溃报告将应用程序部署到客户端
- 调试编译的服务器在数据库打开时崩溃
- Popen使Qt调试器崩溃
- 在Windows上调试linux崩溃转储
- 安卓游戏调试正常,但从Play商店下载时崩溃
- 使用向量的函数崩溃,调试器说访问冲突读取位置
- 在C++中调用 free() 会触发 ntdll!DbgBreakPoint() 在调试中,但在发布中崩溃
- Mongodb Cxx 驱动程序测试在发布版本中崩溃 [ 在调试中工作正常]
- gdborig.exe 在调试 QT 5.8 并在窗口中打开 QFileDialog 时随机崩溃
- QSerialPortInfo调试崩溃Visual Studio 2015 + QT5.8
- 在发布模式下崩溃,但如果可调试为 true - 不是..什么是可能的问题
- 如何在启动过程中崩溃时使用 gdb 调试可执行文件
- Qt 网络引擎调试版本崩溃
- 如何在win10上调试崩溃
- MSVC 编译器在调试模式下构建 Qt 5.10 时崩溃
- 如何调试 gRPC 服务器崩溃而没有任何错误
- QT项目在配置文件上崩溃,与发布和调试器一起运行
- 在小对象优化中调试崩溃以进行类型擦除
- 生产环境中的调试崩溃