Hi, Jens, Jens Axboe <axboe@xxxxxxxxx> writes: > It's not used for anything, and we're wasting time passing in zeroes > where we could just ignore it instead. Update all ki_complete users in > the kernel to drop that last argument. What does "wasting time passing in zeroes" mean? > The exception is the USB gadget code, which passes in non-zero. But > since nobody every looks at ret2, it's still pointless. As Christoph mentioned, it is passed along to userspace as part of the io_event. > @@ -499,8 +499,7 @@ static void ep_aio_complete(struct usb_ep *ep, struct usb_request *req) > /* aio_complete() reports bytes-transferred _and_ faults */ Note this comment ^^^ > > iocb->ki_complete(iocb, > - req->actual ? req->actual : (long)req->status, > - req->status); > + req->actual ? req->actual : (long)req->status); We can't know whether some userspace implementation relies on this behavior, so I don't think you can change it. Cheers, Jeff p.s. Please CC linux-aio on future changes to the aio code.