Comment 0 for bug 1850258

Revision history for this message
Pauli (paniemin) wrote :

I noticed random looking SIGSEGV to application when trying to continue execution after first breakpoint. I now seem to have narrowed the issue to SIMD instruction with memory operand as first breakpoint location. I haven't managed to figure out why the SIGSEGV is delivered to the debugger application.

It is important have first breakpoint exactly at a problematic instructions. If I first break on a different instruction then later breakpoints won't reproduce that crash

I haven't tested if this is a hardware specific issue.

I managed to write a simple test case which reproduces the crash if breakpoint is set. I attached the test.cc which includes compilation and testing instructions. test.cc is supposed to generate a simple main function like:

Dump of assembler code for function main():
=> 0x0000555555554520 <+0>: vmovdqa 0x1af8(%rip),%xmm0 # 0x555555556020 <foo>
   0x0000555555554528 <+8>: vmovd %xmm0,%eax
   0x000055555555452c <+12>: retq

I set breakpoint with:
b main

Then either continue or stepping causes SIGSEGV to the debugged application.

ProblemType: Bug
DistroRelease: Ubuntu 19.10
Package: gdb 8.3-0ubuntu1
ProcVersionSignature: Ubuntu 5.3.0-19.20-generic 5.3.1
Uname: Linux 5.3.0-19-generic x86_64
NonfreeKernelModules: nvidia_modeset nvidia
ApportVersion: 2.20.11-0ubuntu8
Architecture: amd64
CurrentDesktop: GNOME
Date: Tue Oct 29 09:44:52 2019
InstallationDate: Installed on 2037-12-25 (-6632 days ago)
InstallationMedia: Lubuntu 16.04 LTS "Xenial Xerus" - Release amd64 (20160420.1)
SourcePackage: gdb
UpgradeStatus: Upgraded to eoan on 2019-10-27 (1 days ago)