diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2014-12-12 18:41:57 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2015-01-28 16:35:24 +0000 |
| commit | 5288fadbdc1b81993c51d5044035144fccebd75e (patch) | |
| tree | fedd0e3654cabcbb0a1a82efd21690da3c210419 /src/runtime/malloc.go | |
| parent | f30a2b9ca7ccfd325a5ebcc8eb57e39d8e9c7af3 (diff) | |
| download | go-5288fadbdc1b81993c51d5044035144fccebd75e.tar.xz | |
runtime: add tracing of runtime events
Add actual tracing of interesting runtime events.
Part of a larger tracing functionality:
https://docs.google.com/document/u/1/d/1FP5apqzBgr7ahCCgFO-yoVhk4YZrNIDNf9RybngBc14/pub
Full change:
https://codereview.appspot.com/146920043
Change-Id: Icccf54aea54e09350bb698ba6bf11532f9fbe6d3
Reviewed-on: https://go-review.googlesource.com/1451
Reviewed-by: Russ Cox <rsc@golang.org>
Diffstat (limited to 'src/runtime/malloc.go')
| -rw-r--r-- | src/runtime/malloc.go | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/runtime/malloc.go b/src/runtime/malloc.go index 69eb090706..f827b9c418 100644 --- a/src/runtime/malloc.go +++ b/src/runtime/malloc.go @@ -368,6 +368,12 @@ func gcwork(force int32) { if force == 0 { gctimer.cycle.sweepterm = nanotime() } + + if trace.enabled { + traceGoSched() + traceGCStart() + } + // Pick up the remaining unswept/not being swept spans before we STW for gosweepone() != ^uintptr(0) { sweep.nbgsweep++ @@ -423,6 +429,11 @@ func gcwork(force int32) { gccheckmark_m(startTime, eagersweep) }) + if trace.enabled { + traceGCDone() + traceGoStart() + } + // all done mp.gcing = 0 |
