From 06f313e361a523605ba6d4c9cdc67a7353cd367c Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Mon, 9 Jan 2006 21:55:11 +0000 Subject: Updated to fedora-glibc-20060109T2152 --- nptl/ChangeLog | 32 +++++++++++++++++++++- nptl/sysdeps/pthread/aio_misc.h | 5 ++-- nptl/sysdeps/sparc/sparc64/jmpbuf-unwind.h | 3 +- .../unix/sysv/linux/i386/bits/pthreadtypes.h | 2 +- .../unix/sysv/linux/powerpc/bits/pthreadtypes.h | 2 +- .../unix/sysv/linux/s390/bits/pthreadtypes.h | 2 +- .../sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h | 4 +-- .../unix/sysv/linux/sparc/bits/pthreadtypes.h | 4 +-- .../unix/sysv/linux/sparc/sparc64/sysdep-cancel.h | 7 ++++- .../unix/sysv/linux/x86_64/bits/pthreadtypes.h | 2 +- 10 files changed, 50 insertions(+), 13 deletions(-) (limited to 'nptl') diff --git a/nptl/ChangeLog b/nptl/ChangeLog index a3d46cbf60..0c54b30247 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,6 +1,36 @@ +2006-01-09 Roland McGrath + + * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_mutex_t): + Use __extension__ on anonymous union definition. + * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h: Likewise. + +2006-01-09 Jakub Jelinek + + * sysdeps/sparc/sparc64/jmpbuf-unwind.h (_JMPBUF_UNWINDS_ADJ): Add + stack bias to mc_ftp field. + +2006-01-07 Ulrich Drepper + + * sysdeps/pthread/aio_misc.h (AIO_MISC_WAIT): Work around gcc + being too clever and reloading the futex value where it shouldn't. + +2006-01-06 Ulrich Drepper + + * descr.h [!__PTHREAD_MUTEX_HAVE_PREV] (DEQUEUE_MUTEX): Use + correct type. + +2006-01-06 Jakub Jelinek + + * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h (PSEUDO): + Add cfi directives. + 2006-01-06 Ulrich Drepper - * sysdeps/ia64/tls.h (tcbhead_t): Rename private membe to __private. + * sysdeps/ia64/tls.h (tcbhead_t): Rename private member to __private. * sysdeps/ia64/tcb-offsets.sym: Adjust for private->__private rename in tcbhead_t. diff --git a/nptl/sysdeps/pthread/aio_misc.h b/nptl/sysdeps/pthread/aio_misc.h index 5aeb34eb98..f285083883 100644 --- a/nptl/sysdeps/pthread/aio_misc.h +++ b/nptl/sysdeps/pthread/aio_misc.h @@ -35,6 +35,7 @@ #define AIO_MISC_WAIT(result, futex, timeout, cancel) \ do { \ + volatile int *futexaddr = &futex; \ int oldval = futex; \ \ if (oldval != 0) \ @@ -48,11 +49,11 @@ int status; \ do \ { \ - status = lll_futex_timed_wait (&futex, oldval, timeout); \ + status = lll_futex_timed_wait (futexaddr, oldval, timeout); \ if (status != -EWOULDBLOCK) \ break; \ \ - oldval = futex; \ + oldval = *futexaddr; \ } \ while (oldval != 0); \ \ diff --git a/nptl/sysdeps/sparc/sparc64/jmpbuf-unwind.h b/nptl/sysdeps/sparc/sparc64/jmpbuf-unwind.h index 92c296b0cf..efb6918c14 100644 --- a/nptl/sysdeps/sparc/sparc64/jmpbuf-unwind.h +++ b/nptl/sysdeps/sparc/sparc64/jmpbuf-unwind.h @@ -25,7 +25,8 @@ _JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj) #define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \ - ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[0].uc_mcontext.mc_fp - (_adj)) + ((uintptr_t) (_address) - (_adj) \ + < (uintptr_t) (_jmpbuf)[0].uc_mcontext.mc_fp + 2047 - (_adj)) /* We use the normal lobngjmp for unwinding. */ #define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val) diff --git a/nptl/sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h index 2341a9c650..662f3e54a8 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h +++ b/nptl/sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h @@ -56,7 +56,7 @@ typedef union binary compatibility. */ int __kind; unsigned int __nusers; - union + __extension__ union { int __spins; struct __pthread_mutex_s *__next; diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h index 56ffef3d0b..493c2ab557 100644 --- a/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h +++ b/nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h @@ -80,7 +80,7 @@ typedef union # define __PTHREAD_MUTEX_HAVE_PREV 1 #else unsigned int __nusers; - union + __extension__ union { int __spins; struct __pthread_mutex_s *__next; diff --git a/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h index a2ad05dd54..df8beeb685 100644 --- a/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h +++ b/nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h @@ -79,7 +79,7 @@ typedef union # define __PTHREAD_MUTEX_HAVE_PREV 1 #else unsigned int __nusers; - union + __extension__ union { int __spins; struct __pthread_mutex_s *__next; diff --git a/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h index 727ab811c0..211c3fb08e 100644 --- a/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h +++ b/nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 2002. @@ -57,7 +57,7 @@ typedef union __pthread_mutex_u binary compatibility. */ int __kind; unsigned int __nusers; - union + __extension__ union { int __spins; union __pthread_mutex_u *__next; diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h index 0f4691025e..e948ca10a8 100644 --- a/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h +++ b/nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h @@ -1,5 +1,5 @@ /* Machine-specific pthread type layouts. SPARC version. - Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Jakub Jelinek , 2003. @@ -80,7 +80,7 @@ typedef union __pthread_mutex_u # define __PTHREAD_MUTEX_HAVE_PREV 1 #else unsigned int __nusers; - union + __extension__ union { int __spins; union __pthread_mutex_u *__next; diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h b/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h index d8c65aeffd..d69623c145 100644 --- a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h +++ b/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Jakub Jelinek , 2002. @@ -40,7 +40,11 @@ __##syscall_name##_nocancel: \ nop; \ .size __##syscall_name##_nocancel,.-__##syscall_name##_nocancel; \ .subsection 2; \ + cfi_startproc; \ 1: save %sp, -192, %sp; \ + cfi_def_cfa_register (%fp); \ + cfi_window_save; \ + cfi_register (%o7, %i7); \ CENABLE; \ nop; \ mov %o0, %l0; \ @@ -53,6 +57,7 @@ __##syscall_name##_nocancel: \ mov %l0, %o0; \ jmpl %i7 + 8, %g0; \ restore %g0, %l1, %o0; \ + cfi_endproc; \ .previous; \ SYSCALL_ERROR_HANDLER \ SYSCALL_ERROR_HANDLER2 diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h b/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h index ba940b35e0..81942bc86c 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h @@ -79,7 +79,7 @@ typedef union # define __PTHREAD_MUTEX_HAVE_PREV 1 #else unsigned int __nusers; - union + __extension__ union { int __spins; struct __pthread_mutex_s *__next; -- cgit v1.2.3