fix (hopefully) all hard-coded 8's for kernel sigset_t size

some minor changes to how hard-coded sets for thread-related purposes
are handled were also needed, since the old object sizes were not
necessarily sufficient. things have gotten a bit ugly in this area,
and i think a cleanup is in order at some point, but for now the goal
is just to get the code working on all supported archs including mips,
which was badly broken by linux rejecting syscalls with the wrong
sigset_t size.
This commit is contained in:
Rich Felker 2012-08-09 22:52:13 -04:00
commit 2f437040e7
14 changed files with 31 additions and 20 deletions

View file

@ -3,5 +3,5 @@
int epoll_pwait(int fd, struct epoll_event *ev, int cnt, int to, const sigset_t *sigs)
{
return syscall(SYS_epoll_pwait, fd, ev, cnt, to, sigs, 8);
return syscall(SYS_epoll_pwait, fd, ev, cnt, to, sigs, __SYSCALL_SSLEN);
}

View file

@ -3,5 +3,5 @@
int signalfd(int fd, const sigset_t *sigs, int flags)
{
return syscall(SYS_signalfd, fd, sigs, 8);
return syscall(SYS_signalfd, fd, sigs, __SYSCALL_SSLEN);
}