On Tue, Jul 29, 2025 at 07:34:37AM -0700, Keith Busch wrote: > @@ -244,8 +244,10 @@ int __blk_rq_map_sg(struct request *rq, struct scatterlist *sglist, > int nsegs = 0; > > /* the internal flush request may not have bio attached */ > - if (bio) > + if (bio) { > iter.iter = bio->bi_iter; > + iter.bvec = bio->bi_io_vec; Oops, this should have been: if (rq->rq_flags & RQF_SPECIAL_PAYLOAD) iter.bvec = &rq->special_vec; else iter.bvec = bio->bi_io_vec; Hopefully over time everything coverts to the dma iterator and this legacy sg mapping can fade away. > + }