On Fri, Apr 21, 2017 at 7:34 PM, Christoph Hellwig <[email protected]> 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);
> drivers/md/raid1.c: mbio =
> bio_clone_bioset_partial(bio, GFP_NOIO,
> drivers/md/raid1.c: mbio =
> bio_clone_bioset_partial(bio, GFP_NOIO,
Btrfs use bio_clone_bioset() too:
fs/btrfs/extent_io.c:2703: new = bio_clone_bioset(bio,
gfp_mask, btrfs_bioset);
Thanks,
Ming Lei