aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/mgc.go
diff options
context:
space:
mode:
authorMichael Anthony Knyszek <mknyszek@google.com>2021-10-21 21:19:23 +0000
committerMichael Knyszek <mknyszek@google.com>2021-11-05 22:56:55 +0000
commit2f71c86370a2c3bf2827e8d9f9080d9bf92a5317 (patch)
tree89cbac3a1a7fe1e3dcf4f1c996bffa30a36157bd /src/runtime/mgc.go
parente83a2047e0332e45c20fb1bcdb984e9cc74ffb1f (diff)
downloadgo-2f71c86370a2c3bf2827e8d9f9080d9bf92a5317.tar.gz
go-2f71c86370a2c3bf2827e8d9f9080d9bf92a5317.zip
runtime: retype gcControllerState.gcPercent as atomic.Int32
[git-generate] cd src/runtime mv export_test.go export.go GOROOT=$(dirname $(dirname $PWD)) rf ' add gcControllerState.gcPercent \ // Initialized from GOGC. GOGC=off means no GC. \ gcPercent_ atomic.Int32 ex { import "runtime/internal/atomic" var t gcControllerState var v, w int32 var d int32 t.gcPercent -> t.gcPercent_.Load() t.gcPercent = v -> t.gcPercent_.Store(v) atomic.Loadint32(&t.gcPercent) -> t.gcPercent_.Load() atomic.Storeint32(&t.gcPercent, v) -> t.gcPercent_.Store(v) atomic.Xaddint32(&t.gcPercent, d) -> t.gcPercent_.Add(d) atomic.Casint32(&t.gcPercent, v, w) -> t.gcPercent_.CompareAndSwap(v, w) atomic.Xchgint32(&t.gcPercent, v) -> t.gcPercent_.Swap(v) } rm gcControllerState.gcPercent mv gcControllerState.gcPercent_ gcControllerState.gcPercent ' mv export.go export_test.go Change-Id: I1aae34a3f782d096c6b6233bbf7986e67ce9c5f9 Reviewed-on: https://go-review.googlesource.com/c/go/+/357794 Trust: Michael Knyszek <mknyszek@google.com> Reviewed-by: Michael Pratt <mpratt@google.com>
Diffstat (limited to 'src/runtime/mgc.go')
-rw-r--r--src/runtime/mgc.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/mgc.go b/src/runtime/mgc.go
index 96f4157b59..d75893dc43 100644
--- a/src/runtime/mgc.go
+++ b/src/runtime/mgc.go
@@ -545,7 +545,7 @@ func (t gcTrigger) test() bool {
// own write.
return gcController.heapLive >= gcController.trigger
case gcTriggerTime:
- if atomic.Loadint32(&gcController.gcPercent) < 0 {
+ if gcController.gcPercent.Load() < 0 {
return false
}
lastgc := int64(atomic.Load64(&memstats.last_gc_nanotime))