Re: [PATCH v6 07/34] iov_iter: Add a function to extract a page list from an iterator

From: David Howells
Date: Tue Jan 17 2023 - 03:21:00 EST


Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:

> > +ssize_t iov_iter_extract_pages(struct iov_iter *i, struct page ***pages,
> > + size_t maxsize, unsigned int maxpages,
> > + unsigned int gup_flags, size_t *offset0);
>
> This function isn't actually added in the current patch.

Oh... It ended up in the wrong patch.

> > +#define iov_iter_extract_mode(iter, gup_flags) \
> > + (user_backed_iter(iter) ? \
> > + (gup_flags & FOLL_BUF_MASK) == FOLL_SOURCE_BUF ? \
> > + FOLL_GET : FOLL_PIN : 0)
>
> And inline function would be nice here. I guess that would require
> moving the FULL flags into mm_types.h, though.

Yeah, the movement of FOLL_* flags is queued in a patch in akpm's tree.

David