diff --git a/fs/io_uring.c b/fs/io_uring.c index bc7028d9e6f9248248d7fac3fcc1ec00c6b078da..ed7032bb76bf7fe21b850129b6e84242066aac2e 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -3071,7 +3071,10 @@ static inline int io_rw_prep_async(struct io_kiocb *req, int rw, if (unlikely(ret < 0)) return ret; - io_req_map_rw(req, iov, iorw->fast_iov, &iorw->iter); + iorw->bytes_done = 0; + iorw->free_iovec = iov; + if (iov) + req->flags |= REQ_F_NEED_CLEANUP; return 0; }