iov_iter_save_state(iter, state);
}
req->result = iov_iter_count(iter);
iov_iter_save_state(iter, state);
}
req->result = iov_iter_count(iter);
/* Ensure we clear previously set non-block flag */
if (!force_nonblock)
/* Ensure we clear previously set non-block flag */
if (!force_nonblock)
} else {
copy_iov:
iov_iter_restore(iter, state);
} else {
copy_iov:
iov_iter_restore(iter, state);
- if (ret2 > 0)
- iov_iter_advance(iter, ret2);
ret = io_setup_async_rw(req, iovec, inline_vecs, iter, false);
return ret ?: -EAGAIN;
}
ret = io_setup_async_rw(req, iovec, inline_vecs, iter, false);
return ret ?: -EAGAIN;
}