From a80eb26a188db79decadb82a459754c344dcf5a5 Mon Sep 17 00:00:00 2001 From: nobu Date: Mon, 23 Nov 2009 07:06:54 +0000 Subject: * thread_pthread.c (RUBY_STACK_MIN, RUBY_STACK_SPACE): delay for platforms where PTHREAD_STACK_MIN is not compile time constant. [ruby-dev:39751] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ thread_pthread.c | 16 +++++++++------- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index ee58a2dea5..de1c8443df 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Nov 23 16:06:53 2009 Nobuyoshi Nakada + + * thread_pthread.c (RUBY_STACK_MIN, RUBY_STACK_SPACE): delay for + platforms where PTHREAD_STACK_MIN is not compile time constant. + [ruby-dev:39751] + Mon Nov 23 11:26:45 2009 Nobuyoshi Nakada * dln.c (dln_find_1): removed duplication. diff --git a/thread_pthread.c b/thread_pthread.c index c8ee4e1272..0d37a12130 100644 --- a/thread_pthread.c +++ b/thread_pthread.c @@ -463,15 +463,17 @@ enum { #else RUBY_STACK_MIN_LIMIT = 512 * 1024, /* 512KB */ #endif - RUBY_STACK_MIN = ( + RUBY_STACK_SPACE_LIMIT = 1024 * 1024 +}; + #ifdef PTHREAD_STACK_MIN - (RUBY_STACK_MIN_LIMIT < PTHREAD_STACK_MIN) ? PTHREAD_STACK_MIN * 2 : +#define RUBY_STACK_MIN ((RUBY_STACK_MIN_LIMIT < PTHREAD_STACK_MIN) ? \ + PTHREAD_STACK_MIN * 2 : RUBY_STACK_MIN_LIMIT) +#else +#define RUBY_STACK_MIN (RUBY_STACK_MIN_LIMIT) #endif - RUBY_STACK_MIN_LIMIT), - RUBY_STACK_SPACE_LIMIT = 1024 * 1024, - RUBY_STACK_SPACE = (RUBY_STACK_MIN/5 > RUBY_STACK_SPACE_LIMIT ? - RUBY_STACK_SPACE_LIMIT : RUBY_STACK_MIN/5) -}; +#define RUBY_STACK_SPACE (RUBY_STACK_MIN/5 > RUBY_STACK_SPACE_LIMIT ? \ + RUBY_STACK_SPACE_LIMIT : RUBY_STACK_MIN/5) static int native_thread_create(rb_thread_t *th) -- cgit v1.2.3