diff --git a/ChangeLog b/ChangeLog index c5b45722fc..d8d84b7ac9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Tue Aug 30 09:53:59 2011 KOSAKI Motohiro + + * cont.c (fiber_entry): fix stack allocation failure on Debian + GNU/kFreeBSD. + Patch by Lucas Nussbaum . + [Bug #5241] [ruby-core:39147] + Tue Aug 30 09:52:29 2011 KOSAKI Motohiro * backport r33117 from trunk. diff --git a/cont.c b/cont.c index d44afaa447..4f30e50831 100644 --- a/cont.c +++ b/cont.c @@ -520,8 +520,9 @@ fiber_entry(void *arg) /* * FreeBSD require a first (i.e. addr) argument of mmap(2) is not NULL * if MAP_STACK is passed. + * http://www.FreeBSD.org/cgi/query-pr.cgi?pr=158755 */ -#if defined(MAP_STACK) && !defined(__FreeBSD__) +#if defined(MAP_STACK) && !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) #define FIBER_STACK_FLAGS (MAP_PRIVATE | MAP_ANON | MAP_STACK) #else #define FIBER_STACK_FLAGS (MAP_PRIVATE | MAP_ANON)