aboutsummaryrefslogtreecommitdiff
path: root/src/runtime
diff options
context:
space:
mode:
authorCuong Manh Le <cuong.manhle.vn@gmail.com>2025-10-27 16:47:20 +0700
committerGopher Robot <gobot@golang.org>2025-10-27 19:02:06 -0700
commitdec2b4c83dd8b86b56e901f832819e76ff6969df (patch)
treeddd27356b52f917bd8cdb0a76018193d6304653a /src/runtime
parent916e682d5167faad1bb961ec28cac74f05f145f7 (diff)
downloadgo-dec2b4c83dd8b86b56e901f832819e76ff6969df.tar.xz
runtime: avoid bound check in freebsd binuptime
Fixes #76062 Change-Id: I683c1232aaeac12b0b3688472bb277adb95ad542 Reviewed-on: https://go-review.googlesource.com/c/go/+/715180 Reviewed-by: Keith Randall <khr@golang.org> Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Michael Knyszek <mknyszek@google.com> Reviewed-by: Meng Zhuo <mengzhuo1203@gmail.com>
Diffstat (limited to 'src/runtime')
-rw-r--r--src/runtime/vdso_freebsd.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/runtime/vdso_freebsd.go b/src/runtime/vdso_freebsd.go
index feecada035..99ca1571a7 100644
--- a/src/runtime/vdso_freebsd.go
+++ b/src/runtime/vdso_freebsd.go
@@ -54,6 +54,9 @@ func binuptime(abs bool) (bt bintime) {
}
curr := atomic.Load(&timekeepSharedPage.current) // atomic_load_acq_32
+ if curr >= uint32(len(timehands)) {
+ return zeroBintime
+ }
th := &timehands[curr]
gen := atomic.Load(&th.gen) // atomic_load_acq_32
bt = th.offset