aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/runtime2.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/runtime2.go')
-rw-r--r--src/runtime/runtime2.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/runtime/runtime2.go b/src/runtime/runtime2.go
index e706cf7354..884d6cc096 100644
--- a/src/runtime/runtime2.go
+++ b/src/runtime/runtime2.go
@@ -777,9 +777,10 @@ type schedt struct {
ngsys atomic.Int32 // number of system goroutines
- pidle puintptr // idle p's
- npidle atomic.Int32
- nmspinning atomic.Int32 // See "Worker thread parking/unparking" comment in proc.go.
+ pidle puintptr // idle p's
+ npidle atomic.Int32
+ nmspinning atomic.Int32 // See "Worker thread parking/unparking" comment in proc.go.
+ needspinning atomic.Uint32 // See "Delicate dance" comment in proc.go. Boolean. Must hold sched.lock to set to 1.
// Global runnable queue.
runq gQueue
@@ -840,6 +841,8 @@ type schedt struct {
// with the rest of the runtime.
sysmonlock mutex
+ _ uint32 // ensure timeToRun has 8-byte alignment
+
// timeToRun is a distribution of scheduling latencies, defined
// as the sum of time a G spends in the _Grunnable state before
// it transitions to _Grunning.