From ae9e6b36d2e03cea249de3a6c592bbab1be01174 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Thu, 16 Sep 2004 23:23:25 +0000 Subject: * configure.in (--with-headers): Let argument contain a : separated list of directories to use, not just one. * configure: Regenerated. --- nptl/ChangeLog | 7 +++++++ nptl/allocatestack.c | 17 ++--------------- nptl/pthread_create.c | 2 -- 3 files changed, 9 insertions(+), 17 deletions(-) (limited to 'nptl') diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 85ff61f..6cd9b0d 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,10 @@ +2004-09-10 Roland McGrath + + [BZ #379] + * allocatestack.c (allocate_stack): Remove [__ASSUME_CLONE_STOPPED] + code, since we don't try to use the broken CLONE_STOPPED any more. + * pthread_create.c (start_thread): Likewise. + 2004-09-15 Richard Henderson * sysdeps/unix/sysv/linux/alpha/vfork.S: Use libc_hidden_def. diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c index 59f00d9..6dd2621 100644 --- a/nptl/allocatestack.c +++ b/nptl/allocatestack.c @@ -342,11 +342,6 @@ allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, /* The first TSD block is included in the TCB. */ pd->specific[0] = pd->specific_1stblock; -#if defined __ASSUME_CLONE_STOPPED && LLL_LOCK_INITIALIZER != 0 - /* Initialize the lock. */ - pd->lock = LLL_LOCK_INITIALIZER; -#endif - /* Remember the stack-related values. */ pd->stackblock = (char *) attr->stackaddr - size; pd->stackblock_size = size; @@ -485,11 +480,6 @@ allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, descriptor. */ pd->specific[0] = pd->specific_1stblock; -#if defined __ASSUME_CLONE_STOPPED && LLL_LOCK_INITIALIZER != 0 - /* Initialize the lock. */ - pd->lock = LLL_LOCK_INITIALIZER; -#endif - /* This is at least the second thread. */ pd->header.multiple_threads = 1; #ifndef TLS_MULTIPLE_THREADS_IN_TCB @@ -623,12 +613,9 @@ allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, pd->reported_guardsize = guardsize; } -#ifndef __ASSUME_CLONE_STOPPED - /* Initialize the lock. We have to do this unconditionally if the - CLONE_STOPPED flag is not available since then the stillborn - thread could be canceled while the lock is taken. */ + /* Initialize the lock. We have to do this unconditionally since the + stillborn thread could be canceled while the lock is taken. */ pd->lock = LLL_LOCK_INITIALIZER; -#endif /* We place the thread descriptor at the end of the stack. */ *pdp = pd; diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c index 34edee4..1606568 100644 --- a/nptl/pthread_create.c +++ b/nptl/pthread_create.c @@ -227,12 +227,10 @@ start_thread (void *arg) struct pthread *pd = (struct pthread *) arg; -#ifndef __ASSUME_CLONE_STOPPED /* Get the lock the parent locked to force synchronization. */ lll_lock (pd->lock); /* And give it up right away. */ lll_unlock (pd->lock); -#endif #if HP_TIMING_AVAIL /* Remember the time when the thread was started. */ -- cgit v1.1