[Glibc-bsd-commits] r4622 - in trunk/glibc-ports/fbtl: . sysdeps/pthread

Petr Salinger ps-guest at alioth.debian.org
Mon Jul 8 12:47:41 UTC 2013


Author: ps-guest
Date: 2013-06-27 15:48:30 +0000 (Thu, 27 Jun 2013)
New Revision: 4622

Modified:
   trunk/glibc-ports/fbtl/allocatestack.c
   trunk/glibc-ports/fbtl/sysdeps/pthread/createthread.c
Log:
use NEED_STACK_SIZE_FOR_PTH_CREATE


Modified: trunk/glibc-ports/fbtl/allocatestack.c
===================================================================
--- trunk/glibc-ports/fbtl/allocatestack.c	2013-06-27 15:47:30 UTC (rev 4621)
+++ trunk/glibc-ports/fbtl/allocatestack.c	2013-06-27 15:48:30 UTC (rev 4622)
@@ -32,7 +32,7 @@
 #include <kernel-features.h>
 
 
-#ifndef NEED_SEPARATE_REGISTER_STACK
+#if !(defined(NEED_SEPARATE_REGISTER_STACK) || defined(NEED_STACK_SIZE_FOR_PTH_CREATE))
 
 /* Most architectures have exactly one stack pointer.  Some have more.  */
 # define STACK_VARIABLES void *stackaddr = NULL
@@ -734,7 +734,7 @@
   stacktop = (char *) (pd - 1);
 #endif
 
-#ifdef NEED_SEPARATE_REGISTER_STACK
+#if defined(NEED_SEPARATE_REGISTER_STACK) || defined(NEED_STACK_SIZE_FOR_PTH_CREATE)
   *stack = pd->stackblock;
   *stacksize = stacktop - *stack;
 #elif _STACK_GROWS_DOWN

Modified: trunk/glibc-ports/fbtl/sysdeps/pthread/createthread.c
===================================================================
--- trunk/glibc-ports/fbtl/sysdeps/pthread/createthread.c	2013-06-27 15:47:30 UTC (rev 4621)
+++ trunk/glibc-ports/fbtl/sysdeps/pthread/createthread.c	2013-06-27 15:48:30 UTC (rev 4622)
@@ -97,8 +97,8 @@
       memset(&p, 0, sizeof(p));
       p.start_func = fct;
       p.arg        = pd;
-      p.stack_base = pd->stackblock;
-      p.stack_size = STACK_VARIABLES_ARGS - pd->stackblock;
+      p.stack_base = stackaddr; /* first  in STACK_VARIABLES_ARGS */
+      p.stack_size = stacksize; /* second in STACK_VARIABLES_ARGS */
       p.tls_base   = (char*)pd;
       p.child_tid  = &(pd->ktid);
    




More information about the Glibc-bsd-commits mailing list