summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/s390
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2019-12-16 21:19:30 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2019-12-16 21:19:30 +0100
commit10f1958417a4944a60a08230eae6a639209d52f8 (patch)
tree7662166d1cf40507e65fba6dbb9ee73a7c652afc /sysdeps/unix/sysv/linux/s390
parent963c37d5c0eb62b38f8764b23931c0dcdd497a13 (diff)
parenta2e487ce1c59d19345d9ecacc58de79febd869e4 (diff)
Merge branch 'master' of git://sourceware.org/git/glibc into upstreamupstream
Diffstat (limited to 'sysdeps/unix/sysv/linux/s390')
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/elfclass.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/environments.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/fcntl.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/hwcap.h8
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/ipc.h60
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/mman.h45
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/msq.h85
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/procfs-extra.h75
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/procfs-id.h (renamed from sysdeps/unix/sysv/linux/s390/libc-vdso.h)34
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/procfs.h (renamed from sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h)23
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/sem.h91
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/shm.h111
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/sigaction.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/statfs.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/typesizes.h9
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/utmp.h7
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/utmpx.h16
-rw-r--r--sysdeps/unix/sysv/linux/s390/brk.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/dl-procinfo.h8
-rw-r--r--sysdeps/unix/sysv/linux/s390/elision-conf.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/elision-conf.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/elision-lock.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/elision-timed.c10
-rw-r--r--sysdeps/unix/sysv/linux/s390/elision-trylock.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/elision-unlock.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/force-elision.h48
-rw-r--r--sysdeps/unix/sysv/linux/s390/htm.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/init-first.c60
-rw-r--r--sysdeps/unix/sysv/linux/s390/ipc_priv.h29
-rw-r--r--sysdeps/unix/sysv/linux/s390/jmp-unwind.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/kernel-features.h17
-rw-r--r--sysdeps/unix/sysv/linux/s390/kernel_sigaction.h29
-rw-r--r--sysdeps/unix/sysv/linux/s390/ldconfig.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/longjmp_chk.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/lowlevellock.h13
-rw-r--r--sysdeps/unix/sysv/linux/s390/mmap_internal.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/pt-longjmp.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/pt-vfork.S1
-rw-r--r--sysdeps/unix/sysv/linux/s390/pthread_mutex_cond_lock.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/pthread_mutex_lock.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/pthread_mutex_timedlock.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/pthread_mutex_trylock.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/readelflib.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/Versions3
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/__makecontext_ret.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/clone.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutent.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutid.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutline.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist27
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist21
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist23
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/lockf64.c1
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/login.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/login32.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h42
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/syscall.S30
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h17
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/vfork.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/__makecontext_ret.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/clone.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/dl-cache.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist25
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist21
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist21
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h42
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/syscall.S31
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h17
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/vfork.S4
-rw-r--r--sysdeps/unix/sysv/linux/s390/semtimedop.c36
-rw-r--r--sysdeps/unix/sysv/linux/s390/sigcontextinfo.h20
-rw-r--r--sysdeps/unix/sysv/linux/s390/sys/elf.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/sys/procfs.h176
-rw-r--r--sysdeps/unix/sysv/linux/s390/sys/ptrace.h13
-rw-r--r--sysdeps/unix/sysv/linux/s390/sys/ucontext.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/sys/user.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/sysconf.c4
-rw-r--r--sysdeps/unix/sysv/linux/s390/sysdep.h (renamed from sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h)18
-rw-r--r--sysdeps/unix/sysv/linux/s390/system.c29
-rw-r--r--sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c4
115 files changed, 586 insertions, 1104 deletions
diff --git a/sysdeps/unix/sysv/linux/s390/bits/elfclass.h b/sysdeps/unix/sysv/linux/s390/bits/elfclass.h
index 3b0e123af4..9590f5e3c2 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/elfclass.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/elfclass.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* This file specifies the native word size of the machine, which indicates
the ELF file class used for executables and shared objects on this
diff --git a/sysdeps/unix/sysv/linux/s390/bits/environments.h b/sysdeps/unix/sysv/linux/s390/bits/environments.h
index ca0f57525a..57c0353463 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/environments.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/environments.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999-2018 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _UNISTD_H
# error "Never include this file directly. Use <unistd.h> instead"
diff --git a/sysdeps/unix/sysv/linux/s390/bits/fcntl.h b/sysdeps/unix/sysv/linux/s390/bits/fcntl.h
index ac36abbac5..996a6661a9 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/fcntl.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/fcntl.h
@@ -1,5 +1,5 @@
/* O_*, F_*, FD_* bit values for Linux.
- Copyright (C) 2000-2018 Free Software Foundation, Inc.
+ Copyright (C) 2000-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _FCNTL_H
# error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
diff --git a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
index 2564712399..abe9b4861d 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
@@ -1,5 +1,5 @@
/* Defines for bits in AT_HWCAP.
- Copyright (C) 2012-2018 Free Software Foundation, Inc.
+ Copyright (C) 2012-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _SYS_AUXV_H
# error "Never include <bits/hwcap.h> directly; use <sys/auxv.h> instead."
@@ -39,3 +39,7 @@
#define HWCAP_S390_VXD 4096
#define HWCAP_S390_VXE 8192
#define HWCAP_S390_GS 16384
+#define HWCAP_S390_VXRS_EXT2 32768
+#define HWCAP_S390_VXRS_PDE 65536
+#define HWCAP_S390_SORT 131072
+#define HWCAP_S390_DFLT 262144
diff --git a/sysdeps/unix/sysv/linux/s390/bits/ipc.h b/sysdeps/unix/sysv/linux/s390/bits/ipc.h
deleted file mode 100644
index faacf1da67..0000000000
--- a/sysdeps/unix/sysv/linux/s390/bits/ipc.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Copyright (C) 2001-2018 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 _SYS_IPC_H
-# error "Never use <bits/ipc.h> directly; include <sys/ipc.h> instead."
-#endif
-
-#include <bits/types.h>
-#include <bits/wordsize.h>
-
-/* Mode bits for `msgget', `semget', and `shmget'. */
-#define IPC_CREAT 01000 /* Create key if key does not exist. */
-#define IPC_EXCL 02000 /* Fail if key exists. */
-#define IPC_NOWAIT 04000 /* Return error on wait. */
-
-/* Control commands for `msgctl', `semctl', and `shmctl'. */
-#define IPC_RMID 0 /* Remove identifier. */
-#define IPC_SET 1 /* Set `ipc_perm' options. */
-#define IPC_STAT 2 /* Get `ipc_perm' options. */
-#ifdef __USE_GNU
-#define IPC_INFO 3 /* See ipcs. */
-#endif
-
-/* Special key values. */
-#define IPC_PRIVATE ((__key_t) 0) /* Private key. */
-
-
-/* Data structure used to pass permission information to IPC operations. */
-struct ipc_perm
- {
- __key_t __key; /* Key. */
- __uid_t uid; /* Owner's user ID. */
- __gid_t gid; /* Owner's group ID. */
- __uid_t cuid; /* Creator's user ID. */
- __gid_t cgid; /* Creator's group ID. */
-#if __WORDSIZE == 64
- __mode_t mode; /* Read/write permission. */
-#else
- unsigned short int mode; /* Read/write permission. */
- unsigned short int __pad1;
-#endif
- unsigned short int __seq; /* Sequence number. */
- unsigned short int __pad2;
- unsigned long int __glibc_reserved1;
- unsigned long int __glibc_reserved2;
- };
diff --git a/sysdeps/unix/sysv/linux/s390/bits/mman.h b/sysdeps/unix/sysv/linux/s390/bits/mman.h
deleted file mode 100644
index f103c1a65b..0000000000
--- a/sysdeps/unix/sysv/linux/s390/bits/mman.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Definitions for POSIX memory map interface. Linux/s390 version.
- Copyright (C) 2000-2018 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 _SYS_MMAN_H
-# error "Never use <bits/mman.h> directly; include <sys/mman.h> instead."
-#endif
-
-/* The following definitions basically come from the kernel headers.
- But the kernel header is not namespace clean. */
-
-
-/* These are Linux-specific. */
-#ifdef __USE_MISC
-# define MAP_GROWSDOWN 0x00100 /* Stack-like segment. */
-# define MAP_DENYWRITE 0x00800 /* ETXTBSY */
-# define MAP_EXECUTABLE 0x01000 /* Mark it as an executable. */
-# define MAP_LOCKED 0x02000 /* Lock the mapping. */
-# define MAP_NORESERVE 0x04000 /* Don't check for reservations. */
-# define MAP_POPULATE 0x08000 /* Populate (prefault) pagetables. */
-# define MAP_NONBLOCK 0x10000 /* Do not block on IO. */
-# define MAP_STACK 0x20000 /* Allocation is for a stack. */
-# define MAP_HUGETLB 0x40000 /* Create huge page mapping. */
-# define MAP_SYNC 0x80000 /* Perform synchronous page
- faults for the mapping. */
-# define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED but do not unmap
- underlying mapping. */
-#endif
-
-/* Include generic Linux declarations. */
-#include <bits/mman-linux.h>
diff --git a/sysdeps/unix/sysv/linux/s390/bits/msq.h b/sysdeps/unix/sysv/linux/s390/bits/msq.h
deleted file mode 100644
index b5dee36af6..0000000000
--- a/sysdeps/unix/sysv/linux/s390/bits/msq.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/* Copyright (C) 2001-2018 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 _SYS_MSG_H
-# error "Never use <bits/msq.h> directly; include <sys/msg.h> instead."
-#endif
-
-#include <bits/types.h>
-#include <bits/wordsize.h>
-
-/* Define options for message queue functions. */
-#define MSG_NOERROR 010000 /* no error if message is too big */
-#ifdef __USE_GNU
-# define MSG_EXCEPT 020000 /* recv any msg except of specified type */
-# define MSG_COPY 040000 /* copy (not remove) all queue messages */
-#endif
-
-/* Types used in the structure definition. */
-typedef unsigned long int msgqnum_t;
-typedef unsigned long int msglen_t;
-
-
-/* Structure of record for one message inside the kernel.
- The type `struct msg' is opaque. */
-struct msqid_ds
-{
- struct ipc_perm msg_perm; /* structure describing operation permission */
- __time_t msg_stime; /* time of last msgsnd command */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved1;
-#endif
- __time_t msg_rtime; /* time of last msgrcv command */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved2;
-#endif
- __time_t msg_ctime; /* time of last change */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved3;
-#endif
- unsigned long int __msg_cbytes; /* current number of bytes on queue */
- msgqnum_t msg_qnum; /* number of messages currently on queue */
- msglen_t msg_qbytes; /* max number of bytes allowed on queue */
- __pid_t msg_lspid; /* pid of last msgsnd() */
- __pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __glibc_reserved4;
- unsigned long int __glibc_reserved5;
-};
-
-#ifdef __USE_MISC
-
-# define msg_cbytes __msg_cbytes
-
-/* ipcs ctl commands */
-# define MSG_STAT 11
-# define MSG_INFO 12
-# define MSG_STAT_ANY 13
-
-/* buffer for msgctl calls IPC_INFO, MSG_INFO */
-struct msginfo
- {
- int msgpool;
- int msgmap;
- int msgmax;
- int msgmnb;
- int msgmni;
- int msgssz;
- int msgtql;
- unsigned short int msgseg;
- };
-
-#endif /* __USE_MISC */
diff --git a/sysdeps/unix/sysv/linux/s390/bits/procfs-extra.h b/sysdeps/unix/sysv/linux/s390/bits/procfs-extra.h
new file mode 100644
index 0000000000..19856e90ab
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/s390/bits/procfs-extra.h
@@ -0,0 +1,75 @@
+/* Extra sys/procfs.h definitions. S/390 version.
+ Copyright (C) 2000-2019 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
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef _SYS_PROCFS_H
+# error "Never include <bits/procfs-extra.h> directly; use <sys/procfs.h> instead."
+#endif
+
+#if __WORDSIZE == 64
+
+/* Provide 32-bit variants so that BFD can read 32-bit
+ core files. */
+#define ELF_NGREG32 36
+typedef unsigned int elf_greg_t32;
+typedef elf_greg_t32
+ elf_gregset_t32[ELF_NGREG32] __attribute__ ((__aligned__ (8)));
+typedef elf_fpregset_t elf_fpregset_t32;
+
+struct elf_prstatus32
+ {
+ struct elf_siginfo pr_info; /* Info associated with signal. */
+ short int pr_cursig; /* Current signal. */
+ unsigned int pr_sigpend; /* Set of pending signals. */
+ unsigned int pr_sighold; /* Set of held signals. */
+ __pid_t pr_pid;
+ __pid_t pr_ppid;
+ __pid_t pr_pgrp;
+ __pid_t pr_sid;
+ struct
+ {
+ int tv_sec, tv_usec;
+ } pr_utime, /* User time. */
+ pr_stime, /* System time. */
+ pr_cutime, /* Cumulative user time. */
+ pr_cstime; /* Cumulative system time. */
+ elf_gregset_t32 pr_reg; /* GP registers. */
+ int pr_fpvalid; /* True if math copro being used. */
+ };
+
+struct elf_prpsinfo32
+ {
+ char pr_state; /* Numeric process state. */
+ char pr_sname; /* Char for pr_state. */
+ char pr_zomb; /* Zombie. */
+ char pr_nice; /* Nice val. */
+ unsigned int pr_flag; /* Flags. */
+ unsigned short int pr_uid;
+ unsigned short int pr_gid;
+ int pr_pid, pr_ppid, pr_pgrp, pr_sid;
+ /* Lots missing */
+ char pr_fname[16]; /* Filename of executable. */
+ char pr_psargs[ELF_PRARGSZ]; /* Initial part of arg list. */
+ };
+
+typedef elf_gregset_t32 prgregset32_t;
+typedef elf_fpregset_t32 prfpregset32_t;
+
+typedef struct elf_prstatus32 prstatus32_t;
+typedef struct elf_prpsinfo32 prpsinfo32_t;
+
+#endif
diff --git a/sysdeps/unix/sysv/linux/s390/libc-vdso.h b/sysdeps/unix/sysv/linux/s390/bits/procfs-id.h
index 664bd15f3d..b15d6d6265 100644
--- a/sysdeps/unix/sysv/linux/s390/libc-vdso.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/procfs-id.h
@@ -1,5 +1,6 @@
-/* Resolve function pointers to VDSO functions.
- Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Types of pr_uid and pr_gid in struct elf_prpsinfo. S/390 version.
+ Copyright (C) 2018-2019 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
@@ -14,25 +15,16 @@
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 _LIBC_VDSO_H
-#define _LIBC_VDSO_H
-
-#ifdef SHARED
-
-#include <sysdep-vdso.h>
+ <https://www.gnu.org/licenses/>. */
-extern long int (*VDSO_SYMBOL(gettimeofday)) (struct timeval *, void *)
- attribute_hidden;
-
-extern long int (*VDSO_SYMBOL(clock_gettime)) (clockid_t, struct timespec *);
-
-extern long int (*VDSO_SYMBOL(clock_getres)) (clockid_t, struct timespec *);
-
-extern long int (*VDSO_SYMBOL(getcpu)) (unsigned *, unsigned *, void *)
- attribute_hidden;
+#ifndef _SYS_PROCFS_H
+# error "Never include <bits/procfs-id.h> directly; use <sys/procfs.h> instead."
#endif
-#endif /* _LIBC_VDSO_H */
+#if __WORDSIZE == 64
+typedef unsigned int __pr_uid_t;
+typedef unsigned int __pr_gid_t;
+#else
+typedef unsigned short int __pr_uid_t;
+typedef unsigned short int __pr_gid_t;
+#endif
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h b/sysdeps/unix/sysv/linux/s390/bits/procfs.h
index 34496152c7..1634132e89 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/procfs.h
@@ -1,5 +1,5 @@
-/* Low-level statistical profiling support function. Linux/s390 version.
- Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Types for registers for sys/procfs.h. S/390 version.
+ Copyright (C) 2000-2019 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
@@ -14,13 +14,16 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
-#include <signal.h>
-#include <sigcontextinfo.h>
+#ifndef _SYS_PROCFS_H
+# error "Never include <bits/procfs.h> directly; use <sys/procfs.h> instead."
+#endif
-static void
-__profil_counter (int signo, SIGCONTEXT scp)
-{
- profil_count ((void *) GET_PC (scp));
-}
+#include <sys/ucontext.h>
+
+typedef greg_t elf_greg_t;
+#define ELF_NGREG NGREG
+typedef gregset_t elf_gregset_t;
+typedef fpreg_t elf_fpreg_t;
+typedef fpregset_t elf_fpregset_t;
diff --git a/sysdeps/unix/sysv/linux/s390/bits/sem.h b/sysdeps/unix/sysv/linux/s390/bits/sem.h
deleted file mode 100644
index 1d0bd5cd9a..0000000000
--- a/sysdeps/unix/sysv/linux/s390/bits/sem.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Copyright (C) 2001-2018 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 _SYS_SEM_H
-# error "Never include <bits/sem.h> directly; use <sys/sem.h> instead."
-#endif
-
-#include <sys/types.h>
-
-/* Flags for `semop'. */
-#define SEM_UNDO 0x1000 /* undo the operation on exit */
-
-/* Commands for `semctl'. */
-#define GETPID 11 /* get sempid */
-#define GETVAL 12 /* get semval */
-#define GETALL 13 /* get all semval's */
-#define GETNCNT 14 /* get semncnt */
-#define GETZCNT 15 /* get semzcnt */
-#define SETVAL 16 /* set semval */
-#define SETALL 17 /* set all semval's */
-
-
-/* Data structure describing a set of semaphores. */
-struct semid_ds
-{
- struct ipc_perm sem_perm; /* operation permission struct */
- __time_t sem_otime; /* last semop() time */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved1;
-#endif
- __time_t sem_ctime; /* last time changed by semctl() */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved2;
-#endif
- unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __glibc_reserved3;
- unsigned long int __glibc_reserved4;
-};
-
-/* The user should define a union like the following to use it for arguments
- for `semctl'.
-
- union semun
- {
- int val; <= value for SETVAL
- struct semid_ds *buf; <= buffer for IPC_STAT & IPC_SET
- unsigned short int *array; <= array for GETALL & SETALL
- struct seminfo *__buf; <= buffer for IPC_INFO
- };
-
- Previous versions of this file used to define this union but this is
- incorrect. One can test the macro _SEM_SEMUN_UNDEFINED to see whether
- one must define the union or not. */
-#define _SEM_SEMUN_UNDEFINED 1
-
-#ifdef __USE_MISC
-
-/* ipcs ctl cmds */
-# define SEM_STAT 18
-# define SEM_INFO 19
-# define SEM_STAT_ANY 20
-
-struct seminfo
-{
- int semmap;
- int semmni;
- int semmns;
- int semmnu;
- int semmsl;
- int semopm;
- int semume;
- int semusz;
- int semvmx;
- int semaem;
-};
-
-#endif /* __USE_MISC */
diff --git a/sysdeps/unix/sysv/linux/s390/bits/shm.h b/sysdeps/unix/sysv/linux/s390/bits/shm.h
deleted file mode 100644
index 65235ab85e..0000000000
--- a/sysdeps/unix/sysv/linux/s390/bits/shm.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/* Copyright (C) 2001-2018 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 _SYS_SHM_H
-# error "Never include <bits/shm.h> directly; use <sys/shm.h> instead."
-#endif
-
-#include <bits/types.h>
-#include <bits/wordsize.h>
-
-/* Permission flag for shmget. */
-#define SHM_R 0400 /* or S_IRUGO from <linux/stat.h> */
-#define SHM_W 0200 /* or S_IWUGO from <linux/stat.h> */
-
-/* Flags for `shmat'. */
-#define SHM_RDONLY 010000 /* attach read-only else read-write */
-#define SHM_RND 020000 /* round attach address to SHMLBA */
-#define SHM_REMAP 040000 /* take-over region on attach */
-#define SHM_EXEC 0100000 /* execution access */
-
-/* Commands for `shmctl'. */
-#define SHM_LOCK 11 /* lock segment (root only) */
-#define SHM_UNLOCK 12 /* unlock segment (root only) */
-
-__BEGIN_DECLS
-
-/* Segment low boundary address multiple. */
-#define SHMLBA (__getpagesize ())
-extern int __getpagesize (void) __THROW __attribute__ ((__const__));
-
-
-/* Type to count number of attaches. */
-typedef unsigned long int shmatt_t;
-
-/* Data structure describing a shared memory segment. */
-struct shmid_ds
- {
- struct ipc_perm shm_perm; /* operation permission struct */
- size_t shm_segsz; /* size of segment in bytes */
- __time_t shm_atime; /* time of last shmat() */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved1;
-#endif
- __time_t shm_dtime; /* time of last shmdt() */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved2;
-#endif
- __time_t shm_ctime; /* time of last change by shmctl() */
-#if __WORDSIZE != 64
- unsigned long int __glibc_reserved3;
-#endif
- __pid_t shm_cpid; /* pid of creator */
- __pid_t shm_lpid; /* pid of last shmop */
- shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __glibc_reserved4;
- unsigned long int __glibc_reserved5;
- };
-
-#ifdef __USE_MISC
-
-/* ipcs ctl commands */
-# define SHM_STAT 13
-# define SHM_INFO 14
-# define SHM_STAT_ANY 15
-
-/* shm_mode upper byte flags */
-# define SHM_DEST 01000 /* segment will be destroyed on last detach */
-# define SHM_LOCKED 02000 /* segment will not be swapped */
-# define SHM_HUGETLB 04000 /* segment is mapped via hugetlb */
-# define SHM_NORESERVE 010000 /* don't check for reservations */
-
-struct shminfo
- {
- unsigned long int shmmax;
- unsigned long int shmmin;
- unsigned long int shmmni;
- unsigned long int shmseg;
- unsigned long int shmall;
- unsigned long int __glibc_reserved1;
- unsigned long int __glibc_reserved2;
- unsigned long int __glibc_reserved3;
- unsigned long int __glibc_reserved4;
- };
-
-struct shm_info
- {
- int used_ids;
- unsigned long int shm_tot; /* total allocated shm */
- unsigned long int shm_rss; /* total resident shm */
- unsigned long int shm_swp; /* total swapped shm */
- unsigned long int swap_attempts;
- unsigned long int swap_successes;
- };
-
-#endif /* __USE_MISC */
-
-__END_DECLS
diff --git a/sysdeps/unix/sysv/linux/s390/bits/sigaction.h b/sysdeps/unix/sysv/linux/s390/bits/sigaction.h
index 50c86cc527..c63188100a 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/sigaction.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/sigaction.h
@@ -1,5 +1,5 @@
/* Definitions for 31 & 64 bit S/390 sigaction.
- Copyright (C) 2001-2018 Free Software Foundation, Inc.
+ Copyright (C) 2001-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _BITS_SIGACTION_H
#define _BITS_SIGACTION_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/bits/stat.h b/sysdeps/unix/sysv/linux/s390/bits/stat.h
index 0b2be1362c..d0a45e8353 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/stat.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/stat.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#if !defined _SYS_STAT_H && !defined _FCNTL_H
# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
diff --git a/sysdeps/unix/sysv/linux/s390/bits/statfs.h b/sysdeps/unix/sysv/linux/s390/bits/statfs.h
index 559a1ae6c7..6c82111c15 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/statfs.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/statfs.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997-2018 Free Software Foundation, Inc.
+/* Copyright (C) 1997-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _SYS_STATFS_H
# error "Never include <bits/statfs.h> directly; use <sys/statfs.h> instead."
diff --git a/sysdeps/unix/sysv/linux/s390/bits/typesizes.h b/sysdeps/unix/sysv/linux/s390/bits/typesizes.h
index fdaa421958..38034e3ad4 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/typesizes.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/typesizes.h
@@ -1,5 +1,5 @@
/* bits/typesizes.h -- underlying types for *_t. Linux/s390 version.
- Copyright (C) 2003-2018 Free Software Foundation, Inc.
+ Copyright (C) 2003-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _BITS_TYPES_H
# error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead."
@@ -78,8 +78,13 @@
/* And for __rlim_t and __rlim64_t. */
# define __RLIM_T_MATCHES_RLIM64_T 1
+
+/* And for fsblkcnt_t, fsblkcnt64_t, fsfilcnt_t and fsfilcnt64_t. */
+# define __STATFS_MATCHES_STATFS64 1
#else
# define __RLIM_T_MATCHES_RLIM64_T 0
+
+# define __STATFS_MATCHES_STATFS64 0
#endif
/* Number of descriptors that can fit in an `fd_set'. */
diff --git a/sysdeps/unix/sysv/linux/s390/bits/utmp.h b/sysdeps/unix/sysv/linux/s390/bits/utmp.h
index b3fa362f47..9794bfc950 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h
@@ -1,5 +1,5 @@
/* The `struct utmp' type, describing entries in the utmp file. GNU version.
- Copyright (C) 1993-2018 Free Software Foundation, Inc.
+ Copyright (C) 1993-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _UTMP_H
# error "Never include <bits/utmp.h> directly; use <utmp.h> instead."
@@ -61,7 +61,8 @@ struct utmp
pid_t ut_pid; /* Process ID of login process. */
char ut_line[UT_LINESIZE]
__attribute_nonstring__; /* Devicename. */
- char ut_id[4]; /* Inittab ID. */
+ char ut_id[4]
+ __attribute_nonstring__; /* Inittab ID. */
char ut_user[UT_NAMESIZE]
__attribute_nonstring__; /* Username. */
char ut_host[UT_HOSTSIZE]
diff --git a/sysdeps/unix/sysv/linux/s390/bits/utmpx.h b/sysdeps/unix/sysv/linux/s390/bits/utmpx.h
index 3d3036c3b9..f0a610ee8a 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/utmpx.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/utmpx.h
@@ -1,5 +1,5 @@
/* Structures and definitions for the user accounting database. GNU version.
- Copyright (C) 1997-2018 Free Software Foundation, Inc.
+ Copyright (C) 1997-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _UTMPX_H
# error "Never include <bits/utmpx.h> directly; use <utmpx.h> instead."
@@ -56,10 +56,14 @@ struct utmpx
{
short int ut_type; /* Type of login. */
__pid_t ut_pid; /* Process ID of login process. */
- char ut_line[__UT_LINESIZE]; /* Devicename. */
- char ut_id[4]; /* Inittab ID. */
- char ut_user[__UT_NAMESIZE]; /* Username. */
- char ut_host[__UT_HOSTSIZE]; /* Hostname for remote login. */
+ char ut_line[__UT_LINESIZE]
+ __attribute_nonstring__; /* Devicename. */
+ char ut_id[4]
+ __attribute_nonstring__; /* Inittab ID. */
+ char ut_user[__UT_NAMESIZE]
+ __attribute_nonstring__; /* Username. */
+ char ut_host[__UT_HOSTSIZE]
+ __attribute_nonstring__; /* Hostname for remote login. */
struct __exit_status ut_exit; /* Exit status of a process marked
as DEAD_PROCESS. */
diff --git a/sysdeps/unix/sysv/linux/s390/brk.c b/sysdeps/unix/sysv/linux/s390/brk.c
index 249f4936a9..0ab417efdc 100644
--- a/sysdeps/unix/sysv/linux/s390/brk.c
+++ b/sysdeps/unix/sysv/linux/s390/brk.c
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2000-2018 Free Software Foundation, Inc.
+ Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -15,7 +15,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <errno.h>
#include <unistd.h>
diff --git a/sysdeps/unix/sysv/linux/s390/dl-procinfo.h b/sysdeps/unix/sysv/linux/s390/dl-procinfo.h
index d1516a05e3..79ae8454a7 100644
--- a/sysdeps/unix/sysv/linux/s390/dl-procinfo.h
+++ b/sysdeps/unix/sysv/linux/s390/dl-procinfo.h
@@ -1,5 +1,5 @@
/* Linux/s390 version of processor capability information handling macros.
- Copyright (C) 2006-2018 Free Software Foundation, Inc.
+ Copyright (C) 2006-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky <schwidefsky@de.ibm.com>, 2006.
@@ -15,7 +15,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _DL_S390_PROCINFO_H
#define _DL_S390_PROCINFO_H 1
@@ -32,8 +32,8 @@ _dl_procinfo (unsigned int type, unsigned long int word)
in the kernel sources. */
int i;
- /* Fallback to unknown output mechanism. */
- if (type == AT_HWCAP2)
+ /* Fallback to generic output mechanism. */
+ if (type != AT_HWCAP)
return -1;
_dl_printf ("AT_HWCAP: ");
diff --git a/sysdeps/unix/sysv/linux/s390/elision-conf.c b/sysdeps/unix/sysv/linux/s390/elision-conf.c
index 9fa9747f6f..d4d77a0a4c 100644
--- a/sysdeps/unix/sysv/linux/s390/elision-conf.c
+++ b/sysdeps/unix/sysv/linux/s390/elision-conf.c
@@ -1,5 +1,5 @@
/* Lock elision tunable parameters.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <config.h>
#include <pthreadP.h>
diff --git a/sysdeps/unix/sysv/linux/s390/elision-conf.h b/sysdeps/unix/sysv/linux/s390/elision-conf.h
index f869e1d67b..cf5a64cef1 100644
--- a/sysdeps/unix/sysv/linux/s390/elision-conf.h
+++ b/sysdeps/unix/sysv/linux/s390/elision-conf.h
@@ -1,5 +1,5 @@
/* Lock elision tunable parameters.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _ELISION_CONF_H
#define _ELISION_CONF_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/elision-lock.c b/sysdeps/unix/sysv/linux/s390/elision-lock.c
index e165d9d924..f3536c0cbc 100644
--- a/sysdeps/unix/sysv/linux/s390/elision-lock.c
+++ b/sysdeps/unix/sysv/linux/s390/elision-lock.c
@@ -1,5 +1,5 @@
/* Elided pthread mutex lock.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <pthread.h>
#include <pthreadP.h>
diff --git a/sysdeps/unix/sysv/linux/s390/elision-timed.c b/sysdeps/unix/sysv/linux/s390/elision-timed.c
index 592d6db64b..e1f0394079 100644
--- a/sysdeps/unix/sysv/linux/s390/elision-timed.c
+++ b/sysdeps/unix/sysv/linux/s390/elision-timed.c
@@ -1,5 +1,5 @@
/* Lock elision timed lock.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,13 +14,13 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <time.h>
#include <elision-conf.h>
#include <lowlevellock.h>
-#define __lll_lock_elision __lll_timedlock_elision
-#define EXTRAARG const struct timespec *t,
+#define __lll_lock_elision __lll_clocklock_elision
+#define EXTRAARG clockid_t clockid, const struct timespec *t,
#undef LLL_LOCK
-#define LLL_LOCK(a, b) lll_timedlock(a, t, b)
+#define LLL_LOCK(a, b) lll_clocklock(a, clockid, t, b)
#include "elision-lock.c"
diff --git a/sysdeps/unix/sysv/linux/s390/elision-trylock.c b/sysdeps/unix/sysv/linux/s390/elision-trylock.c
index 2eb9b36772..46e246ef53 100644
--- a/sysdeps/unix/sysv/linux/s390/elision-trylock.c
+++ b/sysdeps/unix/sysv/linux/s390/elision-trylock.c
@@ -1,5 +1,5 @@
/* Elided pthread mutex trylock.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <pthread.h>
#include <pthreadP.h>
diff --git a/sysdeps/unix/sysv/linux/s390/elision-unlock.c b/sysdeps/unix/sysv/linux/s390/elision-unlock.c
index ef14f9a744..53aea4b25d 100644
--- a/sysdeps/unix/sysv/linux/s390/elision-unlock.c
+++ b/sysdeps/unix/sysv/linux/s390/elision-unlock.c
@@ -1,5 +1,5 @@
/* Commit an elided pthread lock.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <pthreadP.h>
#include <lowlevellock.h>
diff --git a/sysdeps/unix/sysv/linux/s390/force-elision.h b/sysdeps/unix/sysv/linux/s390/force-elision.h
index d8a1b9972f..64cbda7e44 100644
--- a/sysdeps/unix/sysv/linux/s390/force-elision.h
+++ b/sysdeps/unix/sysv/linux/s390/force-elision.h
@@ -1,5 +1,5 @@
/* Automatic enabling of elision for mutexes
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,13 +14,49 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* Automatically enable elision for existing user lock kinds. */
#define FORCE_ELISION(m, s) \
- if (__pthread_force_elision \
- && (m->__data.__kind & PTHREAD_MUTEX_ELISION_FLAGS_NP) == 0) \
+ if (__pthread_force_elision) \
{ \
- mutex->__data.__kind |= PTHREAD_MUTEX_ELISION_NP; \
- s; \
+ /* See concurrency notes regarding __kind in \
+ struct __pthread_mutex_s in \
+ sysdeps/nptl/bits/thread-shared-types.h. \
+ \
+ There are the following cases for the kind of a mutex \
+ (The mask PTHREAD_MUTEX_ELISION_FLAGS_NP covers the flags \
+ PTHREAD_MUTEX_ELISION_NP and PTHREAD_MUTEX_NO_ELISION_NP where \
+ only one of both flags can be set): \
+ - both flags are not set: \
+ This is the first lock operation for this mutex. Enable \
+ elision as it is not enabled so far. \
+ Note: It can happen that multiple threads are calling e.g. \
+ pthread_mutex_lock at the same time as the first lock \
+ operation for this mutex. Then elision is enabled for this \
+ mutex by multiple threads. Storing with relaxed MO is enough \
+ as all threads will store the same new value for the kind of \
+ the mutex. But we have to ensure that we always use the \
+ elision path regardless if this thread has enabled elision or \
+ another one. \
+ \
+ - PTHREAD_MUTEX_ELISION_NP flag is set: \
+ Elision was already enabled for this mutex by a previous lock \
+ operation. See case above. Just use the elision path. \
+ \
+ - PTHREAD_MUTEX_NO_ELISION_NP flag is set: \
+ Elision was explicitly disabled by pthread_mutexattr_settype. \
+ Do not use the elision path. \
+ Note: The flag PTHREAD_MUTEX_NO_ELISION_NP will never be \
+ changed after mutex initialization. */ \
+ int mutex_kind = atomic_load_relaxed (&((m)->__data.__kind)); \
+ if ((mutex_kind & PTHREAD_MUTEX_ELISION_FLAGS_NP) == 0) \
+ { \
+ mutex_kind |= PTHREAD_MUTEX_ELISION_NP; \
+ atomic_store_relaxed (&((m)->__data.__kind), mutex_kind); \
+ } \
+ if ((mutex_kind & PTHREAD_MUTEX_ELISION_NP) != 0) \
+ { \
+ s; \
+ } \
}
diff --git a/sysdeps/unix/sysv/linux/s390/htm.h b/sysdeps/unix/sysv/linux/s390/htm.h
index b97f15f0c5..b1e63960b1 100644
--- a/sysdeps/unix/sysv/linux/s390/htm.h
+++ b/sysdeps/unix/sysv/linux/s390/htm.h
@@ -1,7 +1,7 @@
/* Shared HTM header. Work around false transactional execution facility
intrinsics.
- Copyright (C) 2016-2018 Free Software Foundation, Inc.
+ Copyright (C) 2016-2019 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
@@ -16,7 +16,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _HTM_H
#define _HTM_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/init-first.c b/sysdeps/unix/sysv/linux/s390/init-first.c
deleted file mode 100644
index 3a862309bf..0000000000
--- a/sysdeps/unix/sysv/linux/s390/init-first.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Initialization code run first thing by the ELF startup code. Linux/s390.
- Copyright (C) 2008-2018 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/>. */
-
-#ifdef SHARED
-# include <dl-vdso.h>
-# include <libc-vdso.h>
-
-long int (*VDSO_SYMBOL(gettimeofday)) (struct timeval *, void *)
- attribute_hidden;
-
-long int (*VDSO_SYMBOL(clock_gettime)) (clockid_t, struct timespec *)
- __attribute__ ((nocommon));
-
-long int (*VDSO_SYMBOL(clock_getres)) (clockid_t, struct timespec *)
- __attribute__ ((nocommon));
-
-long int (*VDSO_SYMBOL(getcpu)) (unsigned *, unsigned *, void *)
- attribute_hidden;
-
-static inline void
-_libc_vdso_platform_setup (void)
-{
- PREPARE_VERSION (linux2629, "LINUX_2.6.29", 123718585);
-
- void *p = _dl_vdso_vsym ("__kernel_gettimeofday", &linux2629);
- PTR_MANGLE (p);
- VDSO_SYMBOL (gettimeofday) = p;
-
- p = _dl_vdso_vsym ("__kernel_clock_gettime", &linux2629);
- PTR_MANGLE (p);
- VDSO_SYMBOL (clock_gettime) = p;
-
- p = _dl_vdso_vsym ("__kernel_clock_getres", &linux2629);
- PTR_MANGLE (p);
- VDSO_SYMBOL (clock_getres) = p;
-
- p = _dl_vdso_vsym ("__kernel_getcpu", &linux2629);
- PTR_MANGLE (p);
- VDSO_SYMBOL (getcpu) = p;
-}
-
-# define VDSO_SETUP _libc_vdso_platform_setup
-#endif
-
-#include <csu/init-first.c>
diff --git a/sysdeps/unix/sysv/linux/s390/ipc_priv.h b/sysdeps/unix/sysv/linux/s390/ipc_priv.h
new file mode 100644
index 0000000000..0a2ae75516
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/s390/ipc_priv.h
@@ -0,0 +1,29 @@
+/* Arch-specific SysV IPC definitions for Linux. s390 version.
+ Copyright (C) 2019 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <sysdeps/unix/sysv/linux/ipc_priv.h>
+
+/* The s390 sys_ipc variant has only five parameters instead of six
+ (as for default variant). The difference is the handling of
+ SEMTIMEDOP where on s390 the third parameter is used as a pointer
+ to a struct timespec where the generic variant uses fifth parameter. */
+#undef SEMTIMEDOP_IPC_ARGS
+#define SEMTIMEDOP_IPC_ARGS(__nsops, __sops, __timeout) \
+ (__nsops), (__timeout), (__sops)
+
+#include <ipc_ops.h>
diff --git a/sysdeps/unix/sysv/linux/s390/jmp-unwind.c b/sysdeps/unix/sysv/linux/s390/jmp-unwind.c
index d653938777..bb06e5ab77 100644
--- a/sysdeps/unix/sysv/linux/s390/jmp-unwind.c
+++ b/sysdeps/unix/sysv/linux/s390/jmp-unwind.c
@@ -1,5 +1,5 @@
/* Clean up stack frames unwound by longjmp. Linux/s390 version.
- Copyright (C) 2003-2018 Free Software Foundation, Inc.
+ Copyright (C) 2003-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <setjmp.h>
#include <stddef.h>
diff --git a/sysdeps/unix/sysv/linux/s390/kernel-features.h b/sysdeps/unix/sysv/linux/s390/kernel-features.h
index f718264926..0fbd16ab85 100644
--- a/sysdeps/unix/sysv/linux/s390/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/s390/kernel-features.h
@@ -1,6 +1,6 @@
/* Set flags signalling availability of kernel features based on given
kernel version number. S/390 version.
- Copyright (C) 1999-2018 Free Software Foundation, Inc.
+ Copyright (C) 1999-2019 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
@@ -15,10 +15,7 @@
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/>. */
-
-/* S/390 uses socketcall. */
-#define __ASSUME_SOCKETCALL 1
+ <https://www.gnu.org/licenses/>. */
/* Direct socketcalls available with kernel 4.3. */
#if __LINUX_KERNEL_VERSION >= 0x040300
@@ -48,8 +45,14 @@
# undef __ASSUME_SENDTO_SYSCALL
#endif
-/* s390 only supports ipc syscall. */
-#undef __ASSUME_DIRECT_SYSVIPC_SYSCALLS
+/* s390 only supports ipc syscall before 5.1. */
+#if __LINUX_KERNEL_VERSION < 0x050100
+# undef __ASSUME_DIRECT_SYSVIPC_SYSCALLS
+# undef __ASSUME_SYSVIPC_DEFAULT_IPC_64
+#endif
+#ifndef __s390x__
+# define __ASSUME_SYSVIPC_BROKEN_MODE_T
+#endif
#undef __ASSUME_CLONE_DEFAULT
#define __ASSUME_CLONE_BACKWARDS2
diff --git a/sysdeps/unix/sysv/linux/s390/kernel_sigaction.h b/sysdeps/unix/sysv/linux/s390/kernel_sigaction.h
index 7a6a2c4f29..041b763251 100644
--- a/sysdeps/unix/sysv/linux/s390/kernel_sigaction.h
+++ b/sysdeps/unix/sysv/linux/s390/kernel_sigaction.h
@@ -1,32 +1,9 @@
-#include <bits/types/siginfo_t.h>
-
+/* S390 uses the generic Linux UAPI but defines SA_RESTORER. */
#define SA_RESTORER 0x04000000
-/* This is the sigaction structure from the Linux 3.2 kernel. */
-struct kernel_sigaction
-{
- union
- {
- __sighandler_t _sa_handler;
- void (*_sa_sigaction)(int, siginfo_t *, void *);
- } _u;
-#define k_sa_handler _u._sa_handler
- /* The 'struct sigaction' definition in s390 kernel header
- arch/s390/include/uapi/asm/signal.h is used for __NR_rt_sigaction
- on 64 bits and for __NR_sigaction for 31 bits.
-
- The expected layout for __NR_rt_sigaction for 31 bits is either
- 'struct sigaction' from include/linux/signal_types.h or
- 'struct compat_sigaction' from include/linux/compat.h.
-
- So for __NR_rt_sigaction we can use the same layout for both s390x
- and s390. */
- unsigned long sa_flags;
- void (*sa_restorer)(void);
- sigset_t sa_mask;
-};
-
#define SET_SA_RESTORER(kact, act) \
(kact)->sa_restorer = (act)->sa_restorer
#define RESET_SA_RESTORER(act, kact) \
(act)->sa_restorer = (kact)->sa_restorer
+
+#include <sysdeps/unix/sysv/linux/kernel_sigaction.h>
diff --git a/sysdeps/unix/sysv/linux/s390/ldconfig.h b/sysdeps/unix/sysv/linux/s390/ldconfig.h
index 59080e9095..c81f124323 100644
--- a/sysdeps/unix/sysv/linux/s390/ldconfig.h
+++ b/sysdeps/unix/sysv/linux/s390/ldconfig.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdeps/generic/ldconfig.h>
diff --git a/sysdeps/unix/sysv/linux/s390/longjmp_chk.c b/sysdeps/unix/sysv/linux/s390/longjmp_chk.c
index 5c4b59284b..49cc6dea17 100644
--- a/sysdeps/unix/sysv/linux/s390/longjmp_chk.c
+++ b/sysdeps/unix/sysv/linux/s390/longjmp_chk.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2014-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2014-2019 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
@@ -13,7 +13,7 @@
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/>.
+ <https://www.gnu.org/licenses/>.
Versioned copy of debug/longjmp_chk.c modified for versioning
the reverted jmpbuf extension. */
diff --git a/sysdeps/unix/sysv/linux/s390/lowlevellock.h b/sysdeps/unix/sysv/linux/s390/lowlevellock.h
index bd4b312d25..d6a832bca0 100644
--- a/sysdeps/unix/sysv/linux/s390/lowlevellock.h
+++ b/sysdeps/unix/sysv/linux/s390/lowlevellock.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2003-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky <schwidefsky@de.ibm.com>, 2003.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _S390_LOWLEVELLOCK_H
#define _S390_LOWLEVELLOCK_H 1
@@ -22,12 +22,13 @@
#include <sysdeps/nptl/lowlevellock.h>
/* Transactional lock elision definitions. */
-extern int __lll_timedlock_elision
- (int *futex, short *adapt_count, const struct timespec *timeout, int private)
+extern int __lll_clocklock_elision
+ (int *futex, short *adapt_count,
+ clockid_t clockid, const struct timespec *timeout, int private)
attribute_hidden;
-# define lll_timedlock_elision(futex, adapt_count, timeout, private) \
- __lll_timedlock_elision(&(futex), &(adapt_count), timeout, private)
+# define lll_clocklock_elision(futex, adapt_count, clockid, timeout, private) \
+ __lll_clocklock_elision (&(futex), &(adapt_count), clockid, timeout, private)
extern int __lll_lock_elision (int *futex, short *adapt_count, int private)
attribute_hidden;
diff --git a/sysdeps/unix/sysv/linux/s390/mmap_internal.h b/sysdeps/unix/sysv/linux/s390/mmap_internal.h
index a0777c2682..8119826158 100644
--- a/sysdeps/unix/sysv/linux/s390/mmap_internal.h
+++ b/sysdeps/unix/sysv/linux/s390/mmap_internal.h
@@ -1,5 +1,5 @@
/* mmap - map files or devices into memory. Linux/s390 version.
- Copyright (C) 2017-2018 Free Software Foundation, Inc.
+ Copyright (C) 2017-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef MMAP_S390_INTERNAL_H
# define MMAP_S390_INTERNAL_H
diff --git a/sysdeps/unix/sysv/linux/s390/pt-longjmp.c b/sysdeps/unix/sysv/linux/s390/pt-longjmp.c
index bd41a84a18..5312d2ea89 100644
--- a/sysdeps/unix/sysv/linux/s390/pt-longjmp.c
+++ b/sysdeps/unix/sysv/linux/s390/pt-longjmp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2014-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2014-2019 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
@@ -13,7 +13,7 @@
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/>.
+ <https://www.gnu.org/licenses/>.
Versioned copy of nptl/pt-longjmp.c modified for versioning
the reverted jmpbuf extension. */
diff --git a/sysdeps/unix/sysv/linux/s390/pt-vfork.S b/sysdeps/unix/sysv/linux/s390/pt-vfork.S
deleted file mode 100644
index 65cc3823ac..0000000000
--- a/sysdeps/unix/sysv/linux/s390/pt-vfork.S
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/alpha/pt-vfork.S>
diff --git a/sysdeps/unix/sysv/linux/s390/pthread_mutex_cond_lock.c b/sysdeps/unix/sysv/linux/s390/pthread_mutex_cond_lock.c
index f93d3e4000..ade5c76eac 100644
--- a/sysdeps/unix/sysv/linux/s390/pthread_mutex_cond_lock.c
+++ b/sysdeps/unix/sysv/linux/s390/pthread_mutex_cond_lock.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2014-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2014-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* The cond lock is not actually elided yet, but we still need to handle
already elided locks. */
diff --git a/sysdeps/unix/sysv/linux/s390/pthread_mutex_lock.c b/sysdeps/unix/sysv/linux/s390/pthread_mutex_lock.c
index ca4665441e..4ee7ed0d82 100644
--- a/sysdeps/unix/sysv/linux/s390/pthread_mutex_lock.c
+++ b/sysdeps/unix/sysv/linux/s390/pthread_mutex_lock.c
@@ -1,5 +1,5 @@
/* Elided version of pthread_mutex_lock.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <elision-conf.h>
#include <force-elision.h>
diff --git a/sysdeps/unix/sysv/linux/s390/pthread_mutex_timedlock.c b/sysdeps/unix/sysv/linux/s390/pthread_mutex_timedlock.c
index b4a9837244..1f5ba84c84 100644
--- a/sysdeps/unix/sysv/linux/s390/pthread_mutex_timedlock.c
+++ b/sysdeps/unix/sysv/linux/s390/pthread_mutex_timedlock.c
@@ -1,5 +1,5 @@
/* Elided version of pthread_mutex_timedlock.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <elision-conf.h>
#include <force-elision.h>
diff --git a/sysdeps/unix/sysv/linux/s390/pthread_mutex_trylock.c b/sysdeps/unix/sysv/linux/s390/pthread_mutex_trylock.c
index 60e66bef5f..60afb20521 100644
--- a/sysdeps/unix/sysv/linux/s390/pthread_mutex_trylock.c
+++ b/sysdeps/unix/sysv/linux/s390/pthread_mutex_trylock.c
@@ -1,5 +1,5 @@
/* Elided version of pthread_mutex_trylock.
- Copyright (C) 2014-2018 Free Software Foundation, Inc.
+ Copyright (C) 2014-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <elision-conf.h>
#include <force-elision.h>
diff --git a/sysdeps/unix/sysv/linux/s390/readelflib.c b/sysdeps/unix/sysv/linux/s390/readelflib.c
index e937b75fbb..8fb6116742 100644
--- a/sysdeps/unix/sysv/linux/s390/readelflib.c
+++ b/sysdeps/unix/sysv/linux/s390/readelflib.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
int process_elf32_file (const char *file_name, const char *lib, int *flag,
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/Versions b/sysdeps/unix/sysv/linux/s390/s390-32/Versions
index 1c120e8cbe..99193982a7 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/Versions
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/Versions
@@ -49,6 +49,9 @@ libc {
GLIBC_2.11 {
fallocate64;
}
+ GLIBC_2.31 {
+ msgctl; semctl; shmctl;
+ }
}
libutil {
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c b/sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c
index eb3a7b4776..933db89c79 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2009-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2009-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <errno.h>
#include <sysdep.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/__makecontext_ret.S b/sysdeps/unix/sysv/linux/s390/s390-32/__makecontext_ret.S
index 52c08a0ada..4553aa3e29 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/__makecontext_ret.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/__makecontext_ret.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2012-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2012-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/clone.S b/sysdeps/unix/sysv/linux/s390/s390-32/clone.S
index 73ccc288a0..d77be6a696 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/clone.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/clone.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* clone is even more special than fork as it mucks with stacks
and invokes a function in the right context after its all over. */
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S b/sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S
index b95ea371fd..6b2a9130b1 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <features.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutent.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutent.c
index c424774910..c0d8ef31c6 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutent.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutent.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <stdlib.h>
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c
index 2928d63bf9..fca1e1c69c 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <libc-lock.h>
#include <stdlib.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutid.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutid.c
index 6e36509a0a..0865b8a133 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutid.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutid.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <stdlib.h>
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c
index 79f8096688..00db077f34 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <libc-lock.h>
#include <errno.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutline.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutline.c
index dd1d98726e..a007775eeb 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutline.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutline.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <stdlib.h>
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c
index c216947613..b8347837bd 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <errno.h>
#include <libc-lock.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c
index 4d28c4a700..5c9e5f6735 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <string.h>
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c
index f60c831fa3..2bc08180d7 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <utmp.h>
#include <utmpx.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c
index c03f34b150..8de68910de 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <utmp.h>
#include <utmpx.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c b/sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c
index 9786e8bf0e..6fd537ec1f 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <utmp.h>
#include <utmpx.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index 3a5ec2a1e4..4feca641b0 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -1829,6 +1829,11 @@ GLIBC_2.2 _flushlbf F
GLIBC_2.2 _res_hconf D 0x30
GLIBC_2.2 alphasort64 F
GLIBC_2.2 bind_textdomain_codeset F
+GLIBC_2.2 clock_getcpuclockid F
+GLIBC_2.2 clock_getres F
+GLIBC_2.2 clock_gettime F
+GLIBC_2.2 clock_nanosleep F
+GLIBC_2.2 clock_settime F
GLIBC_2.2 dcngettext F
GLIBC_2.2 dngettext F
GLIBC_2.2 fgetpos F
@@ -2002,6 +2007,9 @@ GLIBC_2.28 thrd_current F
GLIBC_2.28 thrd_equal F
GLIBC_2.28 thrd_sleep F
GLIBC_2.28 thrd_yield F
+GLIBC_2.29 getcpu F
+GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
+GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
GLIBC_2.3 __ctype_b_loc F
GLIBC_2.3 __ctype_tolower_loc F
GLIBC_2.3 __ctype_toupper_loc F
@@ -2156,6 +2164,25 @@ GLIBC_2.3.4 setipv4sourcefilter F
GLIBC_2.3.4 setsourcefilter F
GLIBC_2.3.4 xdr_quad_t F
GLIBC_2.3.4 xdr_u_quad_t F
+GLIBC_2.30 __nldbl_argp_error F
+GLIBC_2.30 __nldbl_argp_failure F
+GLIBC_2.30 __nldbl_err F
+GLIBC_2.30 __nldbl_error F
+GLIBC_2.30 __nldbl_error_at_line F
+GLIBC_2.30 __nldbl_errx F
+GLIBC_2.30 __nldbl_verr F
+GLIBC_2.30 __nldbl_verrx F
+GLIBC_2.30 __nldbl_vwarn F
+GLIBC_2.30 __nldbl_vwarnx F
+GLIBC_2.30 __nldbl_warn F
+GLIBC_2.30 __nldbl_warnx F
+GLIBC_2.30 getdents64 F
+GLIBC_2.30 gettid F
+GLIBC_2.30 tgkill F
+GLIBC_2.30 twalk_r F
+GLIBC_2.31 msgctl F
+GLIBC_2.31 semctl F
+GLIBC_2.31 shmctl F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
GLIBC_2.4 _IO_sprintf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
index 643aa55498..cd6be8e584 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
@@ -1033,6 +1033,27 @@ GLIBC_2.28 fmul F
GLIBC_2.28 fmull F
GLIBC_2.28 fsub F
GLIBC_2.28 fsubl F
+GLIBC_2.29 exp F
+GLIBC_2.29 exp2 F
+GLIBC_2.29 log F
+GLIBC_2.29 log2 F
+GLIBC_2.29 pow F
+GLIBC_2.31 totalorder F
+GLIBC_2.31 totalorderf F
+GLIBC_2.31 totalorderf128 F
+GLIBC_2.31 totalorderf32 F
+GLIBC_2.31 totalorderf32x F
+GLIBC_2.31 totalorderf64 F
+GLIBC_2.31 totalorderf64x F
+GLIBC_2.31 totalorderl F
+GLIBC_2.31 totalordermag F
+GLIBC_2.31 totalordermagf F
+GLIBC_2.31 totalordermagf128 F
+GLIBC_2.31 totalordermagf32 F
+GLIBC_2.31 totalordermagf32x F
+GLIBC_2.31 totalordermagf64 F
+GLIBC_2.31 totalordermagf64x F
+GLIBC_2.31 totalordermagl F
GLIBC_2.4 __clog10l F
GLIBC_2.4 __finitel F
GLIBC_2.4 __fpclassifyl F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
index d05468f3b2..bfa1d5e879 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libpthread.abilist
@@ -42,20 +42,11 @@ GLIBC_2.0 funlockfile F
GLIBC_2.0 longjmp F
GLIBC_2.0 lseek F
GLIBC_2.0 msync F
-GLIBC_2.0 nanosleep F
GLIBC_2.0 open F
GLIBC_2.0 pause F
GLIBC_2.0 pthread_atfork F
-GLIBC_2.0 pthread_attr_destroy F
-GLIBC_2.0 pthread_attr_getdetachstate F
-GLIBC_2.0 pthread_attr_getinheritsched F
-GLIBC_2.0 pthread_attr_getschedparam F
GLIBC_2.0 pthread_attr_getschedpolicy F
GLIBC_2.0 pthread_attr_getscope F
-GLIBC_2.0 pthread_attr_init F
-GLIBC_2.0 pthread_attr_setdetachstate F
-GLIBC_2.0 pthread_attr_setinheritsched F
-GLIBC_2.0 pthread_attr_setschedparam F
GLIBC_2.0 pthread_attr_setschedpolicy F
GLIBC_2.0 pthread_attr_setscope F
GLIBC_2.0 pthread_cancel F
@@ -69,7 +60,6 @@ GLIBC_2.0 pthread_condattr_destroy F
GLIBC_2.0 pthread_condattr_init F
GLIBC_2.0 pthread_create F
GLIBC_2.0 pthread_detach F
-GLIBC_2.0 pthread_equal F
GLIBC_2.0 pthread_exit F
GLIBC_2.0 pthread_getschedparam F
GLIBC_2.0 pthread_getspecific F
@@ -88,7 +78,6 @@ GLIBC_2.0 pthread_mutexattr_getkind_np F
GLIBC_2.0 pthread_mutexattr_init F
GLIBC_2.0 pthread_mutexattr_setkind_np F
GLIBC_2.0 pthread_once F
-GLIBC_2.0 pthread_self F
GLIBC_2.0 pthread_setcancelstate F
GLIBC_2.0 pthread_setcanceltype F
GLIBC_2.0 pthread_setschedparam F
@@ -114,7 +103,6 @@ GLIBC_2.0 siglongjmp F
GLIBC_2.0 sigwait F
GLIBC_2.0 system F
GLIBC_2.0 tcdrain F
-GLIBC_2.0 vfork F
GLIBC_2.0 wait F
GLIBC_2.0 waitpid F
GLIBC_2.0 write F
@@ -124,7 +112,6 @@ GLIBC_2.1 __libc_current_sigrtmin F
GLIBC_2.1 pthread_attr_getguardsize F
GLIBC_2.1 pthread_attr_getstackaddr F
GLIBC_2.1 pthread_attr_getstacksize F
-GLIBC_2.1 pthread_attr_init F
GLIBC_2.1 pthread_attr_setguardsize F
GLIBC_2.1 pthread_attr_setstackaddr F
GLIBC_2.1 pthread_attr_setstacksize F
@@ -155,7 +142,7 @@ GLIBC_2.1 sem_wait F
GLIBC_2.1.1 sem_close F
GLIBC_2.1.1 sem_open F
GLIBC_2.1.1 sem_unlink F
-GLIBC_2.1.2 __vfork F
+GLIBC_2.1.2 __libpthread_version_placeholder F
GLIBC_2.11 pthread_sigqueue F
GLIBC_2.12 pthread_getname_np F
GLIBC_2.12 pthread_mutex_consistent F
@@ -207,7 +194,7 @@ GLIBC_2.2 pwrite F
GLIBC_2.2 pwrite64 F
GLIBC_2.2 sem_timedwait F
GLIBC_2.2.3 pthread_getattr_np F
-GLIBC_2.2.6 __nanosleep F
+GLIBC_2.2.6 __libpthread_version_placeholder F
GLIBC_2.28 call_once F
GLIBC_2.28 cnd_broadcast F
GLIBC_2.28 cnd_destroy F
@@ -255,6 +242,12 @@ GLIBC_2.3.4 pthread_attr_setaffinity_np F
GLIBC_2.3.4 pthread_getaffinity_np F
GLIBC_2.3.4 pthread_setaffinity_np F
GLIBC_2.3.4 pthread_setschedprio F
+GLIBC_2.30 pthread_cond_clockwait F
+GLIBC_2.30 pthread_mutex_clocklock F
+GLIBC_2.30 pthread_rwlock_clockrdlock F
+GLIBC_2.30 pthread_rwlock_clockwrlock F
+GLIBC_2.30 sem_clockwait F
+GLIBC_2.31 pthread_clockjoin_np F
GLIBC_2.4 pthread_mutex_consistent_np F
GLIBC_2.4 pthread_mutex_getprioceiling F
GLIBC_2.4 pthread_mutex_setprioceiling F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist
index 595f1b712a..bb03781dcc 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist
@@ -15,11 +15,6 @@ GLIBC_2.1 aio_write F
GLIBC_2.1 aio_write64 F
GLIBC_2.1 lio_listio F
GLIBC_2.1 lio_listio64 F
-GLIBC_2.2 clock_getcpuclockid F
-GLIBC_2.2 clock_getres F
-GLIBC_2.2 clock_gettime F
-GLIBC_2.2 clock_nanosleep F
-GLIBC_2.2 clock_settime F
GLIBC_2.2 shm_open F
GLIBC_2.2 shm_unlink F
GLIBC_2.2 timer_create F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/lockf64.c b/sysdeps/unix/sysv/linux/s390/s390-32/lockf64.c
deleted file mode 100644
index a88f5a784a..0000000000
--- a/sysdeps/unix/sysv/linux/s390/s390-32/lockf64.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/unix/sysv/linux/i386/lockf64.c>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/login.c b/sysdeps/unix/sysv/linux/s390/s390-32/login.c
index 8d5a8ba8aa..8ecfef0580 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/login.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/login.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <assert.h>
#include <errno.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/login32.c b/sysdeps/unix/sysv/linux/s390/s390-32/login32.c
index 256d107a23..2dc64f200f 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/login32.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/login32.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sys/types.h>
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c b/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c
index d9b71cae33..fd94295ecf 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <libintl.h>
#include <stdarg.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c b/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
index 9f9326338f..2a371e7d68 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2003-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <errno.h>
#include <fcntl.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c b/sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c
index 705bf9c236..2732c4bd4e 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <utmp.h>
#include <utmpx.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h b/sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h
index e230ac34dd..845cb18a05 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/register-dump.h
@@ -1,5 +1,5 @@
/* Dump registers.
- Copyright (C) 2000-2018 Free Software Foundation, Inc.
+ Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -15,7 +15,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sys/uio.h>
#include <_itoa.h>
@@ -45,7 +45,7 @@ hexvalue (unsigned long int value, char *buf, size_t len)
}
static void
-register_dump (int fd, struct sigcontext *ctx)
+register_dump (int fd, struct ucontext_t *ctx)
{
char regs[19][8];
struct iovec iov[40];
@@ -61,24 +61,24 @@ register_dump (int fd, struct sigcontext *ctx)
++nr
/* Generate strings of register contents. */
- hexvalue (ctx->sregs->regs.gprs[0], regs[0], 8);
- hexvalue (ctx->sregs->regs.gprs[1], regs[1], 8);
- hexvalue (ctx->sregs->regs.gprs[2], regs[2], 8);
- hexvalue (ctx->sregs->regs.gprs[3], regs[3], 8);
- hexvalue (ctx->sregs->regs.gprs[4], regs[4], 8);
- hexvalue (ctx->sregs->regs.gprs[5], regs[5], 8);
- hexvalue (ctx->sregs->regs.gprs[6], regs[6], 8);
- hexvalue (ctx->sregs->regs.gprs[7], regs[7], 8);
- hexvalue (ctx->sregs->regs.gprs[8], regs[8], 8);
- hexvalue (ctx->sregs->regs.gprs[9], regs[9], 8);
- hexvalue (ctx->sregs->regs.gprs[10], regs[10], 8);
- hexvalue (ctx->sregs->regs.gprs[11], regs[11], 8);
- hexvalue (ctx->sregs->regs.gprs[12], regs[12], 8);
- hexvalue (ctx->sregs->regs.gprs[13], regs[13], 8);
- hexvalue (ctx->sregs->regs.gprs[14], regs[14], 8);
- hexvalue (ctx->sregs->regs.gprs[15], regs[15], 8);
- hexvalue (ctx->sregs->regs.psw.mask, regs[16], 8);
- hexvalue (ctx->sregs->regs.psw.addr, regs[17], 8);
+ hexvalue (ctx->uc_mcontext.gregs[0], regs[0], 8);
+ hexvalue (ctx->uc_mcontext.gregs[1], regs[1], 8);
+ hexvalue (ctx->uc_mcontext.gregs[2], regs[2], 8);
+ hexvalue (ctx->uc_mcontext.gregs[3], regs[3], 8);
+ hexvalue (ctx->uc_mcontext.gregs[4], regs[4], 8);
+ hexvalue (ctx->uc_mcontext.gregs[5], regs[5], 8);
+ hexvalue (ctx->uc_mcontext.gregs[6], regs[6], 8);
+ hexvalue (ctx->uc_mcontext.gregs[7], regs[7], 8);
+ hexvalue (ctx->uc_mcontext.gregs[8], regs[8], 8);
+ hexvalue (ctx->uc_mcontext.gregs[9], regs[9], 8);
+ hexvalue (ctx->uc_mcontext.gregs[10], regs[10], 8);
+ hexvalue (ctx->uc_mcontext.gregs[11], regs[11], 8);
+ hexvalue (ctx->uc_mcontext.gregs[12], regs[12], 8);
+ hexvalue (ctx->uc_mcontext.gregs[13], regs[13], 8);
+ hexvalue (ctx->uc_mcontext.gregs[14], regs[14], 8);
+ hexvalue (ctx->uc_mcontext.gregs[15], regs[15], 8);
+ hexvalue (ctx->uc_mcontext.psw.mask, regs[16], 8);
+ hexvalue (ctx->uc_mcontext.psw.addr, regs[17], 8);
/* Generate the output. */
ADD_STRING ("Register dump:\n\n GPR0: ");
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S b/sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S
index 2dc42ab243..77c9c26d20 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <features.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S b/sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S
index 52e69b2ece..8a50e1cc36 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/swapcontext.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <features.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/syscall.S b/sysdeps/unix/sysv/linux/s390/s390-32/syscall.S
index a78188be4f..06280992ab 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/syscall.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/syscall.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
@@ -22,37 +22,19 @@
more information about the value -4095 used below.*/
ENTRY (syscall)
- /* Save registers and setup stack. */
- stm %r6,%r15,24(%r15) /* save registers */
- cfi_offset (%r15, -36)
- cfi_offset (%r14, -40)
- cfi_offset (%r13, -44)
- cfi_offset (%r12, -48)
- cfi_offset (%r11, -52)
- cfi_offset (%r10, -56)
- cfi_offset (%r9, -60)
- cfi_offset (%r8, -64)
+ stm %r6,%r7,24(%r15) /* save registers */
cfi_offset (%r7, -68)
cfi_offset (%r6, -72)
- lr %r1,%r15
- l %r0,4(0,%r15) /* load eos */
- ahi %r15,-96 /* buy stack space */
- cfi_adjust_cfa_offset (96)
- st %r1,0(0,%r15) /* store back chain */
- st %r0,4(0,%r15) /* store eos */
lr %r1,%r2 /* move syscall number */
lr %r2,%r3 /* first parameter */
lr %r3,%r4 /* second parameter */
lr %r4,%r5 /* third parameter */
lr %r5,%r6 /* fourth parameter */
- l %r6,192(%r15) /* fifth parameter */
- l %r7,196(%r15) /* sixth parameter */
-
+ lm %r6,%r7,96(%r15) /* fifth / sixth parameter */
svc 0
- l %r15,0(%r15) /* load back chain. */
- cfi_adjust_cfa_offset (-96)
- lm %r6,%r15,24(%r15) /* load registers. */
+
+ lm %r6,%r7,24(%r15) /* load registers. */
lhi %r0,-4095
clr %r2,%r0 /* check R2 for error */
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S b/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S
index afc0f66a5f..8d814c02c9 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <tls.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
index 0d683a5bcb..bdede296a5 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,13 +14,14 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _LINUX_S390_SYSDEP_H
#define _LINUX_S390_SYSDEP_H
#include <sysdeps/s390/s390-32/sysdep.h>
#include <sysdeps/unix/sysdep.h>
+#include <sysdeps/unix/sysv/linux/s390/sysdep.h>
#include <sysdeps/unix/sysv/linux/sysdep.h>
#include <dl-sysdep.h> /* For RTLD_PRIVATE_ERRNO. */
#include <tls.h>
@@ -233,9 +234,9 @@
#undef INTERNAL_SYSCALL
#define INTERNAL_SYSCALL(name, err, nr, args...) \
- (((__NR_##name) < 256) ? \
- INTERNAL_SYSCALL_DIRECT(name, err, nr, args) : \
- INTERNAL_SYSCALL_SVC0(name, err,nr, args))
+ (((__NR_##name) < 256) \
+ ? INTERNAL_SYSCALL_DIRECT(name, err, nr, args) \
+ : INTERNAL_SYSCALL_SVC0(name, err,nr, args))
#undef INTERNAL_SYSCALL_ERROR_P
#define INTERNAL_SYSCALL_ERROR_P(val, err) \
@@ -271,12 +272,6 @@
#define ASMFMT_5 , "0" (gpr2), "d" (gpr3), "d" (gpr4), "d" (gpr5), "d" (gpr6)
#define ASMFMT_6 , "0" (gpr2), "d" (gpr3), "d" (gpr4), "d" (gpr5), "d" (gpr6), "d" (gpr7)
-/* List of system calls which are supported as vsyscalls. */
-#define HAVE_CLOCK_GETRES_VSYSCALL 1
-#define HAVE_CLOCK_GETTIME_VSYSCALL 1
-#define HAVE_GETTIMEOFDAY_VSYSCALL 1
-#define HAVE_GETCPU_VSYSCALL 1
-
/* Pointer mangling support. */
#if IS_IN (rtld)
/* We cannot use the thread descriptor because in ld.so we use setjmp
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c b/sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c
index b27ae89cc4..9c862b8a78 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c b/sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c
index 2f4c82d408..04f611ac3d 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <utmp.h>
#include <utmpx.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h b/sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h
index e942645ad8..9544478783 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* This macro defines the glibc version tag at which the 64 bit struct
utmp functions have been added to the 32 bit glibc. */
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h b/sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h
index 877cbc4517..7100252a90 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* This file provides functions converting between the 32 and 64 bit
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c b/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c
index 8a72ea61b7..9e1d7ffca1 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sys/types.h>
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h b/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h
index 05c5dc3b8b..87037f6ab6 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h
@@ -1,5 +1,5 @@
/* The `struct utmp' type, describing entries in the utmp file. GNU version.
- Copyright (C) 1993-2018 Free Software Foundation, Inc.
+ Copyright (C) 1993-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _UTMP32_H
#define _UTMP32_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h
index 74397aabf6..a1738b739d 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* This file provides functions converting between the 32 and 64 bit
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c
index 0b1978991f..c5160b8417 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2008-2019 Free Software Foundation, Inc.
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>.
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sys/types.h>
#include <utmp.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h
index 37767d1e42..70040d0cd3 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h
@@ -1,5 +1,5 @@
/* The `struct utmp' type, describing entries in the utmp file. GNU version.
- Copyright (C) 1993-2018 Free Software Foundation, Inc.
+ Copyright (C) 1993-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _UTMPX32_H
#define _UTMPX32_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/vfork.S b/sysdeps/unix/sysv/linux/s390/s390-32/vfork.S
index 58b7416073..eb3fa4d62e 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/vfork.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/vfork.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2004-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2004-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>, 2004.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#define _ERRNO_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c b/sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c
index 7caab15e15..aaa8eb5728 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2009-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2009-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <errno.h>
#include <sysdep.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/__makecontext_ret.S b/sysdeps/unix/sysv/linux/s390/s390-64/__makecontext_ret.S
index d50115d7ad..718b953cb4 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/__makecontext_ret.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/__makecontext_ret.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2012-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2012-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/clone.S b/sysdeps/unix/sysv/linux/s390/s390-64/clone.S
index 18e2d943d6..9a8b791432 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/clone.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/clone.S
@@ -1,5 +1,5 @@
/* Wrapper around clone system call. 64 bit S/390 version.
- Copyright (C) 2001-2018 Free Software Foundation, Inc.
+ Copyright (C) 2001-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -15,7 +15,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* clone is even more special than fork as it mucks with stacks
and invokes a function in the right context after its all over. */
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/dl-cache.h b/sysdeps/unix/sysv/linux/s390/s390-64/dl-cache.h
index b6d77a3a4c..5a4df8237b 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/dl-cache.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/dl-cache.h
@@ -1,5 +1,5 @@
/* Support for reading /etc/ld.so.cache files written by Linux ldconfig.
- Copyright (C) 2001-2018 Free Software Foundation, Inc.
+ Copyright (C) 2001-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#define _DL_CACHE_DEFAULT_ID 0x403
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S b/sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S
index e8b15b899a..4bd62a30e2 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <features.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h b/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
index 98adda41fc..898cfd12a3 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h
@@ -1,5 +1,5 @@
/* Definition of `struct stat' used in the kernel.
- Copyright (C) 2003-2018 Free Software Foundation, Inc.
+ Copyright (C) 2003-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#define STAT_IS_KERNEL_STAT 1
#define XSTAT_IS_XSTAT64 1
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index 3b5465558b..efe588a072 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -632,6 +632,11 @@ GLIBC_2.2 clntudp_bufcreate F
GLIBC_2.2 clntudp_create F
GLIBC_2.2 clntunix_create F
GLIBC_2.2 clock F
+GLIBC_2.2 clock_getcpuclockid F
+GLIBC_2.2 clock_getres F
+GLIBC_2.2 clock_gettime F
+GLIBC_2.2 clock_nanosleep F
+GLIBC_2.2 clock_settime F
GLIBC_2.2 clone F
GLIBC_2.2 close F
GLIBC_2.2 closedir F
@@ -1907,6 +1912,10 @@ GLIBC_2.28 thrd_current F
GLIBC_2.28 thrd_equal F
GLIBC_2.28 thrd_sleep F
GLIBC_2.28 thrd_yield F
+GLIBC_2.29 __fentry__ F
+GLIBC_2.29 getcpu F
+GLIBC_2.29 posix_spawn_file_actions_addchdir_np F
+GLIBC_2.29 posix_spawn_file_actions_addfchdir_np F
GLIBC_2.3 __ctype_b_loc F
GLIBC_2.3 __ctype_tolower_loc F
GLIBC_2.3 __ctype_toupper_loc F
@@ -2059,6 +2068,22 @@ GLIBC_2.3.4 setipv4sourcefilter F
GLIBC_2.3.4 setsourcefilter F
GLIBC_2.3.4 xdr_quad_t F
GLIBC_2.3.4 xdr_u_quad_t F
+GLIBC_2.30 __nldbl_argp_error F
+GLIBC_2.30 __nldbl_argp_failure F
+GLIBC_2.30 __nldbl_err F
+GLIBC_2.30 __nldbl_error F
+GLIBC_2.30 __nldbl_error_at_line F
+GLIBC_2.30 __nldbl_errx F
+GLIBC_2.30 __nldbl_verr F
+GLIBC_2.30 __nldbl_verrx F
+GLIBC_2.30 __nldbl_vwarn F
+GLIBC_2.30 __nldbl_vwarnx F
+GLIBC_2.30 __nldbl_warn F
+GLIBC_2.30 __nldbl_warnx F
+GLIBC_2.30 getdents64 F
+GLIBC_2.30 gettid F
+GLIBC_2.30 tgkill F
+GLIBC_2.30 twalk_r F
GLIBC_2.4 _IO_fprintf F
GLIBC_2.4 _IO_printf F
GLIBC_2.4 _IO_sprintf F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
index 8cc5fdfc0b..5291424feb 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
@@ -1033,6 +1033,27 @@ GLIBC_2.28 fmul F
GLIBC_2.28 fmull F
GLIBC_2.28 fsub F
GLIBC_2.28 fsubl F
+GLIBC_2.29 exp F
+GLIBC_2.29 exp2 F
+GLIBC_2.29 log F
+GLIBC_2.29 log2 F
+GLIBC_2.29 pow F
+GLIBC_2.31 totalorder F
+GLIBC_2.31 totalorderf F
+GLIBC_2.31 totalorderf128 F
+GLIBC_2.31 totalorderf32 F
+GLIBC_2.31 totalorderf32x F
+GLIBC_2.31 totalorderf64 F
+GLIBC_2.31 totalorderf64x F
+GLIBC_2.31 totalorderl F
+GLIBC_2.31 totalordermag F
+GLIBC_2.31 totalordermagf F
+GLIBC_2.31 totalordermagf128 F
+GLIBC_2.31 totalordermagf32 F
+GLIBC_2.31 totalordermagf32x F
+GLIBC_2.31 totalordermagf64 F
+GLIBC_2.31 totalordermagf64x F
+GLIBC_2.31 totalordermagl F
GLIBC_2.4 __clog10l F
GLIBC_2.4 __finitel F
GLIBC_2.4 __fpclassifyl F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
index e8161aa747..8cf9afe511 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libpthread.abilist
@@ -48,7 +48,6 @@ GLIBC_2.2 __read F
GLIBC_2.2 __res_state F
GLIBC_2.2 __send F
GLIBC_2.2 __sigaction F
-GLIBC_2.2 __vfork F
GLIBC_2.2 __wait F
GLIBC_2.2 __write F
GLIBC_2.2 _pthread_cleanup_pop F
@@ -68,28 +67,19 @@ GLIBC_2.2 longjmp F
GLIBC_2.2 lseek F
GLIBC_2.2 lseek64 F
GLIBC_2.2 msync F
-GLIBC_2.2 nanosleep F
GLIBC_2.2 open F
GLIBC_2.2 open64 F
GLIBC_2.2 pause F
GLIBC_2.2 pread F
GLIBC_2.2 pread64 F
GLIBC_2.2 pthread_atfork F
-GLIBC_2.2 pthread_attr_destroy F
-GLIBC_2.2 pthread_attr_getdetachstate F
GLIBC_2.2 pthread_attr_getguardsize F
-GLIBC_2.2 pthread_attr_getinheritsched F
-GLIBC_2.2 pthread_attr_getschedparam F
GLIBC_2.2 pthread_attr_getschedpolicy F
GLIBC_2.2 pthread_attr_getscope F
GLIBC_2.2 pthread_attr_getstack F
GLIBC_2.2 pthread_attr_getstackaddr F
GLIBC_2.2 pthread_attr_getstacksize F
-GLIBC_2.2 pthread_attr_init F
-GLIBC_2.2 pthread_attr_setdetachstate F
GLIBC_2.2 pthread_attr_setguardsize F
-GLIBC_2.2 pthread_attr_setinheritsched F
-GLIBC_2.2 pthread_attr_setschedparam F
GLIBC_2.2 pthread_attr_setschedpolicy F
GLIBC_2.2 pthread_attr_setscope F
GLIBC_2.2 pthread_attr_setstack F
@@ -114,7 +104,6 @@ GLIBC_2.2 pthread_condattr_init F
GLIBC_2.2 pthread_condattr_setpshared F
GLIBC_2.2 pthread_create F
GLIBC_2.2 pthread_detach F
-GLIBC_2.2 pthread_equal F
GLIBC_2.2 pthread_exit F
GLIBC_2.2 pthread_getconcurrency F
GLIBC_2.2 pthread_getcpuclockid F
@@ -155,7 +144,6 @@ GLIBC_2.2 pthread_rwlockattr_getpshared F
GLIBC_2.2 pthread_rwlockattr_init F
GLIBC_2.2 pthread_rwlockattr_setkind_np F
GLIBC_2.2 pthread_rwlockattr_setpshared F
-GLIBC_2.2 pthread_self F
GLIBC_2.2 pthread_setcancelstate F
GLIBC_2.2 pthread_setcanceltype F
GLIBC_2.2 pthread_setconcurrency F
@@ -194,12 +182,11 @@ GLIBC_2.2 siglongjmp F
GLIBC_2.2 sigwait F
GLIBC_2.2 system F
GLIBC_2.2 tcdrain F
-GLIBC_2.2 vfork F
GLIBC_2.2 wait F
GLIBC_2.2 waitpid F
GLIBC_2.2 write F
GLIBC_2.2.3 pthread_getattr_np F
-GLIBC_2.2.6 __nanosleep F
+GLIBC_2.2.6 __libpthread_version_placeholder F
GLIBC_2.28 call_once F
GLIBC_2.28 cnd_broadcast F
GLIBC_2.28 cnd_destroy F
@@ -247,6 +234,12 @@ GLIBC_2.3.4 pthread_attr_setaffinity_np F
GLIBC_2.3.4 pthread_getaffinity_np F
GLIBC_2.3.4 pthread_setaffinity_np F
GLIBC_2.3.4 pthread_setschedprio F
+GLIBC_2.30 pthread_cond_clockwait F
+GLIBC_2.30 pthread_mutex_clocklock F
+GLIBC_2.30 pthread_rwlock_clockrdlock F
+GLIBC_2.30 pthread_rwlock_clockwrlock F
+GLIBC_2.30 sem_clockwait F
+GLIBC_2.31 pthread_clockjoin_np F
GLIBC_2.4 pthread_mutex_consistent_np F
GLIBC_2.4 pthread_mutex_getprioceiling F
GLIBC_2.4 pthread_mutex_setprioceiling F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist
index 41be3bb84b..5905498a48 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist
@@ -13,11 +13,6 @@ GLIBC_2.2 aio_suspend F
GLIBC_2.2 aio_suspend64 F
GLIBC_2.2 aio_write F
GLIBC_2.2 aio_write64 F
-GLIBC_2.2 clock_getcpuclockid F
-GLIBC_2.2 clock_getres F
-GLIBC_2.2 clock_gettime F
-GLIBC_2.2 clock_nanosleep F
-GLIBC_2.2 clock_settime F
GLIBC_2.2 lio_listio F
GLIBC_2.2 lio_listio64 F
GLIBC_2.2 shm_open F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c b/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c
index f3dae0ad70..d30a80f61b 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <libintl.h>
#include <stdarg.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h b/sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h
index fc0af284de..93c20c1bef 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/register-dump.h
@@ -1,5 +1,5 @@
/* Dump registers. 64 bit S/390 version.
- Copyright (C) 2001-2018 Free Software Foundation, Inc.
+ Copyright (C) 2001-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -15,7 +15,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sys/uio.h>
#include <_itoa.h>
@@ -48,7 +48,7 @@ hexvalue (unsigned long int value, char *buf, size_t len)
}
static void
-register_dump (int fd, struct sigcontext *ctx)
+register_dump (int fd, struct ucontext_t *ctx)
{
char regs[19][16];
struct iovec iov[40];
@@ -64,24 +64,24 @@ register_dump (int fd, struct sigcontext *ctx)
++nr
/* Generate strings of register contents. */
- hexvalue (ctx->sregs->regs.gprs[0], regs[0], 16);
- hexvalue (ctx->sregs->regs.gprs[1], regs[1], 16);
- hexvalue (ctx->sregs->regs.gprs[2], regs[2], 16);
- hexvalue (ctx->sregs->regs.gprs[3], regs[3], 16);
- hexvalue (ctx->sregs->regs.gprs[4], regs[4], 16);
- hexvalue (ctx->sregs->regs.gprs[5], regs[5], 16);
- hexvalue (ctx->sregs->regs.gprs[6], regs[6], 16);
- hexvalue (ctx->sregs->regs.gprs[7], regs[7], 16);
- hexvalue (ctx->sregs->regs.gprs[8], regs[8], 16);
- hexvalue (ctx->sregs->regs.gprs[9], regs[9], 16);
- hexvalue (ctx->sregs->regs.gprs[10], regs[10], 16);
- hexvalue (ctx->sregs->regs.gprs[11], regs[11], 16);
- hexvalue (ctx->sregs->regs.gprs[12], regs[12], 16);
- hexvalue (ctx->sregs->regs.gprs[13], regs[13], 16);
- hexvalue (ctx->sregs->regs.gprs[14], regs[14], 16);
- hexvalue (ctx->sregs->regs.gprs[15], regs[15], 16);
- hexvalue (ctx->sregs->regs.psw.mask, regs[16], 16);
- hexvalue (ctx->sregs->regs.psw.addr, regs[17], 16);
+ hexvalue (ctx->uc_mcontext.gregs[0], regs[0], 16);
+ hexvalue (ctx->uc_mcontext.gregs[1], regs[1], 16);
+ hexvalue (ctx->uc_mcontext.gregs[2], regs[2], 16);
+ hexvalue (ctx->uc_mcontext.gregs[3], regs[3], 16);
+ hexvalue (ctx->uc_mcontext.gregs[4], regs[4], 16);
+ hexvalue (ctx->uc_mcontext.gregs[5], regs[5], 16);
+ hexvalue (ctx->uc_mcontext.gregs[6], regs[6], 16);
+ hexvalue (ctx->uc_mcontext.gregs[7], regs[7], 16);
+ hexvalue (ctx->uc_mcontext.gregs[8], regs[8], 16);
+ hexvalue (ctx->uc_mcontext.gregs[9], regs[9], 16);
+ hexvalue (ctx->uc_mcontext.gregs[10], regs[10], 16);
+ hexvalue (ctx->uc_mcontext.gregs[11], regs[11], 16);
+ hexvalue (ctx->uc_mcontext.gregs[12], regs[12], 16);
+ hexvalue (ctx->uc_mcontext.gregs[13], regs[13], 16);
+ hexvalue (ctx->uc_mcontext.gregs[14], regs[14], 16);
+ hexvalue (ctx->uc_mcontext.gregs[15], regs[15], 16);
+ hexvalue (ctx->uc_mcontext.psw.mask, regs[16], 16);
+ hexvalue (ctx->uc_mcontext.psw.addr, regs[17], 16);
/* Generate the output. */
ADD_STRING ("Register dump:\n\n GPR0: ");
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S b/sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S
index 180055dec4..10e506fe00 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <features.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c b/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c
index 81352fe96a..f0eb099748 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
/* 64 bit Linux for S/390 only has rt signals, thus we do not even want to try
falling back to the old style signals as the default Linux handler does. */
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S b/sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S
index 499f6e97a5..9dd618d41a 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/swapcontext.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <features.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/syscall.S b/sysdeps/unix/sysv/linux/s390/s390-64/syscall.S
index c8b2650115..bcffab6f4e 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/syscall.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/syscall.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
@@ -22,41 +22,22 @@
more information about the value -4095 used below.*/
ENTRY (syscall)
- /* Save registers and setup stack. */
- stmg %r6,%r15,48(%r15) /* Save registers. */
- cfi_offset (%r15,-40)
- cfi_offset (%r14,-48)
- cfi_offset (%r13,-56)
- cfi_offset (%r12,-64)
- cfi_offset (%r11,-72)
- cfi_offset (%r10,-80)
- cfi_offset (%r9,-88)
- cfi_offset (%r8,-96)
+ stmg %r6,%r7,48(%r15) /* Save registers. */
cfi_offset (%r7,-104)
cfi_offset (%r6,-112)
- lgr %r1,%r15
- lg %r0,8(%r15) /* Load eos. */
- aghi %r15,-160 /* Buy stack space. */
- cfi_adjust_cfa_offset (160)
- stg %r1,0(%r15) /* Store back chain. */
- stg %r0,8(%r15) /* Store eos. */
lgr %r1,%r2 /* Move syscall number. */
lgr %r2,%r3 /* First parameter. */
lgr %r3,%r4 /* Second parameter. */
lgr %r4,%r5 /* Third parameter. */
lgr %r5,%r6 /* Fourth parameter. */
- lg %r6,320(%r15) /* Fifth parameter. */
- lg %r7,328(%r15) /* Sixth parameter. */
-
+ lmg %r6,%r7,160(%r15) /* Fifth / Sixth parameter. */
svc 0
- lg %r15,0(%r15) /* Load back chain. */
- cfi_adjust_cfa_offset (-160)
- lmg %r6,%r15,48(%r15) /* Load registers. */
+
+ lmg %r6,%r7,48(%r15) /* Load registers. */
lghi %r0,-4095
clgr %r2,%r0 /* Check R2 for error. */
jgnl SYSCALL_ERROR_LABEL
br %r14 /* Return to caller. */
PSEUDO_END (syscall)
-
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S
index 151686302a..b17a221cd2 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2001-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#include <tls.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
index 0414fc5f2c..5c6b818517 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
@@ -1,5 +1,5 @@
/* Assembler macros for 64 bit S/390.
- Copyright (C) 2001-2018 Free Software Foundation, Inc.
+ Copyright (C) 2001-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -15,13 +15,14 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _LINUX_S390_SYSDEP_H
#define _LINUX_S390_SYSDEP_H
#include <sysdeps/s390/s390-64/sysdep.h>
#include <sysdeps/unix/sysdep.h>
+#include <sysdeps/unix/sysv/linux/s390/sysdep.h>
#include <sysdeps/unix/sysv/linux/sysdep.h>
#include <dl-sysdep.h> /* For RTLD_PRIVATE_ERRNO. */
#include <tls.h>
@@ -239,9 +240,9 @@
#undef INTERNAL_SYSCALL
#define INTERNAL_SYSCALL(name, err, nr, args...) \
- (((__NR_##name) < 256) ? \
- INTERNAL_SYSCALL_DIRECT(name, err, nr, args) : \
- INTERNAL_SYSCALL_SVC0(name, err,nr, args))
+ (((__NR_##name) < 256) \
+ ? INTERNAL_SYSCALL_DIRECT(name, err, nr, args) \
+ : INTERNAL_SYSCALL_SVC0(name, err,nr, args))
#undef INTERNAL_SYSCALL_ERROR_P
#define INTERNAL_SYSCALL_ERROR_P(val, err) \
@@ -277,12 +278,6 @@
#define ASMFMT_5 , "0" (gpr2), "d" (gpr3), "d" (gpr4), "d" (gpr5), "d" (gpr6)
#define ASMFMT_6 , "0" (gpr2), "d" (gpr3), "d" (gpr4), "d" (gpr5), "d" (gpr6), "d" (gpr7)
-/* List of system calls which are supported as vsyscalls. */
-#define HAVE_CLOCK_GETRES_VSYSCALL 1
-#define HAVE_CLOCK_GETTIME_VSYSCALL 1
-#define HAVE_GETTIMEOFDAY_VSYSCALL 1
-#define HAVE_GETCPU_VSYSCALL 1
-
#define SINGLE_THREAD_BY_GLOBAL 1
/* Pointer mangling support. */
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/vfork.S b/sysdeps/unix/sysv/linux/s390/s390-64/vfork.S
index 60030bad95..f46c049848 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/vfork.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/vfork.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2004-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2004-2019 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>, 2004.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <sysdep.h>
#define _ERRNO_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/semtimedop.c b/sysdeps/unix/sysv/linux/s390/semtimedop.c
deleted file mode 100644
index b405e4e73e..0000000000
--- a/sysdeps/unix/sysv/linux/s390/semtimedop.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright (C) 2003-2018 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Martin Schwidefsky <schwidefsky@de.ibm.com>, 2003.
-
- 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/>. */
-
-#include <sys/sem.h>
-#include <ipc_priv.h>
-#include <sysdep.h>
-#include <errno.h>
-
-/* Perform user-defined atomical operation of array of semaphores. */
-
-int
-semtimedop (int semid, struct sembuf *sops, size_t nsops,
- const struct timespec *timeout)
-{
- /* The s390 sys_ipc variant has only five parameters instead of six
- (as for default variant) and the only difference is the handling of
- SEMTIMEDOP where on s390 the third parameter is used as a pointer
- to a struct timespec where the generic variant uses fifth parameter. */
- return INLINE_SYSCALL_CALL (ipc, IPCOP_semtimedop, semid, nsops, timeout,
- sops);
-}
diff --git a/sysdeps/unix/sysv/linux/s390/sigcontextinfo.h b/sysdeps/unix/sysv/linux/s390/sigcontextinfo.h
index 0826e58e2a..84a7a50b43 100644
--- a/sysdeps/unix/sysv/linux/s390/sigcontextinfo.h
+++ b/sysdeps/unix/sysv/linux/s390/sigcontextinfo.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,9 +14,21 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef _SIGCONTEXTINFO_H
+#define _SIGCONTEXTINFO_H
#include <signal.h>
-#define SIGCONTEXT struct sigcontext *
-#define GET_PC(ctx) ((void *)((ctx)->sregs->regs.psw.addr))
+static inline uintptr_t
+sigcontext_get_pc (const ucontext_t *ctx)
+{
+#ifdef __s390x__
+ return ctx->uc_mcontext.psw.addr;
+#else
+ return ctx->uc_mcontext.psw.addr & 0x7FFFFFFF;
+#endif
+}
+
+#endif
diff --git a/sysdeps/unix/sysv/linux/s390/sys/elf.h b/sysdeps/unix/sysv/linux/s390/sys/elf.h
index c464a0cf3e..468e1d461a 100644
--- a/sysdeps/unix/sysv/linux/s390/sys/elf.h
+++ b/sysdeps/unix/sysv/linux/s390/sys/elf.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _SYS_ELF_H
#define _SYS_ELF_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/sys/procfs.h b/sysdeps/unix/sysv/linux/s390/sys/procfs.h
deleted file mode 100644
index d6b10a9b4f..0000000000
--- a/sysdeps/unix/sysv/linux/s390/sys/procfs.h
+++ /dev/null
@@ -1,176 +0,0 @@
-/* Copyright (C) 2000-2018 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 _SYS_PROCFS_H
-#define _SYS_PROCFS_H 1
-
-/* This is somewhat modelled after the file of the same name on SVR4
- systems. It provides a definition of the core file format for ELF
- used on Linux. It doesn't have anything to do with the /proc file
- system, even though Linux has one.
-
- Anyway, the whole purpose of this file is for GDB and GDB only.
- Don't read too much into it. Don't use it for anything other than
- GDB unless you know what you are doing. */
-
-#include <features.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <sys/user.h>
-#include <sys/ucontext.h>
-
-__BEGIN_DECLS
-
-typedef greg_t elf_greg_t;
-#define ELF_NGREG NGREG
-typedef gregset_t elf_gregset_t;
-typedef fpreg_t elf_fpreg_t;
-typedef fpregset_t elf_fpregset_t;
-
-/* Signal info. */
-struct elf_siginfo
- {
- int si_signo; /* Signal number. */
- int si_code; /* Extra code. */
- int si_errno; /* Errno. */
- };
-
-
-/* Definitions to generate Intel SVR4-like core files. These mostly
- have the same names as the SVR4 types with "elf_" tacked on the
- front to prevent clashes with Linux definitions, and the typedef
- forms have been avoided. This is mostly like the SVR4 structure,
- but more Linuxy, with things that Linux does not support and which
- GDB doesn't really use excluded. */
-
-struct elf_prstatus
- {
- struct elf_siginfo pr_info; /* Info associated with signal. */
- short int pr_cursig; /* Current signal. */
- unsigned long int pr_sigpend; /* Set of pending signals. */
- unsigned long int pr_sighold; /* Set of held signals. */
- __pid_t pr_pid;
- __pid_t pr_ppid;
- __pid_t pr_pgrp;
- __pid_t pr_sid;
- struct timeval pr_utime; /* User time. */
- struct timeval pr_stime; /* System time. */
- struct timeval pr_cutime; /* Cumulative user time. */
- struct timeval pr_cstime; /* Cumulative system time. */
- elf_gregset_t pr_reg; /* GP registers. */
- int pr_fpvalid; /* True if math copro being used. */
- };
-
-
-#define ELF_PRARGSZ (80) /* Number of chars for args. */
-
-struct elf_prpsinfo
- {
- char pr_state; /* Numeric process state. */
- char pr_sname; /* Char for pr_state. */
- char pr_zomb; /* Zombie. */
- char pr_nice; /* Nice val. */
- unsigned long int pr_flag; /* Flags. */
-#if __WORDSIZE == 64
- unsigned int pr_uid;
- unsigned int pr_gid;
-#else
- unsigned short int pr_uid;
- unsigned short int pr_gid;
-#endif
- int pr_pid, pr_ppid, pr_pgrp, pr_sid;
- /* Lots missing */
- char pr_fname[16]; /* Filename of executable. */
- char pr_psargs[ELF_PRARGSZ]; /* Initial part of arg list. */
- };
-
-/* The rest of this file provides the types for emulation of the
- Solaris <proc_service.h> interfaces that should be implemented by
- users of libthread_db. */
-
-/* Addresses. */
-typedef void *psaddr_t;
-
-/* Register sets. Linux has different names. */
-typedef elf_gregset_t prgregset_t;
-typedef elf_fpregset_t prfpregset_t;
-
-/* We don't have any differences between processes and threads,
- therefore have only one PID type. */
-typedef __pid_t lwpid_t;
-
-/* Process status and info. In the end we do provide typedefs for them. */
-typedef struct elf_prstatus prstatus_t;
-typedef struct elf_prpsinfo prpsinfo_t;
-
-#if __WORDSIZE == 64
-
-/* Provide 32-bit variants so that BFD can read 32-bit
- core files. */
-#define ELF_NGREG32 36
-typedef unsigned int elf_greg_t32;
-typedef elf_greg_t32
- elf_gregset_t32[ELF_NGREG32] __attribute__ ((__aligned__ (8)));
-typedef elf_fpregset_t elf_fpregset_t32;
-
-struct elf_prstatus32
- {
- struct elf_siginfo pr_info; /* Info associated with signal. */
- short int pr_cursig; /* Current signal. */
- unsigned int pr_sigpend; /* Set of pending signals. */
- unsigned int pr_sighold; /* Set of held signals. */
- __pid_t pr_pid;
- __pid_t pr_ppid;
- __pid_t pr_pgrp;
- __pid_t pr_sid;
- struct
- {
- int tv_sec, tv_usec;
- } pr_utime, /* User time. */
- pr_stime, /* System time. */
- pr_cutime, /* Cumulative user time. */
- pr_cstime; /* Cumulative system time. */
- elf_gregset_t32 pr_reg; /* GP registers. */
- int pr_fpvalid; /* True if math copro being used. */
- };
-
-struct elf_prpsinfo32
- {
- char pr_state; /* Numeric process state. */
- char pr_sname; /* Char for pr_state. */
- char pr_zomb; /* Zombie. */
- char pr_nice; /* Nice val. */
- unsigned int pr_flag; /* Flags. */
- unsigned short int pr_uid;
- unsigned short int pr_gid;
- int pr_pid, pr_ppid, pr_pgrp, pr_sid;
- /* Lots missing */
- char pr_fname[16]; /* Filename of executable. */
- char pr_psargs[ELF_PRARGSZ]; /* Initial part of arg list. */
- };
-
-typedef elf_gregset_t32 prgregset32_t;
-typedef elf_fpregset_t32 prfpregset32_t;
-
-typedef struct elf_prstatus32 prstatus32_t;
-typedef struct elf_prpsinfo32 prpsinfo32_t;
-
-#endif
-
-__END_DECLS
-
-#endif /* sys/procfs.h */
diff --git a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
index d60a034b11..5b4314d0d8 100644
--- a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
+++ b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
@@ -1,5 +1,5 @@
/* `ptrace' debugger support interface. Linux/S390 version.
- Copyright (C) 2000-2018 Free Software Foundation, Inc.
+ Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Denis Joseph Barrow (djbarrow@de.ibm.com).
This file is part of the GNU C Library.
@@ -15,7 +15,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _SYS_PTRACE_H
#define _SYS_PTRACE_H 1
@@ -79,6 +79,11 @@ __BEGIN_DECLS
# undef PTRACE_EVENT_SECCOMP
# undef PTRACE_EVENT_STOP
# undef PTRACE_PEEKSIGINFO_SHARED
+# undef PTRACE_GET_SYSCALL_INFO
+# undef PTRACE_SYSCALL_INFO_NONE
+# undef PTRACE_SYSCALL_INFO_ENTRY
+# undef PTRACE_SYSCALL_INFO_EXIT
+# undef PTRACE_SYSCALL_INFO_SECCOMP
#endif
/* Type of the REQUEST argument to `ptrace.' */
enum __ptrace_request
@@ -198,6 +203,10 @@ enum __ptrace_request
PTRACE_SECCOMP_GET_METADATA = 0x420d,
#define PTRACE_SECCOMP_GET_METADATA PTRACE_SECCOMP_GET_METADATA
+ /* Get information about system call. */
+ PTRACE_GET_SYSCALL_INFO = 0x420e,
+#define PTRACE_GET_SYSCALL_INFO PTRACE_GET_SYSCALL_INFO
+
PTRACE_PEEKUSR_AREA = 0x5000,
#define PTRACE_PEEKUSR_AREA PTRACE_PEEKUSR_AREA
diff --git a/sysdeps/unix/sysv/linux/s390/sys/ucontext.h b/sysdeps/unix/sysv/linux/s390/sys/ucontext.h
index 5efdcfb76c..618910467f 100644
--- a/sysdeps/unix/sysv/linux/s390/sys/ucontext.h
+++ b/sysdeps/unix/sysv/linux/s390/sys/ucontext.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 Free Software Foundation, Inc.
Contributed by Denis Joseph Barrow (djbarrow@de.ibm.com).
This file is part of the GNU C Library.
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _SYS_UCONTEXT_H
#define _SYS_UCONTEXT_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/sys/user.h b/sysdeps/unix/sysv/linux/s390/sys/user.h
index 05ecb3c083..b40293bfb9 100644
--- a/sysdeps/unix/sysv/linux/s390/sys/user.h
+++ b/sysdeps/unix/sysv/linux/s390/sys/user.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2019 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
@@ -13,7 +13,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#ifndef _SYS_USER_H
#define _SYS_USER_H 1
diff --git a/sysdeps/unix/sysv/linux/s390/sysconf.c b/sysdeps/unix/sysv/linux/s390/sysconf.c
index 433b6ef890..c502a35690 100644
--- a/sysdeps/unix/sysv/linux/s390/sysconf.c
+++ b/sysdeps/unix/sysv/linux/s390/sysconf.c
@@ -1,5 +1,5 @@
/* Get system parameters, e.g. cache information. S390/S390x version.
- Copyright (C) 2015-2018 Free Software Foundation, Inc.
+ Copyright (C) 2015-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <unistd.h>
#include <dl-procinfo.h>
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h b/sysdeps/unix/sysv/linux/s390/sysdep.h
index a14b89cf08..97d78e246c 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h
+++ b/sysdeps/unix/sysv/linux/s390/sysdep.h
@@ -1,5 +1,5 @@
-/* Low-level statistical profiling support function. Linux/s390 version.
- Copyright (C) 2000-2018 Free Software Foundation, Inc.
+/* Syscall definitions, Linux s390 version.
+ Copyright (C) 2019 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
@@ -16,11 +16,11 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <signal.h>
-#include <sigcontextinfo.h>
+#define VDSO_NAME "LINUX_2.6.29"
+#define VDSO_HASH 123718585
-static void
-__profil_counter (int signo, SIGCONTEXT scp)
-{
- profil_count((void *) ((unsigned long) GET_PC (scp) & 0x7fffffffUL));
-}
+/* List of system calls which are supported as vsyscalls. */
+#define HAVE_CLOCK_GETRES_VSYSCALL "__kernel_clock_getres"
+#define HAVE_CLOCK_GETTIME_VSYSCALL "__kernel_clock_gettime"
+#define HAVE_GETTIMEOFDAY_VSYSCALL "__kernel_gettimeofday"
+#define HAVE_GETCPU_VSYSCALL "__kernel_getcpu"
diff --git a/sysdeps/unix/sysv/linux/s390/system.c b/sysdeps/unix/sysv/linux/s390/system.c
deleted file mode 100644
index d8ef461334..0000000000
--- a/sysdeps/unix/sysv/linux/s390/system.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 2003-2018 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/>. */
-
-/* We have to and actually can handle cancelable system(). The big
- problem: we have to kill the child process if necessary. To do
- this a cleanup handler has to be registered and is has to be able
- to find the PID of the child. The main problem is to reliable have
- the PID when needed. It is not necessary for the parent thread to
- return. It might still be in the kernel when the cancellation
- request comes. Therefore we have to use the clone() calls ability
- to have the kernel write the PID into the user-level variable. */
-#define FORK() \
- INLINE_SYSCALL (clone, 3, 0, CLONE_PARENT_SETTID | SIGCHLD, &pid)
-
-#include "../system.c"
diff --git a/sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c b/sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c
index c4419516f9..5f9329205d 100644
--- a/sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c
+++ b/sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c
@@ -1,5 +1,5 @@
/* Testing s390x PTRACE_SINGLEBLOCK ptrace request.
- Copyright (C) 2017-2018 Free Software Foundation, Inc.
+ Copyright (C) 2017-2019 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
@@ -14,7 +14,7 @@
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/>. */
+ <https://www.gnu.org/licenses/>. */
#include <stdio.h>
#include <stdlib.h>