aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDave Cheney <dave@cheney.net>2015-08-20 13:46:19 +1000
committerDave Cheney <dave@cheney.net>2015-09-13 23:46:55 +0000
commit4f48507d9094431354ab69c450e458674abb0dde (patch)
tree9f39e2b73452e98691903a9c7b8c8bcc557261fe /src
parent0b5bcf53ee4af0e244ba1991069741774bf4f164 (diff)
downloadgo-4f48507d9094431354ab69c450e458674abb0dde.tar.xz
runtime: reduce pthread stack size in TestCgoCallbackGC
Fixes #11959 This test runs 100 concurrent callbacks from C to Go consuming 100 operating system threads, which at 8mb a piece (the default on linux/arm) would reserve over 800mb of address space. This would frequently cause the test to fail on platforms with ~1gb of ram, such as the raspberry pi. This change reduces the thread stack allocation to 256kb, a number picked at random, but at 1/32th the previous size, should allow the test to pass successfully on all platforms. Change-Id: I8b8bbab30ea7b2972b3269a6ff91e6fe5bc717af Reviewed-on: https://go-review.googlesource.com/13731 TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Martin Capitanio <capnm9@gmail.com> Reviewed-by: Minux Ma <minux@golang.org>
Diffstat (limited to 'src')
-rw-r--r--src/runtime/crash_cgo_test.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/runtime/crash_cgo_test.go b/src/runtime/crash_cgo_test.go
index 2e65e4c754..8e23006414 100644
--- a/src/runtime/crash_cgo_test.go
+++ b/src/runtime/crash_cgo_test.go
@@ -222,7 +222,10 @@ static void *thr(void *arg) {
static void foo() {
pthread_t th;
- pthread_create(&th, 0, thr, 0);
+ pthread_attr_t attr;
+ pthread_attr_init(&attr);
+ pthread_attr_setstacksize(&attr, 256 << 10);
+ pthread_create(&th, &attr, thr, 0);
pthread_join(th, 0);
}
*/