On 5/19/2020 3:20 PM, Jens Axboe wrote:
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
That works.
Thanks!
--bijan