aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCherry Mui <cherryyz@google.com>2025-06-22 15:01:27 -0400
committerCherry Mui <cherryyz@google.com>2025-06-23 12:03:10 -0700
commit456a90aa1618a6c3aa49ecba46969128e2bfa26f (patch)
tree552705e76075f385d900a6291413d04090ea966e
parent1cf6386b5ee1ba7d367b6456c2c6888ab68c3ec8 (diff)
downloadgo-456a90aa1618a6c3aa49ecba46969128e2bfa26f.tar.xz
runtime: add missing unlock in sysReserveAlignedSbrk
sysReserveAlignedSbrk locks memlock at entry, but it is not unlocked at one of the return path. Add the missing unlock. Fixes #74339. Change-Id: Ib641bc348aca41494ec410e2c4eb9857f3362484 Reviewed-on: https://go-review.googlesource.com/c/go/+/683295 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Michael Knyszek <mknyszek@google.com>
-rw-r--r--src/runtime/mem_sbrk.go1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/runtime/mem_sbrk.go b/src/runtime/mem_sbrk.go
index 9d6842ae52..05f0fdb5d7 100644
--- a/src/runtime/mem_sbrk.go
+++ b/src/runtime/mem_sbrk.go
@@ -231,6 +231,7 @@ func sysReserveAlignedSbrk(size, align uintptr) (unsafe.Pointer, uintptr) {
memFree(unsafe.Pointer(end), endLen)
}
memCheck()
+ unlock(&memlock)
return unsafe.Pointer(pAligned), size
}