diff options
author | Michael Anthony Knyszek <mknyszek@google.com> | 2021-04-23 22:20:55 +0000 |
---|---|---|
committer | Michael Knyszek <mknyszek@google.com> | 2021-04-26 18:15:31 +0000 |
commit | 14ade57ab8f2a6b9608fc3cab57957f39caead40 (patch) | |
tree | 169e0972a96d7170a45144a879aecfa4b9f19fd4 /src/runtime | |
parent | d02026414cc0b292ee2aef4fbc36f185c56db0c8 (diff) | |
download | go-14ade57ab8f2a6b9608fc3cab57957f39caead40.tar.gz go-14ade57ab8f2a6b9608fc3cab57957f39caead40.zip |
runtime: fix scavenge min fraction constant floor division
Currently there's a minor bug where the constant for the min fraction of
time spent scavenging is rounded down to zero. I don't think this
affects anything in practice because this case is exceedingly rare and
extreme, but currently it doesn't properly prevent the pacing parameters
from getting out of hand in these extreme cases.
Fixes #44036.
Change-Id: I7de644ab0ecac33765c337a736482a0966882780
Reviewed-on: https://go-review.googlesource.com/c/go/+/313249
Reviewed-by: Michael Pratt <mpratt@google.com>
Trust: Michael Knyszek <mknyszek@google.com>
Run-TryBot: Michael Knyszek <mknyszek@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Diffstat (limited to 'src/runtime')
-rw-r--r-- | src/runtime/mgcscavenge.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/mgcscavenge.go b/src/runtime/mgcscavenge.go index 7e32348670..7578129f9d 100644 --- a/src/runtime/mgcscavenge.go +++ b/src/runtime/mgcscavenge.go @@ -372,7 +372,7 @@ func bgscavenge() { // Due to OS-related anomalies we may "sleep" for an inordinate amount // of time. Let's avoid letting the ratio get out of hand by bounding // the sleep time we use in our EWMA. - const minFraction = 1 / 1000 + const minFraction = 1.0 / 1000.0 if fraction < minFraction { fraction = minFraction } |