Add eagain support