diff options
-rw-r--r-- | nptl/ChangeLog | 5 | ||||
-rw-r--r-- | nptl/sysdeps/i386/pthread_sigmask.c | 6 | ||||
-rw-r--r-- | nptl/sysdeps/x86_64/pthread_sigmask.c | 1 | ||||
-rw-r--r-- | nptl/sysdeps/x86_64/tls.h | 11 |
4 files changed, 11 insertions, 12 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index c8caf217a5..530d6f49eb 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,5 +1,10 @@ 2002-11-27 Ulrich Drepper <drepper@redhat.com> + * sysdeps/x86_64/pthread_sigmask.c: New file. + + * sysdeps/i386/pthread_sigmask.c (pthread_sigmask): Return correct + value in case of an error. + * sysdeps/x86_64/tls.h: New file. 2002-11-26 Ulrich Drepper <drepper@redhat.com> diff --git a/nptl/sysdeps/i386/pthread_sigmask.c b/nptl/sysdeps/i386/pthread_sigmask.c index 2ae9198c02..aa071841db 100644 --- a/nptl/sysdeps/i386/pthread_sigmask.c +++ b/nptl/sysdeps/i386/pthread_sigmask.c @@ -30,5 +30,9 @@ pthread_sigmask (how, newmask, oldmask) const sigset_t *newmask; sigset_t *oldmask; { - return INLINE_SYSCALL (sigprocmask, 3, how, newmask, oldmask); + int result = INTERNAL_SYSCALL (sigprocmask, 3, how, newmask, oldmask); + + return (INTERNAL_SYSCALL_ERROR_P (result) + ? INTERNAL_SYSCALL_ERRNO (result) + : 0); } diff --git a/nptl/sysdeps/x86_64/pthread_sigmask.c b/nptl/sysdeps/x86_64/pthread_sigmask.c new file mode 100644 index 0000000000..802d61f819 --- /dev/null +++ b/nptl/sysdeps/x86_64/pthread_sigmask.c @@ -0,0 +1 @@ +#include "../i386/pthread_sigmask.c" diff --git a/nptl/sysdeps/x86_64/tls.h b/nptl/sysdeps/x86_64/tls.h index 2daf0328d5..8a4b718cf0 100644 --- a/nptl/sysdeps/x86_64/tls.h +++ b/nptl/sysdeps/x86_64/tls.h @@ -119,17 +119,6 @@ union user_desc_init (((tcbhead_t *) (descr))->dtv) -/* Macros to load from and store into segment registers. */ -# ifndef TLS_GET_GS -# define TLS_GET_GS() \ - ({ int __seg; __asm ("movw %%gs, %w0" : "=q" (__seg)); __seg & 0xffff; }) -# endif -# ifndef TLS_SET_GS -# define TLS_SET_GS(val) \ - __asm ("movw %w0, %%gs" :: "q" (val)) -# endif - - # ifndef __NR_set_thread_area # define __NR_set_thread_area 243 # endif |