[PATCH V4 1/9] block: allow bvec for zone append get pages
hch at lst.de
hch at lst.de
Fri Dec 4 03:46:34 EST 2020
On Fri, Dec 04, 2020 at 02:43:10AM +0000, Chaitanya Kulkarni wrote:
> >> Remove the bvec check in the bio_iov_iter_get_pages() for
> >> REQ_OP_ZONE_APPEND so that we can reuse the code and build iter from
> >> bvec.
> > We should do the same optimization for bvec pages that the normal path
> > does. That being said using bio_iov_iter_get_pages in nvmet does not
> > make any sense to me whatsover.
> >
> Are you referring to the inline bvec ? then yes, I'll add it in next
> version.
>
> I did not understand bio_iov_iter_get_pages() comment though.
>
> Reimplementing the bio loop over sg with the use of bio_add_hw_page() seems
>
> repetition of the code which we already have in bio_iov_iter_get_pages().
>
>
> Can you please explain why bio_iov_iter_get_pages() not the right way ?
bio_iov_iter_get_pages is highly inefficient for this use case, as we'll
need to allocate two sets of bio_vecs. It also is rather redundant as
Zone Append should be able to just largely reuse the write path.
More information about the Linux-nvme
mailing list