]> Cypherpunks repositories - gostls13.git/commit
runtime: split gfree list into with-stacks and without-stacks
authorAustin Clements <austin@google.com>
Fri, 11 Mar 2016 21:27:51 +0000 (16:27 -0500)
committerAustin Clements <austin@google.com>
Tue, 26 Apr 2016 23:39:51 +0000 (23:39 +0000)
commit1a2cf91f5e9e3dfb0873e61ed6907cc365857f6c
tree42f46207cd70464d6c16d8c2922216a2725cf63f
parent3b0efa689ec7a32de30cbda2221452f57abb2532
runtime: split gfree list into with-stacks and without-stacks

Currently all free Gs are added to one list. Split this into two
lists: one for free Gs with cached stacks and one for Gs without
cached stacks.

This lets us preferentially allocate Gs that already have a stack, but
more importantly, it sets us up to free cached G stacks concurrently.

Change-Id: Idbe486f708997e1c9d166662995283f02d1eeb3c
Reviewed-on: https://go-review.googlesource.com/20664
Reviewed-by: Rick Hudson <rlh@golang.org>
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
src/runtime/proc.go
src/runtime/runtime2.go