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.