[00/11] nptl: Move semaphore functions into libc

Message ID cover.1620049437.git.fweimer@redhat.com
Headers
Series nptl: Move semaphore functions into libc |

Message

Florian Weimer May 3, 2021, 1:51 p.m. UTC
  Moving sem_open/sem_close/sem_unlink is a bit tricky because Hurd is
different.  I had to consolidate some NTPL async cancel helpers to
simplify the move of the implementations.  Otherwise it is pretty
standard stuff.

Thanks,
Florian

Florian Weimer (11):
  nptl: Move pthread_testcancel into libc
  nptl: Consolidate aysnc cancel enable/disable implementation in libc
  nptl: Move sem_clockwait into libc
  nptl: Move sem_close, sem_open into libc
  nptl: Move sem_destroy into libc
  nptl: Move sem_getvalue into libc
  nptl: Move sem_init into libc
  nptl: Move sem_post into libc
  nptl: Move sem_timedwait into libc
  nptl: Move sem_unlink into libc
  nptl: Move sem_trywait, sem_wait into libc

 elf/Makefile                                  |  6 +-
 include/shm-directory.h                       |  1 +
 include/stdlib.h                              |  1 +
 manual/llio.texi                              |  4 +-
 misc/mktemp.c                                 |  1 +
 nptl/Makefile                                 | 28 +++++-----
 nptl/Versions                                 | 55 +++++++++++++------
 nptl/cancellation.c                           |  4 +-
 nptl/libc-cancellation.c                      | 24 --------
 nptl/libpthread-compat.c                      |  9 +++
 nptl/pthreadP.h                               |  4 +-
 nptl/pthread_create.c                         |  4 +-
 nptl/pthread_testcancel.c                     | 14 +++--
 nptl/sem_clockwait.c                          | 15 +++--
 nptl/sem_destroy.c                            |  7 ++-
 nptl/sem_getvalue.c                           |  9 ++-
 nptl/sem_init.c                               |  8 ++-
 nptl/sem_post.c                               |  7 ++-
 nptl/sem_timedwait.c                          | 18 ++++--
 nptl/sem_wait.c                               | 17 ++++--
 nptl/semaphoreP.h                             |  4 +-
 posix/shm-directory.c                         |  1 +
 rt/Makefile                                   |  1 -
 sysdeps/nptl/Makefile                         |  3 +-
 sysdeps/nptl/librt-cancellation.c             | 24 --------
 sysdeps/nptl/lowlevellock-futex.h             |  8 +--
 sysdeps/pthread/sem_close.c                   | 10 +++-
 sysdeps/pthread/sem_open.c                    | 40 +++++++++-----
 sysdeps/pthread/sem_routines.c                | 10 ++--
 sysdeps/pthread/sem_unlink.c                  | 17 +++++-
 sysdeps/unix/sysv/linux/aarch64/libc.abilist  | 24 ++++++++
 .../sysv/linux/aarch64/libpthread.abilist     | 13 +----
 sysdeps/unix/sysv/linux/alpha/libc.abilist    | 30 ++++++++++
 .../unix/sysv/linux/alpha/libpthread.abilist  | 20 +------
 sysdeps/unix/sysv/linux/arc/libc.abilist      | 24 ++++++++
 .../unix/sysv/linux/arc/libpthread.abilist    | 12 ----
 sysdeps/unix/sysv/linux/arm/be/libc.abilist   | 24 ++++++++
 .../unix/sysv/linux/arm/be/libpthread.abilist | 13 +----
 sysdeps/unix/sysv/linux/arm/le/libc.abilist   | 24 ++++++++
 .../unix/sysv/linux/arm/le/libpthread.abilist | 13 +----
 sysdeps/unix/sysv/linux/csky/libc.abilist     | 24 ++++++++
 .../unix/sysv/linux/csky/libpthread.abilist   | 13 +----
 sysdeps/unix/sysv/linux/hppa/libc.abilist     | 24 ++++++++
 .../unix/sysv/linux/hppa/libpthread.abilist   | 13 +----
 sysdeps/unix/sysv/linux/i386/libc.abilist     | 30 ++++++++++
 .../unix/sysv/linux/i386/libpthread.abilist   | 20 +------
 sysdeps/unix/sysv/linux/ia64/libc.abilist     | 24 ++++++++
 .../unix/sysv/linux/ia64/libpthread.abilist   | 13 +----
 .../sysv/linux/m68k/coldfire/libc.abilist     | 24 ++++++++
 .../linux/m68k/coldfire/libpthread.abilist    | 13 +----
 .../unix/sysv/linux/m68k/m680x0/libc.abilist  | 30 ++++++++++
 .../sysv/linux/m68k/m680x0/libpthread.abilist | 20 +------
 .../sysv/linux/microblaze/be/libc.abilist     | 24 ++++++++
 .../linux/microblaze/be/libpthread.abilist    | 13 +----
 .../sysv/linux/microblaze/le/libc.abilist     | 24 ++++++++
 .../linux/microblaze/le/libpthread.abilist    | 13 +----
 .../sysv/linux/mips/mips32/fpu/libc.abilist   | 30 ++++++++++
 .../sysv/linux/mips/mips32/libpthread.abilist | 19 +------
 .../sysv/linux/mips/mips32/nofpu/libc.abilist | 30 ++++++++++
 .../sysv/linux/mips/mips64/libpthread.abilist | 19 +------
 .../sysv/linux/mips/mips64/n32/libc.abilist   | 30 ++++++++++
 .../sysv/linux/mips/mips64/n64/libc.abilist   | 30 ++++++++++
 sysdeps/unix/sysv/linux/nios2/libc.abilist    | 24 ++++++++
 .../unix/sysv/linux/nios2/libpthread.abilist  | 13 +----
 .../linux/powerpc/powerpc32/fpu/libc.abilist  | 30 ++++++++++
 .../powerpc/powerpc32/libpthread.abilist      | 20 +------
 .../powerpc/powerpc32/nofpu/libc.abilist      | 30 ++++++++++
 .../linux/powerpc/powerpc64/be/libc.abilist   | 24 ++++++++
 .../powerpc/powerpc64/be/libpthread.abilist   | 13 +----
 .../linux/powerpc/powerpc64/le/libc.abilist   | 24 ++++++++
 .../powerpc/powerpc64/le/libpthread.abilist   | 13 +----
 .../unix/sysv/linux/riscv/rv32/libc.abilist   | 24 ++++++++
 .../sysv/linux/riscv/rv32/libpthread.abilist  | 12 ----
 .../unix/sysv/linux/riscv/rv64/libc.abilist   | 24 ++++++++
 .../sysv/linux/riscv/rv64/libpthread.abilist  | 13 +----
 .../unix/sysv/linux/s390/s390-32/libc.abilist | 30 ++++++++++
 .../linux/s390/s390-32/libpthread.abilist     | 20 +------
 .../unix/sysv/linux/s390/s390-64/libc.abilist | 24 ++++++++
 .../linux/s390/s390-64/libpthread.abilist     | 13 +----
 sysdeps/unix/sysv/linux/sh/be/libc.abilist    | 24 ++++++++
 .../unix/sysv/linux/sh/be/libpthread.abilist  | 13 +----
 sysdeps/unix/sysv/linux/sh/le/libc.abilist    | 24 ++++++++
 .../unix/sysv/linux/sh/le/libpthread.abilist  | 13 +----
 sysdeps/unix/sysv/linux/socketcall.h          |  5 --
 .../sysv/linux/sparc/sparc32/libc.abilist     | 30 ++++++++++
 .../linux/sparc/sparc32/libpthread.abilist    | 20 +------
 .../sysv/linux/sparc/sparc64/libc.abilist     | 24 ++++++++
 .../linux/sparc/sparc64/libpthread.abilist    | 13 +----
 sysdeps/unix/sysv/linux/sysdep-cancel.h       | 44 +++------------
 .../unix/sysv/linux/x86_64/64/libc.abilist    | 24 ++++++++
 .../sysv/linux/x86_64/64/libpthread.abilist   | 13 +----
 .../unix/sysv/linux/x86_64/x32/libc.abilist   | 24 ++++++++
 .../sysv/linux/x86_64/x32/libpthread.abilist  | 13 +----
 93 files changed, 1079 insertions(+), 587 deletions(-)
 delete mode 100644 nptl/libc-cancellation.c
 delete mode 100644 sysdeps/nptl/librt-cancellation.c