]> Cypherpunks repositories - gostls13.git/commit
runtime: eliminate false retention due to m->moreargp/morebuf
authorDmitriy Vyukov <dvyukov@google.com>
Wed, 26 Mar 2014 15:06:15 +0000 (19:06 +0400)
committerDmitriy Vyukov <dvyukov@google.com>
Wed, 26 Mar 2014 15:06:15 +0000 (19:06 +0400)
commit7c75a862b4df306a2573d1aa966d68803bc8b4e7
tree0fddeb2c3e9fcbfbcbfd21e190abfd22ce860f4a
parentd89a73837878fa16697e98ff1adf249eef5eaa05
runtime: eliminate false retention due to m->moreargp/morebuf
m->moreargp/morebuf were not cleared in case of preemption and stack growing,
it can lead to persistent leaks of large memory blocks.

It seems to fix the sync.Pool finalizer failures. I've run the test 500'000 times
w/o a single failure; previously it would fail dozens of times.

Fixes #7633.
Fixes #7533.

LGTM=rsc
R=golang-codereviews
CC=golang-codereviews, khr, rsc
https://golang.org/cl/80480044
src/pkg/runtime/stack.c