diff options
| author | Austin Clements <austin@google.com> | 2016-02-25 15:37:40 -0500 |
|---|---|---|
| committer | Austin Clements <austin@google.com> | 2016-03-16 20:13:12 +0000 |
| commit | 3c2a21ff13c53b93db50cfb37b186d6200e2ceec (patch) | |
| tree | 06c5bebcfadafccc6bd7ba3a3ac69c3f1737b4f4 /src/runtime/runtime2.go | |
| parent | 8fb182d0203c90ca04a04d83d37a24960012a3cc (diff) | |
| download | go-3c2a21ff13c53b93db50cfb37b186d6200e2ceec.tar.xz | |
runtime: fix transient _Gwaiting states in newstack
With concurrent stack shrinking, the stack can move the instant after
a G enters _Gwaiting. There are only two places that put a G into
_Gwaiting: gopark and newstack. We fixed uses of gopark. This commit
fixes newstack by simplifying its G transitions and, in particular,
eliminating or narrowing the transient _Gwaiting states it passes
through so it's clear nothing in the G is accessed while in _Gwaiting.
For #12967.
Change-Id: I2440ead411d2bc61beb1e2ab020ebe3cb3481af9
Reviewed-on: https://go-review.googlesource.com/20039
Reviewed-by: Rick Hudson <rlh@golang.org>
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src/runtime/runtime2.go')
0 files changed, 0 insertions, 0 deletions
