On Wed, Sep 11, 2024 at 10:17:20AM +0200, Christoph Hellwig wrote: > On Tue, Sep 10, 2024 at 10:06:03AM -0600, Keith Busch wrote: > > Exactly. bio_integrity_add_page will use the queue's limits to decide if > > it can combine pages into one vector, so appending pages through that > > interface will always result in the most compact bip vector. > > > > This patch doesn't combine merged bio's but that's unlikely to have > > mergable segments. > > Oh, bio_integrity_add_page uses bvec_try_merge_hw_page. That means it > doesn't really work well for our stacking model, as any stacking driver > can and will change these. Maybe we need to take a step back and fully > apply the immutable biovec and split at final submission model to > metadata? Would you be okay if I resubmit this patchset with just the minimum to fix the existing merging? I agree stacking and splitting integrity is currently broken, but I think the merging fixes from this series need to happen regardless of the how the block stack might change when integrity data is set in bios.