handle EINTR on sock.recv()