diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | thread_pthread.c | 4 |
2 files changed, 9 insertions, 2 deletions
@@ -1,3 +1,10 @@ +Tue Jan 21 16:26:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * thread_pthread.c (rb_thread_create_timer_thread): expand timer + thread stack size to get rid of segfault on FreeBSD/powerpc64. + based on the patch by Steve Wills at [ruby-core:59923]. + [ruby-core:56590] [Bug #8783] + Tue Jan 21 04:31:23 2014 Tanaka Akira <akr@fsij.org> * ext/socket/option.c: Use "int" for IP_MULTICAST_LOOP and diff --git a/thread_pthread.c b/thread_pthread.c index 76f033771c..36fa73cd94 100644 --- a/thread_pthread.c +++ b/thread_pthread.c @@ -1480,9 +1480,9 @@ rb_thread_create_timer_thread(void) } # ifdef PTHREAD_STACK_MIN { -# define TIMER_THREAD_STACK_MIN_SIZE (4096 * 3) +# define TIMER_THREAD_STACK_MIN_SIZE (4096 * 4) /* Allocate the machine stack for the timer thread - * at least 12KB (3 pages). FreeBSD 8.2 AMD64 causes + * at least 16KB (4 pages). FreeBSD 8.2 AMD64 causes * machine stack overflow only with PTHREAD_STACK_MIN. */ # if TIMER_THREAD_STACK_MIN_SIZE < PTHREAD_STACK_MIN |