diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | cont.c | 3 |
2 files changed, 9 insertions, 1 deletions
@@ -1,3 +1,10 @@ +Tue Aug 30 09:48:07 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> + + * cont.c (fiber_entry): fix stack allocation failure on Debian + GNU/kFreeBSD. + Patch by Lucas Nussbaum <lucas at lucas-nussbaum dot net>. + [Bug #5241] [ruby-core:39147] + Tue Aug 30 09:28:01 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> * thread.c (rb_thread_select): rewrite by using @@ -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) |