On 2021/08/27 1:00, Paolo Valente wrote:
Il giorno 6 ago 2021, alle ore 04:08, Yu Kuai <yukuai3@xxxxxxxxxx> ha scritto:
There is a special case when bfq do not need to idle when more than
one groups is active:
Unfortunately, there is a misunderstanding here. If more than one
group is active, then idling is not needed only if a lot of symmetry
conditions also hold:
- all active groups have the same weight
- all active groups contain the same number of active queues
Hi, Paolo
I didn't think of this contition.
It's seems that if we want to idle when more than one group is active,
there are two additional conditions:
- all dispatched requests have the same size
- all active groups contain the same number of active queues
Thus we still need to track how many queues are active in each group.
The conditions seems to be too much, do you think is it worth it to
add support to idle when more than one group is active?
Thanks
Kuai
- all active queues have the same weight
- all active queues belong to the same I/O-priority class
- all dispatched requests have the same size
Similarly, if only one group is active, then idling is not needed only
if the above last three conditions hold.
The current logic, including your changes up to your previous patch,
is simply ignoring the last condition above.
So, unfortunately, your extra information about varied request size
should be used in the opposite way than how you propose to use it.