On Fri, Mar 27, 2020 at 03:36:52PM +0800, Xiaoguang Wang wrote: > Cleanup io_alloc_async_ctx() a bit, add a new __io_alloc_async_ctx(), > so io_setup_async_rw() won't need to check whether async_ctx is true > or false again. > > Signed-off-by: Xiaoguang Wang <xiaoguang.wang@xxxxxxxxxxxxxxxxx> > --- > fs/io_uring.c | 12 +++++++++--- > 1 file changed, 9 insertions(+), 3 deletions(-) Looks good to me! Reviewed-by: Stefano Garzarella <sgarzare@xxxxxxxxxx> Thanks, Stefano > > diff --git a/fs/io_uring.c b/fs/io_uring.c > index 3affd96a98ba..a85659eae137 100644 > --- a/fs/io_uring.c > +++ b/fs/io_uring.c > @@ -2169,12 +2169,18 @@ static void io_req_map_rw(struct io_kiocb *req, ssize_t io_size, > } > } > > +static inline int __io_alloc_async_ctx(struct io_kiocb *req) > +{ > + req->io = kmalloc(sizeof(*req->io), GFP_KERNEL); > + return req->io == NULL; > +} > + > static int io_alloc_async_ctx(struct io_kiocb *req) > { > if (!io_op_defs[req->opcode].async_ctx) > return 0; > - req->io = kmalloc(sizeof(*req->io), GFP_KERNEL); > - return req->io == NULL; > + > + return __io_alloc_async_ctx(req); > } > > static int io_setup_async_rw(struct io_kiocb *req, ssize_t io_size, > @@ -2184,7 +2190,7 @@ static int io_setup_async_rw(struct io_kiocb *req, ssize_t io_size, > if (!io_op_defs[req->opcode].async_ctx) > return 0; > if (!req->io) { > - if (io_alloc_async_ctx(req)) > + if (__io_alloc_async_ctx(req)) > return -ENOMEM; > > io_req_map_rw(req, io_size, iovec, fast_iov, iter); > -- > 2.17.2 >