]> Cypherpunks repositories - gostls13.git/commit
runtime: use sched_yield instead of pthread_yield
authorDavid Crawshaw <crawshaw@golang.org>
Fri, 23 Sep 2016 04:02:38 +0000 (00:02 -0400)
committerDavid Crawshaw <crawshaw@golang.org>
Fri, 23 Sep 2016 04:32:38 +0000 (04:32 +0000)
commited915ad421e61c3158ccae4bfbbcfbc796514ee2
tree5ae68bc7e24c308a8d12238dabcb64d65e033aa2
parentb444d438c061fa934130fed17d34c23e77174851
runtime: use sched_yield instead of pthread_yield

Attempt to fix the linux-amd64-clang builder, which broke
with CL 29472.

Turns out pthread_yield is a non-portable Linux function, and
should have #define _GNU_SOURCE before #include <pthread.h>.
GCC doesn't complain about this, but Clang does:

./raceprof.go:44:3: warning: implicit declaration of function 'pthread_yield' is invalid in C99 [-Wimplicit-function-declaration]

(Though the error, while explicable, certainly could be clearer.)

There is a portable POSIX equivalent, sched_yield, so this
CL uses it instead.

Change-Id: I58ca7a3f73a2b3697712fdb02e72a8027c391169
Reviewed-on: https://go-review.googlesource.com/29675
Run-TryBot: David Crawshaw <crawshaw@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/runtime/testdata/testprogcgo/raceprof.go