Re: [PATCHSET v2 block/for-5.8] iocost: improve use_delay and latency target handling

From: Tejun Heo
Date: Mon Apr 13 2020 - 13:08:39 EST


On Mon, Apr 13, 2020 at 08:00:29PM +0300, Pavel Begunkov wrote:
> On 13/04/2020 19:56, Pavel Begunkov wrote:
> > On 13/04/2020 19:27, Tejun Heo wrote:
> >> Changes from v1[1]
> >>
> >> * Dropped 0002-block-add-request-io_data_len.patch and updated to use
> >> rq->stats_sectors instead as suggested by Pavel Begunkov.
> >
> > rq->stats_sectors is set only when there is QUEUE_FLAG_STATS, see
> > blk_mq_start_request(). I don't see blk-iocost requiring it. Did I miss something?
>
> And there is no reason to not initialise it unconditionally.

The updated patch turns on accounting when iocost is enabled on a queue.

@@ -2267,6 +2295,7 @@ static ssize_t ioc_qos_write(struct kernfs_open_file *of, char *input,
spin_lock_irq(&ioc->lock);

if (enable) {
+ blk_stat_enable_accounting(ioc->rqos.q);
blk_queue_flag_set(QUEUE_FLAG_RQ_ALLOC_TIME, ioc->rqos.q);
ioc->enabled = true;
} else {

Thanks.

--
tejun