Re: [PATCH V3 0/6] block: improvement on bioset & bvec allocation

Pavel Begunkov
2021-01-11T04:40:14Z

On 11/01/2021 03:05, Ming Lei wrote:
> Hello Jens,
>
> All are bioset / bvec improvement, and most of them are quite
> straightforward.

That's cool. As mentioned before, removing inline bvecs brings
struct blkdev_dio from 3 cachelines to 2. And together with no-copy
bvec we can do that shrinking for all bvec based requests.

>
> V3:
> - share two line code via goto with one label, only patch 1 is
> changed
>
> V2:
> - patch style change, most is in patch 1
> - commit log change
>
> Ming Lei (6):
> block: manage bio slab cache by xarray
> block: don't pass BIOSET_NEED_BVECS for q->bio_split
> block: don't allocate inline bvecs if this bioset needn't bvecs
> block: set .bi_max_vecs as actual allocated vector number
> block: move three bvec helpers declaration into private helper
> bcache: don't pass BIOSET_NEED_BVECS for the 'bio_set' embedded in
> 'cache_set'
>
> block/bio.c | 122 +++++++++++++++++---------------------
> block/blk-core.c | 2 +-
> block/blk.h | 4 ++
> drivers/md/bcache/super.c | 2 +-
> include/linux/bio.h | 4 +-
> 5 files changed, 61 insertions(+), 73 deletions(-)
>

--
Pavel Begunkov