]> Cypherpunks repositories - gostls13.git/commit
runtime: pass CLONE_SYSVSEM to clone
authorAustin Clements <austin@google.com>
Wed, 12 Jul 2017 16:12:50 +0000 (10:12 -0600)
committerAustin Clements <austin@google.com>
Wed, 12 Jul 2017 17:42:50 +0000 (17:42 +0000)
commit2673f9ed23348c634f6331ee589d489e4d9c7a9b
treeaa2fc486ac2ecff2d1a66d2caa85b2a9cde95d19
parent0b9e362b475fb6e8f947fda09da866d8ee7adefd
runtime: pass CLONE_SYSVSEM to clone

SysV semaphore undo lists should be shared by threads, just like
several other resources listed in cloneFlags. Currently we don't do
this, but it probably doesn't affect anything because 1) probably
nobody uses SysV semaphores from Go and 2) Go-created threads never
exit until the process does. Beyond being the right thing to do,
user-level QEMU requires this flag because it depends on glibc to
create new threads and glibc uses this flag.

Fixes #20763.

Change-Id: I1d1dafec53ed87e0f4d4d432b945e8e68bb72dcd
Reviewed-on: https://go-review.googlesource.com/48170
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/runtime/os_linux.go