Re: [PATCH 14/17] io_uring: add polling support for uring-cmd

Christoph Hellwig
2022-03-15T08:57:59Z

On Mon, Mar 14, 2022 at 03:46:08PM +0530, Kanchan Joshi wrote:
> But, after you did bio based polling, we need just the bio to poll.
> iocb is a big structure (48 bytes), and if we try to place it in
> struct io_uring_cmd, we will just blow up the cacheline in io_uring
> (first one in io_kiocb).
> So we just store that bio pointer in io_uring_cmd on submission
> (please see patch 15).
> And here on completion we pick that bio, and put that into this local
> iocb, simply because ->iopoll needs it.
> Do you see I am still missing anything here?

Yes. The VFS layer interface for polling is the kiocb. Don't break
it. The bio is just an implementation detail.