Re: [PATCH -next v5 4/8] blk-throttle: fix io hung due to config updates

From: Yu Kuai
Date: Sat Jun 25 2022 - 04:36:42 EST


在 2022/06/24 0:26, Michal Koutný 写道:
On Thu, Jun 23, 2022 at 08:27:11PM +0800, Yu Kuai <yukuai3@xxxxxxxxxx> wrote:
Here we may allow to dispatch a bio above current slice's
calculate_bytes_allowed() if bytes_skipped is already >0.

Hi, I don't expect that to happen. For example, if a bio is still
throttled, then old slice is keeped with proper 'bytes_skipped',
then new wait time is caculated based on (bio_size - bytes_skipped).

After the bio is dispatched(I assum that other bios can't preempt),

With this assumptions it adds up as you write. I believe we're in
agreement.

It's the same assumption I made below (FIFO everywhere, i.e. no
reordering). So the discussed difference shouldn't really be negative
(and if the assumption didn't hold, so the modular arithmetic yields
corerct bytes_skipped value).
Yes, nice that we're in aggreement.

I'll wait to see if Tejun has any suggestions.

Thanks,
Kuai

Michal
.