]> Cypherpunks repositories - gostls13.git/commit
runtime/cgo: fix deadlock involving signals on darwin
authorDmitriy Vyukov <dvyukov@google.com>
Mon, 25 Feb 2013 21:36:29 +0000 (16:36 -0500)
committerRuss Cox <rsc@golang.org>
Mon, 25 Feb 2013 21:36:29 +0000 (16:36 -0500)
commit4eb7ba743d82029063f993bc8eea8940c3c61ac6
tree1b1aa81ce31bc4956f02b0b062d2c2e09c36cd1c
parent052d845c5c79d716148fe88265bde33b3be9ebd3
runtime/cgo: fix deadlock involving signals on darwin
sigprocmask() is process-wide on darwin, so two concurrent
libcgo_sys_thread_start() can result in all signals permanently
blocked, which in particular blocks handling of nil derefs.
Fixes #4833.

R=golang-dev, dave, rsc
CC=golang-dev
https://golang.org/cl/7324058
src/pkg/runtime/cgo/gcc_darwin_386.c
src/pkg/runtime/cgo/gcc_darwin_amd64.c
src/pkg/runtime/crash_test.go