This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH v2 5/8] Cleanup Linux sigqueue implementation
- From: Adhemerval Zanella <adhemerval dot zanella at linaro dot org>
- To: libc-alpha at sourceware dot org
- Date: Mon, 6 Nov 2017 11:37:03 -0200
- Subject: [PATCH v2 5/8] Cleanup Linux sigqueue implementation
- Authentication-results: sourceware.org; auth=none
- References: <1509975426-1772-1-git-send-email-adhemerval.zanella@linaro.org>
Changes from previous version:
- Add a note about __NR_rt_sigqueueinfo Linux minimum version support.
---
This patch simplify Linux sigqueue implementation by assuming
__NR_rt_sigqueueinfo existence due minimum kernel requirement
(tt pre-dates Linux git inclusion for Linux 2.6.12).
Checked on x86_64-linux-gnu.
* sysdeps/unix/sysv/linux/sigqueue.c (__sigqueue): Asssume
__NR_rt_sigqueueinfo.
Signed-off-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Reviewed-by: Zack Weinberg <zackw@panix.com>
---
ChangeLog | 3 +++
sysdeps/unix/sysv/linux/sigqueue.c | 10 ++--------
2 files changed, 5 insertions(+), 8 deletions(-)
diff --git a/sysdeps/unix/sysv/linux/sigqueue.c b/sysdeps/unix/sysv/linux/sigqueue.c
index 059e524..67bb6b2 100644
--- a/sysdeps/unix/sysv/linux/sigqueue.c
+++ b/sysdeps/unix/sysv/linux/sigqueue.c
@@ -17,13 +17,10 @@
#include <errno.h>
#include <signal.h>
-#include <unistd.h>
#include <string.h>
-
+#include <unistd.h>
#include <sysdep.h>
-#include <sys/syscall.h>
-#ifdef __NR_rt_sigqueueinfo
/* Return any pending signal or wait for one for the given time. */
int
__sigqueue (pid_t pid, int sig, const union sigval val)
@@ -40,9 +37,6 @@ __sigqueue (pid_t pid, int sig, const union sigval val)
info.si_uid = __getuid ();
info.si_value = val;
- return INLINE_SYSCALL (rt_sigqueueinfo, 3, pid, sig, &info);
+ return INLINE_SYSCALL_CALL (rt_sigqueueinfo, pid, sig, &info);
}
weak_alias (__sigqueue, sigqueue)
-#else
-# include <signal/sigqueue.c>
-#endif
--
2.7.4