mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
runtime: fix preemption sensitivity in TestTinyAllocIssue37262
TestTinyAllocIssue37262 assumes that all of its allocations will come from the same tiny allocator (that is, the same P), and that nothing else will allocate from that tiny allocator while it's running. It can fail incorrectly if these assumptions aren't met. Fix this potential test flakiness by disabling preemption during this test. As far as I know, this has never happened on the builders. It was found by mayMoreStackPreempt. Change-Id: I59f993e0bdbf46a9add842d0e278415422c3f804 Reviewed-on: https://go-review.googlesource.com/c/go/+/366994 Trust: Austin Clements <austin@google.com> Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Michael Knyszek <mknyszek@google.com>
This commit is contained in:
parent
61ff501968
commit
f598e2962d
2 changed files with 16 additions and 0 deletions
|
|
@ -1307,3 +1307,12 @@ func escape(x interface{}) interface{} {
|
|||
escapeSink = nil
|
||||
return x
|
||||
}
|
||||
|
||||
// Acquirem blocks preemption.
|
||||
func Acquirem() {
|
||||
acquirem()
|
||||
}
|
||||
|
||||
func Releasem() {
|
||||
releasem(getg().m)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue