On Sun, Aug 10, 2025 at 04:04:48PM +0200, Christoph Hellwig wrote: > > +struct blk_map_iter { > > + phys_addr_t paddr; > > + u32 len; > > + struct bvec_iter iter; > > + struct bio *bio; > > +}; > > This now mixes the output previous in the phys_vec, and instead > of keeping it private to the implementation exposes it to all the > callers. I could not find an explanation in the commit log, nor > something that makes use of it later in the series. > > If possible I'd like to keep these separate and the output isolated > in blk-mq-dma.c. But if there's a good reason to merge them, please > add it to the commit log, and also clearly document the usage of the > fields in the (public) structure. Especially the len member could > very easily confuse. Perhaps I misunderstood the assignment: https://lore.kernel.org/linux-block/20250722055339.GB13634@xxxxxx/ I thought you were saying you wanted the lower (bvec pages -> phys addrs) and upper part (phys -> dma) available as an API rather than keeping the lower part private to blk-dma. This patch helps move towards that, and in the next patch provides a common place to stash the bvec array that's being iterated.