Re: [PATCH v2 1/2] iov_iter: optimise iov_iter_npages for bvec

From: Christoph Hellwig
Date: Fri Nov 20 2020 - 03:15:06 EST


On Fri, Nov 20, 2020 at 02:54:57AM +0000, Matthew Wilcox wrote:
> On Fri, Nov 20, 2020 at 02:25:08AM +0000, Pavel Begunkov wrote:
> > On 20/11/2020 02:22, Ming Lei wrote:
> > > iov_iter_npages(bvec) still can be improved a bit by the following way:
> >
> > Yep, was doing exactly that, +a couple of other places that are in my way.
>
> Are you optimising the right thing here? Assuming you're looking at
> the one in do_blockdev_direct_IO(), wouldn't we be better off figuring
> out how to copy the bvecs directly from the iov_iter into the bio
> rather than calling dio_bio_add_page() for each page?

Which is most effectively done by stopping to to use *blockdev_direct_IO
and switching to iomap instead :)