]> Cypherpunks repositories - gostls13.git/commit
runtime/trace: fix tracing of blocking system calls
authorShawn Walker-Salas <shawn.walker@oracle.com>
Tue, 18 Aug 2015 21:13:38 +0000 (14:13 -0700)
committerDmitry Vyukov <dvyukov@google.com>
Thu, 17 Sep 2015 09:06:20 +0000 (09:06 +0000)
commit001a75a74c4a27901b0b536efe1be581612c52a9
tree6489942a6a9993c115ed9f30ace6f14ba1a63da0
parent3d1f8c237956ca657b9517040a7431e87f9d8a18
runtime/trace: fix tracing of blocking system calls

The placement and invocation of traceGoSysCall when using
entersyscallblock() instead of entersyscall() differs enough that the
TestTraceSymbolize test can fail on some platforms.

This change moves the invocation of traceGoSysCall for entersyscall() so
that the same number of "frames to skip" are present in the trace as when
entersyscallblock() is used ensuring system call traces remain identical
regardless of internal implementation choices.

Fixes golang/go#12056

Change-Id: I8361e91aa3708f5053f98263dfe9feb8c5d1d969
Reviewed-on: https://go-review.googlesource.com/13861
Run-TryBot: Dmitry Vyukov <dvyukov@google.com>
Reviewed-by: Dmitry Vyukov <dvyukov@google.com>
src/runtime/proc1.go
src/runtime/trace.go