From 09153638cfef9166586b0c21e852ea0d6f15a0fd Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Fri, 27 Dec 2019 17:21:56 -0300 Subject: alpha: Set wait4 as cancellation entrypoint Since both wait and waitpid are implemented on top of wait4. It fixes nptl/tst-cancel{x}{4,5,7}. Checked on alpha-linux-gnu. --- sysdeps/unix/sysv/linux/alpha/syscalls.list | 1 - sysdeps/unix/sysv/linux/alpha/wait4.c | 26 ++++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 sysdeps/unix/sysv/linux/alpha/wait4.c (limited to 'sysdeps/unix/sysv/linux/alpha') diff --git a/sysdeps/unix/sysv/linux/alpha/syscalls.list b/sysdeps/unix/sysv/linux/alpha/syscalls.list index 95a27e18e8..caf45ea359 100644 --- a/sysdeps/unix/sysv/linux/alpha/syscalls.list +++ b/sysdeps/unix/sysv/linux/alpha/syscalls.list @@ -28,7 +28,6 @@ getitimer - getitimer i:ip __getitimer getitimer@@GLIBC_2.1 setitimer - setitimer i:ipP __setitimer setitimer@@GLIBC_2.1 utimes - utimes i:sp __utimes utimes@@GLIBC_2.1 getrusage - getrusage i:ip __getrusage getrusage@@GLIBC_2.1 -wait4 - wait4 i:iWiP __wait4 wait4@@GLIBC_2.1 # avoid 64-bit aliases on 32-bit statfs syscalls fstatfs - fstatfs i:ip __fstatfs fstatfs diff --git a/sysdeps/unix/sysv/linux/alpha/wait4.c b/sysdeps/unix/sysv/linux/alpha/wait4.c new file mode 100644 index 0000000000..0c86306a5a --- /dev/null +++ b/sysdeps/unix/sysv/linux/alpha/wait4.c @@ -0,0 +1,26 @@ +/* wait4 -- wait for process to change state. Linux/Alpha 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 + . */ + +#include + +#undef weak_alias +#define weak_alias(a, b) +#include +versioned_symbol (libc, __wait4, wait4, GLIBC_2_1); + +/* GLIBC_2_0 version is implemented at osf_wait4.c. */ -- cgit 1.4.1