On 5/19/20 4:07 PM, Jens Axboe wrote: > On 5/19/20 3:52 PM, Bijan Mottahedeh wrote: >> kiocb.private is used in iomap_dio_rw() so store buf_index separately. > > Hmm, that's no good, the owner of the iocb really should own ->private > as well. > > The downside of this patch is that io_rw now spills into the next > cacheline, which propagates to io_kiocb as well. iocb has 4 bytes > of padding, but probably cleaner if we can stuff it into io_kiocb > instead. How about adding a u16 after opcode? There's a 2 byte > hole there, so it would not impact the size of io_kiocb. I applied your patch, but moved the buf_index to not grow the structure: https://git.kernel.dk/cgit/linux-block/commit/?h=io_uring-5.7&id=4f4eeba87cc731b200bff9372d14a80f5996b277 -- Jens Axboe