Re: [PATCH v7 2/8] iov_iter: Add a function to extract a page list from an iterator

From: David Howells
Date: Sat Jan 21 2023 - 08:31:49 EST


Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:

> On Fri, Jan 20, 2023 at 05:55:50PM +0000, David Howells wrote:
> > (3) Any other sort of iterator.
> >
> > No refs or pins are obtained on the page, the assumption is made that
> > the caller will manage page retention. ITER_ALLOW_P2PDMA is not
> > permitted.
>
> The ITER_ALLOW_P2PDMA check here is fundamentally wrong and will
> break things like io_uring to fixed buffers on NVMe. ITER_ALLOW_P2PDMA
> should strictly increase the group of acceptable iters, it does must
> not restrict anything.

So just drop the check? Or do I actually need to do something to the pages to
make it work? If I understand the code correctly, it's not actually operable
right now on any page that doesn't have an appropriately marked PTE.

David