int ret;
CANCELPT_BEGIN;
do {
- ret = syscall4(__NR_rt_sigtimedwait, (long)mask, (long)si, (long)timeout, SYSCALL_SIGSET_SIZE);
+ ret = syscall(SYS_rt_sigtimedwait, mask, si, timeout, 8);
+ if (ret<0) CANCELPT_TRY;
} while (ret<0 && errno==EINTR);
CANCELPT_END;
return ret;