]> Cypherpunks repositories - gostls13.git/commit
runtime: randomize scheduling in -race mode
authorRuss Cox <rsc@golang.org>
Wed, 1 Jul 2015 18:12:31 +0000 (14:12 -0400)
committerRuss Cox <rsc@golang.org>
Tue, 7 Jul 2015 21:27:38 +0000 (21:27 +0000)
commit202807789946a8f3f415bf00007ee100cf3ec710
treef7de34500b0d3fb271e1794eeeb5423495f10d2a
parent0409158cd04fea7ea2ec4ee8b5206a3016319c14
runtime: randomize scheduling in -race mode

Basic randomization of goroutine scheduling for -race mode.
It is probably possible to do much better (there's a paper linked
in the issue that I haven't read, for example), but this suffices
to introduce at least some unpredictability into the scheduling order.
The goal here is to have _something_ for Go 1.5, so that we don't
start hitting more of these scheduling order-dependent bugs
if we change the scheduler order again in Go 1.6.

For #11372.

Change-Id: Idf1154123fbd5b7a1ee4d339e93f97635cc2bacb
Reviewed-on: https://go-review.googlesource.com/11795
Reviewed-by: Austin Clements <austin@google.com>
src/runtime/proc1.go
src/runtime/race/sched_test.go [new file with mode: 0644]