On Fri, Apr 21 2017, Christoph Hellwig wrote: > On Thu, Apr 20, 2017 at 03:38:50PM +1000, NeilBrown wrote: >> blk_bio_segment_split() makes sure bios have no more than >> BIO_MAX_PAGES entries in the bi_io_vec. >> This was done because bio_clone_bioset() (when given a >> mempool bioset) could not handle larger io_vecs. >> >> No driver uses bio_clone_bioset() any more, they all >> use bio_clone_fast() if anything, and bio_clone_fast() >> doesn't clone the bi_io_vec. > > Hmm. From Jens tree: > > drivers/lightnvm/pblk-read.c: int_bio = bio_clone_bioset(bio, GFP_KERNEL, fs_bio_set); That is new and I missed it. It should be bio_clone_fast(), and it shouldn't use fs_bio_set (as it is not a filesystem). > drivers/md/raid1.c: mbio = bio_clone_bioset_partial(bio, GFP_NOIO, > drivers/md/raid1.c: mbio = bio_clone_bioset_partial(bio, GFP_NOIO, These have since been changed to bio_clone_fast() or similar (in the md tree) - and bio_clone_bioset_partial() is gone. > > I did not see your series touching either of those. They probably > don't matter for the code removed as the bios are controlled by the > drivers, but the changelog still seems odd. Depending one what base it ends up being applied to, it may or may not be correct... the md changes have been in -next since 28march. Thanks, NeilBrown