linux.zig: epoll_wait: pass kernel sigset size

Linux kernel syscalls expect to be given the number of bits of sigset that
they're built for, not the full 1024-bit sigsets that glibc supports.

I audited the other syscalls in here that use `sigset_t` and they're all
using `NSIG / 8`.

Fixes #12715
This commit is contained in:
Pat Tullmann 2025-04-08 14:03:31 -07:00 committed by Alex Rønne Petersen
parent f4e3631655
commit 991560fb49

View File

@ -2242,7 +2242,7 @@ pub fn epoll_pwait(epoll_fd: i32, events: [*]epoll_event, maxevents: u32, timeou
@as(usize, @intCast(maxevents)),
@as(usize, @bitCast(@as(isize, timeout))),
@intFromPtr(sigmask),
@sizeOf(sigset_t),
NSIG / 8,
);
}