]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1.8] runtime: avoid O(n) semaphore list walk in contention profiling
authorRuss Cox <rsc@golang.org>
Thu, 23 Feb 2017 20:13:25 +0000 (15:13 -0500)
committerRuss Cox <rsc@golang.org>
Mon, 27 Feb 2017 17:34:28 +0000 (17:34 +0000)
commitbae53daa72bf2734acbb648b783752fbd00e357c
treef2de542f31b215a425b8f6c83becb8aafa942b08
parentd4ee1f4a40cecf7511c45c89527f748950f68998
[release-branch.go1.8] runtime: avoid O(n) semaphore list walk in contention profiling

Contention profiling is off by default.
If you turn it on, it has the unfortunate effect of making
the wakeup on a contention mutex go from O(1) to O(n).
Change it back to O(1).

This is already fixed in essentially the same way on master;
master also contains some fixes for the non-profiling code
paths.

Possible for Go 1.8.1.

Change-Id: Iaa644c06e20ca28da4dfa348b7211eedb657e0ba
Reviewed-on: https://go-review.googlesource.com/37341
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/runtime/sema.go