runtime: bad crash output for synchronous signal in the VDSO #49156
Labels
compiler/runtime
Issues related to the Go compiler and/or runtime.
NeedsFix
The path to resolution is known, but the work has not been done.
Milestone
If a synchronous signal causes a crash in the VDSO, the output looks something like:
I manually triggered this crash by changing the runtime to pass a bad
struct timespec *
toclock_gettime
in the VDSO.Rather than the normal unexpected signal panic one would expect,
gentraceback
fails and throws. Luckily0x7ffd19ea9a4a
is the PC of the faulting instruction, which would help in an investigation, though it is not obvious from this output that that is the correct PC.Synchronous signals panic by pushing
sigpanic0
onto the stack andsigreturn
ing to it. My quick investigation shows that gentraceback is computing the incorrect frame pointer, but I don't yet see why. I thought perhaps makingpreparePanic
pushvdsoSP
instead of the actual SP might fix it, but it made no difference.In practice, a synchronous signal in the VDSO would probably only occur due to a bug in the Go runtime, so this isn't high priority.
cc @cherrymui
The text was updated successfully, but these errors were encountered: