mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
Revert "sync: yield to the waiter when unlocking a starving mutex"
This reverts CL 200577. Reason for revert: broke linux-arm64-packet and solaris-amd64-oraclerel builders Fixes #35424 Updates #33747 Change-Id: I2575fd84d37995d458183caae54704f15d8b8426 Reviewed-on: https://go-review.googlesource.com/c/go/+/205817 Run-TryBot: Bryan C. Mills <bcmills@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
e8f01d591f
commit
73d57bf80f
5 changed files with 2 additions and 125 deletions
|
|
@ -2753,22 +2753,7 @@ func preemptPark(gp *g) {
|
|||
casGToPreemptScan(gp, _Grunning, _Gscan|_Gpreempted)
|
||||
dropg()
|
||||
casfrom_Gscanstatus(gp, _Gscan|_Gpreempted, _Gpreempted)
|
||||
schedule()
|
||||
}
|
||||
|
||||
// goyield is like Gosched, but it:
|
||||
// - does not emit a GoSched trace event
|
||||
// - puts the current G on the runq of the current P instead of the globrunq
|
||||
func goyield() {
|
||||
checkTimeouts()
|
||||
mcall(goyield_m)
|
||||
}
|
||||
|
||||
func goyield_m(gp *g) {
|
||||
pp := gp.m.p.ptr()
|
||||
casgstatus(gp, _Grunning, _Grunnable)
|
||||
dropg()
|
||||
runqput(pp, gp, false)
|
||||
schedule()
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue