Re: [RFC PATCH] iov_iter: Convert iterate*() to inline funcs

From: Matthew Wilcox
Date: Mon Aug 14 2023 - 09:24:29 EST


On Fri, Aug 11, 2023 at 03:32:09PM +0100, David Howells wrote:
> @@ -578,10 +683,11 @@ size_t copy_page_from_iter_atomic(struct page *page, unsigned offset, size_t byt
> kunmap_atomic(kaddr);
> return 0;
> }
> - iterate_and_advance(i, bytes, base, len, off,
> - copyin(p + off, base, len),
> - memcpy_from_iter(i, p + off, base, len)
> - )
> +
> + bytes = iterate_and_advance(i, bytes, p,
> + copy_from_user_iter,
> + iov_iter_is_copy_mc(i) ?
> + memcpy_from_iter_mc : memcpy_from_iter);
> kunmap_atomic(kaddr);
> return bytes;
> }

Please work against linux-next; this function is completely rewritten
there.