From f26d456b98abf02b3ff92f1a3c0d4473b7ffd85c Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Thu, 23 Apr 2020 10:58:01 -0300 Subject: linux: Fix __NSIG_WORDS and add __NSIG_BYTES The __NSIG_WORDS value is based on minimum number of words to hold the maximum number of signals supported by the architecture. This patch also adds __NSIG_BYTES, which is the number of bytes required to represent the supported number of signals. It is used in syscalls which takes a sigset_t. Checked on x86_64-linux-gnu and i686-linux-gnu. Tested-by: Carlos O'Donell Reviewed-by: Carlos O'Donell --- sysdeps/unix/sysv/linux/sigaction.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sysdeps/unix/sysv/linux/sigaction.c') diff --git a/sysdeps/unix/sysv/linux/sigaction.c b/sysdeps/unix/sysv/linux/sigaction.c index 4e6d11a..f27349d 100644 --- a/sysdeps/unix/sysv/linux/sigaction.c +++ b/sysdeps/unix/sysv/linux/sigaction.c @@ -57,7 +57,8 @@ __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact) real size of the user-level sigset_t. */ result = INLINE_SYSCALL_CALL (rt_sigaction, sig, act ? &kact : NULL, - oact ? &koact : NULL, STUB (act, _NSIG / 8)); + oact ? &koact : NULL, STUB (act, + __NSIG_BYTES)); if (oact && result >= 0) { -- cgit v1.1