Marvee Amasi
DIIDevHeads IoT Integration Server
•Created by Marvee Amasi on 7/8/2024 in #middleware-and-os
Debugging Persistent Segmentation Fault in Multi-threaded C++ Program on AMD Barcelona CPUs
The crash happens in the middle of the instruction at
0x17bd9fc
, which is after a call to a virtual function through a pointer at offset 0x70
from memory pointed to by %eax
.
Examining the virtual table shows it's not corrupted, and it points to the expected function Foo::Get()
.
Foo::Get()
itself seems to be simple and well-behaved (will be shown in disassembly below).
The return address on the stack ($rsp-8) points to the correct instruction after the call to Foo::Get().9 replies