kqueue and poll actually raise OSError on interrupted system call