mirror of git://sourceware.org/git/glibc.git
posix: Consolidate Linux mq_timedreceive syscall
This patch consolidates the mq_timedreceive Linux syscall generation on sysdeps/unix/sysv/linux/mq_timedreceive.c. It basically removes it from architecture auto-generation list. Checked on i686-linux-gnu, x86_64-linux-gnu, x86_64-linux-gnux32, arch64-linux-gnu, arm-linux-gnueabihf, powerpc64le-linux-gnu, sparc64-linux-gnu, and sparcv9-linux-gnu. * rt/Makefile (CFLAGS-mq_timedreceive.c): New flag. * sysdeps/unix/sysv/linux/mq_timedreceive.c: New file. * sysdeps/unix/sysv/linux/syscalls.list (mq_timedreceive): Remove from auto-generation list.
This commit is contained in:
parent
a5a34d2eaf
commit
a5fdd30597
|
|
@ -1,5 +1,10 @@
|
||||||
2017-05-18 Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
2017-05-18 Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
||||||
|
|
||||||
|
* rt/Makefile (CFLAGS-mq_timedreceive.c): New flag.
|
||||||
|
* sysdeps/unix/sysv/linux/mq_timedreceive.c: New file.
|
||||||
|
* sysdeps/unix/sysv/linux/syscalls.list (mq_timedreceive): Remove
|
||||||
|
from auto-generation list.
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add
|
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add
|
||||||
open_by_handle_at.
|
open_by_handle_at.
|
||||||
(CFLAGS-open_by_handle_at.c): New flag.
|
(CFLAGS-open_by_handle_at.c): New flag.
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,7 @@ extra-libs-others := $(extra-libs)
|
||||||
include ../Rules
|
include ../Rules
|
||||||
|
|
||||||
CFLAGS-aio_suspend.c = -fexceptions
|
CFLAGS-aio_suspend.c = -fexceptions
|
||||||
|
CFLAGS-mq_timedreceive.c = -fexceptions -fasynchronous-unwind-tables
|
||||||
CFLAGS-clock_nanosleep.c = -fexceptions -fasynchronous-unwind-tables
|
CFLAGS-clock_nanosleep.c = -fexceptions -fasynchronous-unwind-tables
|
||||||
CFLAGS-librt-cancellation.c = -fasynchronous-unwind-tables
|
CFLAGS-librt-cancellation.c = -fasynchronous-unwind-tables
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
/* Receive a message from a message queue with a timeout. Linux version.
|
||||||
|
Copyright (C) 2017 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/>. */
|
||||||
|
|
||||||
|
#include <mqueue.h>
|
||||||
|
#include <sysdep-cancel.h>
|
||||||
|
|
||||||
|
/* Receive the oldest from highest priority messages in message queue
|
||||||
|
MQDES, stop waiting if ABS_TIMEOUT expires. */
|
||||||
|
ssize_t
|
||||||
|
__mq_timedreceive (mqd_t mqdes, char *__restrict msg_ptr, size_t msg_len,
|
||||||
|
unsigned int *__restrict msg_prio,
|
||||||
|
const struct timespec *__restrict abs_timeout)
|
||||||
|
{
|
||||||
|
return SYSCALL_CANCEL (mq_timedreceive, mqdes, msg_ptr, msg_len, msg_prio,
|
||||||
|
abs_timeout);
|
||||||
|
}
|
||||||
|
hidden_def (__mq_timedreceive)
|
||||||
|
weak_alias (__mq_timedreceive, mq_timedreceive)
|
||||||
|
hidden_weak (mq_timedreceive)
|
||||||
|
|
@ -96,7 +96,6 @@ lremovexattr - lremovexattr i:ss lremovexattr
|
||||||
fremovexattr - fremovexattr i:is fremovexattr
|
fremovexattr - fremovexattr i:is fremovexattr
|
||||||
|
|
||||||
mq_timedsend - mq_timedsend Ci:ipiip __mq_timedsend mq_timedsend
|
mq_timedsend - mq_timedsend Ci:ipiip __mq_timedsend mq_timedsend
|
||||||
mq_timedreceive - mq_timedreceive Ci:ipipp __mq_timedreceive mq_timedreceive
|
|
||||||
mq_setattr - mq_getsetattr i:ipp mq_setattr
|
mq_setattr - mq_getsetattr i:ipp mq_setattr
|
||||||
|
|
||||||
timerfd_create EXTRA timerfd_create i:ii timerfd_create
|
timerfd_create EXTRA timerfd_create i:ii timerfd_create
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue