2003-03-03  Ulrich Drepper  <drepper@redhat.com>

	* include/sched.h (__clone2): Use ... instead of adding all the
	new parameters.
This commit is contained in:
Ulrich Drepper 2003-03-03 22:02:13 +00:00
parent be095ffaf4
commit 4f6f0a8fcf
6 changed files with 26 additions and 12 deletions

View File

@ -1,10 +1,14 @@
2003-03-03 Ulrich Drepper <drepper@redhat.com>
* include/sched.h (__clone2): Use ... instead of adding all the
new parameters.
2003-03-03 Roland McGrath <roland@redhat.com>
* elf/dl-load.c (struct filebuf): Fix typo in last change.
* sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
PI_STATIC_AND_HIDDEN.
* sysdeps/powerpc/powerpc32/elf/configure: Regenerated.
2003-03-03 Ian Wienand <ianw@gelato.unsw.edu.au>

View File

@ -15,11 +15,8 @@ extern int __sched_get_priority_min (int __algorithm);
extern int __sched_rr_get_interval (__pid_t __pid, struct timespec *__t);
/* These are Linux specific. */
struct user_desc;
extern int __clone (int (*__fn) (void *__arg), void *__child_stack,
int __flags, void *__arg, ...);
extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base,
size_t __child_stack_size, int __flags, void *__arg,
__pid_t *__child_tid, __pid_t *__parent_tid,
struct user_desc *__tls);
size_t __child_stack_size, int __flags, void *__arg, ...);
#endif

View File

@ -1,3 +1,11 @@
2003-03-03 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/libc_pthread_init.c
(__pthread_child_handler): Renamed from pthread_child_handler,
exported, and marked hidden. Change all users.
* sysdeps/unix/sysv/linux/register-atfork.c (free_mem): Do not
free __pthread_child_handler from child list.
2003-03-03 Martin Schwidefsky <schwidefsky@de.ibm.com>
* atomic.h (atomic_exchange_and_add): Return newval, not oldval.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2002 Free Software Foundation, Inc.
/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
@ -27,7 +27,7 @@
#include <bits/libc-lock.h>
static struct fork_handler pthread_child_handler;
struct fork_handler __pthread_child_handler attribute_hidden;
void
@ -40,10 +40,10 @@ __libc_pthread_init (ptr, reclaim, functions)
__fork_generation_pointer = ptr;
/* Called by a child after fork. */
pthread_child_handler.handler = reclaim;
__pthread_child_handler.handler = reclaim;
/* The fork handler needed by libpthread. */
list_add_tail (&pthread_child_handler.list, &__fork_child_list);
list_add_tail (&__pthread_child_handler.list, &__fork_child_list);
#ifdef SHARED
/* We copy the content of the variable pointed to by the FUNCTIONS

View File

@ -22,6 +22,10 @@
#include "fork.h"
/* Defined in libc_pthread_init.c. */
extern struct fork_handler __pthread_child_handler attribute_hidden;
int
__register_atfork (prepare, parent, child, dso_handle)
void (*prepare) (void);
@ -114,7 +118,9 @@ libc_freeres_fn (free_mem)
{
list_del (runp);
free (list_entry (runp, struct fork_handler, list));
void *p = list_entry (runp, struct fork_handler, list);
if (p != (void *) &__pthread_child_handler)
free (p);
}
/* Release the lock. */

View File

@ -23,8 +23,7 @@
/* int __clone2(int (*fn) (void *arg), void *child_stack_base, */
/* size_t child_stack_size, int flags, void *arg, */
/* pid_t *child_tid, pid_t *parent_tid, */
/* struct user_desc *tls) */
/* pid_t *child_tid, pid_t *parent_tid, void *tls) */
ENTRY(__clone2)
alloc r2=ar.pfs,8,2,6,0