]> Cypherpunks repositories - gostls13.git/commit
runtime: account for guard zone in Windows stack size
authorAustin Clements <austin@google.com>
Fri, 6 Jul 2018 13:55:33 +0000 (09:55 -0400)
committerAustin Clements <austin@google.com>
Sat, 7 Jul 2018 14:44:09 +0000 (14:44 +0000)
commitd6b56bb301470c62634d1747cc155489c4e0f18a
treec0b61a4568c22caef7065ea560745b51fdd5496e
parent7001ac53946bb05c88a0e7d7c3c64dfb1cca1fca
runtime: account for guard zone in Windows stack size

Windows includes an 8K guard in system-allocated thread stacks, which
we currently don't account for when setting the g0 stack bounds. As a
result, if we do overflow the g0 stack bounds, we'll get a
STATUS_GUARD_PAGE_VIOLATION exception, which we're not expecting.

Fix the g0 stack bounds to include a total of 16K of slop to account
for this 8K guard.

Updates #21382.

Change-Id: Ia89b741b1413328e4681a237f5a7ee645531fe16
Reviewed-on: https://go-review.googlesource.com/122516
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
src/runtime/os_windows.go