]> Cypherpunks.ru repositories - gostls13.git/commit
runtime: donate racectx to g0 in ReadMetricsSlow
authorMichael Anthony Knyszek <mknyszek@google.com>
Fri, 3 Nov 2023 17:16:51 +0000 (17:16 +0000)
committerGopher Robot <gobot@golang.org>
Fri, 3 Nov 2023 17:39:26 +0000 (17:39 +0000)
commitab79684cdf07bb77f06c35b563b731e26a8137b5
tree3f1f480dc954f09a1de5eb3c2f1fb83515a8f996
parent6a32ecc0598c7873e979ab0a5bf7fcc965db215b
runtime: donate racectx to g0 in ReadMetricsSlow

ReadMetricsSlow was updated to call the core of readMetrics on the
systemstack to prevent issues with stat skew if the stack gets moved
between readmemstats_m and readMetrics. However, readMetrics calls into
the map implementation, which has race instrumentation. The system stack
typically has no racectx set, resulting in crashes.

Donate racectx to g0 like the tracer does, so that these accesses don't
crash.

For #60607.

Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-race
Change-Id: Ic0251af2d9b60361f071fe97084508223109480c
Reviewed-on: https://go-review.googlesource.com/c/go/+/539695
Reviewed-by: Cherry Mui <cherryyz@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Michael Knyszek <mknyszek@google.com>
src/runtime/export_test.go