diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2016-03-19 03:51:18 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2016-03-19 03:51:18 +0100 |
commit | 9b2a7e6d85b95a0b2b776e36c2dd52db4ccef045 (patch) | |
tree | fbf0daf8cc9f8ac9564f503161274691b044d929 /sysdeps | |
parent | 09ba6794c68c123caa9706245882d87febed0aff (diff) | |
parent | 76ae117cd745eb783d2f680e136c19628fa1187e (diff) |
Merge branch 'master-glibc-2.21' into master-glibc-2.23
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/generic/pt-key-create.c | 3 | ||||
-rw-r--r-- | sysdeps/generic/raise.c | 2 | ||||
-rw-r--r-- | sysdeps/generic/shm-directory.h | 31 | ||||
-rw-r--r-- | sysdeps/hurd/pt-key-create.c | 1 | ||||
-rw-r--r-- | sysdeps/mach/hurd/pt-sigstate.c | 39 |
5 files changed, 56 insertions, 20 deletions
diff --git a/sysdeps/generic/pt-key-create.c b/sysdeps/generic/pt-key-create.c index de05095..33f691b 100644 --- a/sysdeps/generic/pt-key-create.c +++ b/sysdeps/generic/pt-key-create.c @@ -21,9 +21,10 @@ #include <pt-internal.h> int -pthread_key_create (pthread_key_t *key, void (*destructor) (void *)) +__pthread_key_create (pthread_key_t *key, void (*destructor) (void *)) { return ENOSYS; } +strong_alias (__pthread_key_create, pthread_key_create) stub_warning (pthread_key_create) diff --git a/sysdeps/generic/raise.c b/sysdeps/generic/raise.c index 3c497da..f086665 100644 --- a/sysdeps/generic/raise.c +++ b/sysdeps/generic/raise.c @@ -46,3 +46,5 @@ raise (int signo) return __kill (__getpid (), signo); } +libc_hidden_def (raise) +weak_alias (raise, gsignal) diff --git a/sysdeps/generic/shm-directory.h b/sysdeps/generic/shm-directory.h new file mode 100644 index 0000000..8950284 --- /dev/null +++ b/sysdeps/generic/shm-directory.h @@ -0,0 +1,31 @@ +/* Header for directory for shm/sem files. libpthread version. + Copyright (C) 2014-2015 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _SHM_DIRECTORY_H + +#include <sysdeps/posix/shm-directory.h> + +/* For libpthread the __shm_directory function lives in libpthread. + We don't want PLT calls from there. But it's also used from + librt, so it cannot just be declared hidden. */ + +#if IS_IN (libpthread) +hidden_proto (__shm_directory) +#endif + +#endif /* shm-directory.h */ diff --git a/sysdeps/hurd/pt-key-create.c b/sysdeps/hurd/pt-key-create.c index 42c7c85..f26ec36 100644 --- a/sysdeps/hurd/pt-key-create.c +++ b/sysdeps/hurd/pt-key-create.c @@ -108,4 +108,3 @@ __pthread_key_create (pthread_key_t *key, void (*destructor) (void *)) return 0; } strong_alias (__pthread_key_create, pthread_key_create) -hidden_def (__pthread_key_create) diff --git a/sysdeps/mach/hurd/pt-sigstate.c b/sysdeps/mach/hurd/pt-sigstate.c index 2af3e39..74fd72a 100644 --- a/sysdeps/mach/hurd/pt-sigstate.c +++ b/sysdeps/mach/hurd/pt-sigstate.c @@ -43,24 +43,27 @@ __pthread_sigstate (struct __pthread *thread, int how, *oset = ss->blocked; if (set) - switch (how) - { - case SIG_BLOCK: - ss->blocked |= *set; - break; - - case SIG_SETMASK: - ss->blocked = *set; - break; - - case SIG_UNBLOCK: - ss->blocked &= ~*set; - break; - - default: - err = EINVAL; - break; - } + { + switch (how) + { + case SIG_BLOCK: + ss->blocked |= *set; + break; + + case SIG_SETMASK: + ss->blocked = *set; + break; + + case SIG_UNBLOCK: + ss->blocked &= ~*set; + break; + + default: + err = EINVAL; + break; + } + ss->blocked &= ~_SIG_CANT_MASK; + } if (! err && clear_pending) __sigemptyset (&ss->pending); |