Re: [PATCH] blk-iocost: fix false positive lagging

From: Tejun Heo
Date: Thu May 26 2022 - 13:43:15 EST


Hello,

On Thu, May 26, 2022 at 09:35:54PM +0800, Chengming Zhou wrote:
> I found many false positive lagging during iocost test.
>
> Since iocg->vtime will be advanced to (vnow - margins.target)
> in hweight_after_donation(), which called throw away excess,
> the iocg->done_vtime will also be advanced that much.
>
> period_at_vtime <--period_vtime--> vnow
> | |
> --------------------------------------------------->
> |<--->|
> margins.target
> |->
> vtime, done_vtime

All it does is shifting the vtime (and done_vtime) within the current window
so that we don't build up budget too lage a budget possibly spanning
multiple periods. The lagging detection is supposed to detect IOs which are
issued two+ periods ago which didn't finish in the last period. So, I don't
think the above sliding up the window affects that detection given that the
lagging detection is done before the window sliding. All it's checking is
whether there still are in-flight IOs which were issued two+ windows ago, so
how the last window has been fast forwarded shouldn't affect the detection,
no?

Thanks.

--
tejun