On Tue, May 02, 2017 at 01:42:26PM +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. Maybe in future, some drivers still may try to use bio_clone_bioset() again, I suggest to add some comments on bio_clone_bioset() to make this usage explicitly. Also better to trigger a warning if a big src bio is passed to bio_clone_bioset(). Thanks, Ming