Re: [PATCH V5 09/17] blk-throttle: detect completed idle cgroup

2017-01-09 Thread Tejun Heo
Hello, On Thu, Dec 15, 2016 at 12:33:00PM -0800, Shaohua Li wrote: > @@ -1660,6 +1671,11 @@ static bool throtl_tg_can_downgrade(struct throtl_grp > *tg) > struct throtl_data *td = tg->td; > unsigned long now = jiffies; > > + if (time_after_eq(now, tg->last_dispatch_time[READ] +

[PATCH V5 09/17] blk-throttle: detect completed idle cgroup

2016-12-15 Thread Shaohua Li
cgroup could be assigned a limit, but doesn't dispatch enough IO, eg the cgroup is idle. When this happens, the cgroup doesn't hit its limit, so we can't move the state machine to higher level and all cgroups will be throttled to their lower limit, so we waste bandwidth. Detecting idle cgroup is