[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210604092335.29705-1-nanich.lee@samsung.com>
Date: Fri, 4 Jun 2021 18:23:35 +0900
From: Changheun Lee <nanich.lee@...sung.com>
To: damien.lemoal@....com
Cc: Avri.Altman@....com, Johannes.Thumshirn@....com,
alex_y_xu@...oo.ca, alim.akhtar@...sung.com,
asml.silence@...il.com, axboe@...nel.dk, bgoncalv@...hat.com,
bvanassche@....org, cang@...eaurora.org,
gregkh@...uxfoundation.org, hch@...radead.org, jaegeuk@...nel.org,
jejb@...ux.ibm.com, jisoo2146.oh@...sung.com,
junho89.kim@...sung.com, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-scsi@...r.kernel.org,
martin.petersen@...cle.com, ming.lei@...hat.com,
mj0123.lee@...sung.com, nanich.lee@...sung.com, osandov@...com,
patchwork-bot@...nel.org, seunghwan.hyun@...sung.com,
sookwan7.kim@...sung.com, tj@...nel.org, tom.leiming@...il.com,
woosung2.lee@...sung.com, yi.zhang@...hat.com,
yt0928.kim@...sung.com
Subject: Re: [PATCH v12 1/3] bio: control bio max size
> On 2021/06/04 16:53, Changheun Lee wrote:
> >> On 2021/06/04 14:22, Changheun Lee wrote:
> >>> + * @q: the request queue for the device
> >>> + * @bytes : bio max bytes to be set
> >>> + *
> >>> + * Description:
> >>> + * Set proper bio max size to optimize queue operating.
> >>> + **/
> >>> +void blk_queue_max_bio_bytes(struct request_queue *q, unsigned int bytes)
> >>> +{
> >>> + struct queue_limits *limits = &q->limits;
> >>> + unsigned int max_bio_bytes = round_up(bytes, PAGE_SIZE);
> >>> +
> >>> + limits->max_bio_bytes = max_t(unsigned int, max_bio_bytes,
> >>> + BIO_MAX_VECS * PAGE_SIZE);
> >>> +}
> >>> +EXPORT_SYMBOL(blk_queue_max_bio_bytes);
> >>
> >> Setting of the stacked limits is still missing.
> >
> > max_bio_bytes for stacked device is just default(UINT_MAX) in this patch.
> > Because blk_set_stacking_limits() call blk_set_default_limits().
> > I'll work continue for stacked device after this patchowork.
>
> Why ? Without that added now, anybody using this performance fix will see no
> benefits if a device mapper is used. The stacking limit should be super simple.
> In blk_stack_limits(), just add:
>
> t->max_bio_bytes = min(t->max_bio_bytes, b->max_bio_bytes);
>
>
> --
> Damien Le Moal
> Western Digital Research
I had tried like as your comment at first. But I got many feedbacks that
applying for all device is not good idea. So I'll try to control bio size
in each stacked driver like as setting max_bio_bytes in LLD as you
recommended. I'm trying to find some target stacked devices to contorl
bio size like as dm-crypt, dm-liner, ... etc. And I'll try to find some
method to control bio max size include using of blk_queue_max_bio_bytes().
Thank you,
Changheun Lee
Powered by blists - more mailing lists