> -----Original Message----- > From: David Wei <dw@xxxxxxxxxxx> > Sent: Saturday, December 7, 2024 8:42 AM > To: io-uring@xxxxxxxxxxxxxxx > Cc: David Wei <dw@xxxxxxxxxxx>; Jens Axboe <axboe@xxxxxxxxx>; Pavel > Begunkov <asml.silence@xxxxxxxxx> > Subject: [PATCH for-next] io_uring: clean up io_prep_rw_setup() > > Remove unnecessary call to iov_iter_save_state() in io_prep_rw_setup() as > io_import_iovec() already does this. Then the result from > io_import_iovec() can be returned directly. > > Signed-off-by: David Wei <dw@xxxxxxxxxxx> > --- > io_uring/rw.c | 8 +------- > 1 file changed, 1 insertion(+), 7 deletions(-) > > diff --git a/io_uring/rw.c b/io_uring/rw.c index 04e4467ab0ee..5b24fd8b69f6 > 100644 > --- a/io_uring/rw.c > +++ b/io_uring/rw.c > @@ -240,7 +240,6 @@ static int io_rw_alloc_async(struct io_kiocb *req) > static int io_prep_rw_setup(struct io_kiocb *req, int ddir, bool do_import) { > struct io_async_rw *rw; > - int ret; > > if (io_rw_alloc_async(req)) > return -ENOMEM; > @@ -249,12 +248,7 @@ static int io_prep_rw_setup(struct io_kiocb *req, int > ddir, bool do_import) > return 0; > > rw = req->async_data; > - ret = io_import_iovec(ddir, req, rw, 0); > - if (unlikely(ret < 0)) > - return ret; > - > - iov_iter_save_state(&rw->iter, &rw->iter_state); > - return 0; > + return io_import_iovec(ddir, req, rw, 0); > } > > static inline void io_meta_save_state(struct io_async_rw *io) > -- > 2.43.5 > Look good to me. No logic changes, only compilation and testing. Tested-by: Li Zetao <lizetao1@xxxxxxxxxx>