Christoph Hellwig <hch@xxxxxx> writes: > Don't reference the kiocb structure from the common aio code, and move > any use of it into helper specific to the read/write path. This is in > preparation for aio_poll support that wants to use the space for different > fields. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> I think this all looks okay (making sure everything was still cleaned up in the error cases was a bit of a chore). One nit below. > +static int aio_prep_rw(struct kiocb *req, struct iocb *iocb) > +{ > + int ret; > + > + req->ki_filp = fget(iocb->aio_fildes); > + if (unlikely(!req->ki_filp)) > + return -EBADF; > + req->ki_complete = aio_complete_rw; > + req->ki_flags = 0; The above assignment seems superfluous... > + req->ki_pos = iocb->aio_offset; > + req->ki_flags = iocb_flags(req->ki_filp); because of this. Acked-by: Jeff Moyer <jmoyer@xxxxxxxxxx>