]> Cypherpunks repositories - gostls13.git/commit
[dev.garbage] runtime: concurrent mark fixes
authorRuss Cox <rsc@golang.org>
Tue, 11 Nov 2014 21:54:50 +0000 (16:54 -0500)
committerRuss Cox <rsc@golang.org>
Tue, 11 Nov 2014 21:54:50 +0000 (16:54 -0500)
commit9eded54fa3e7c3d1bc593f83e5c448b908299d0e
tree93ea35fe2741d58c4002b05e08b6f1726d8e0d49
parent37186d91fab5850012b32c21657633d18272537e
[dev.garbage] runtime:  concurrent mark fixes

Add missing write barrier when initializing state
for newly created goroutine. Add write barrier for
same slot when preempting a goroutine.

Disable write barrier during goroutine death,
because dopanic does pointer writes.

With concurrent mark enabled (not in this CL), all.bash passed once.
The second time, TestGoexitCrash-2 failed.

LGTM=rlh
R=rlh
CC=golang-codereviews
https://golang.org/cl/167610043
src/runtime/mgc0.c
src/runtime/mgc0.go
src/runtime/runtime.h
src/runtime/stack.c
src/runtime/sys_x86.c