Re: [PATCH V4 05/15] blk-throttle: add downgrade logic

2016-11-22 Thread Shaohua Li
On Tue, Nov 22, 2016 at 04:42:00PM -0500, Tejun Heo wrote: > Hello, > > On Tue, Nov 22, 2016 at 04:21:21PM -0500, Tejun Heo wrote: > > 1. A cgroup and its high and max limits don't have much to do with > >other cgroups and their limits. I don't get how the choice between > >high and max l

Re: [PATCH V4 05/15] blk-throttle: add downgrade logic

2016-11-22 Thread Tejun Heo
Hello, On Tue, Nov 22, 2016 at 04:21:21PM -0500, Tejun Heo wrote: > 1. A cgroup and its high and max limits don't have much to do with >other cgroups and their limits. I don't get how the choice between >high and max limits can be a td-wide state. Ah, okay, this combines with idle cgroup

Re: [PATCH V4 05/15] blk-throttle: add downgrade logic

2016-11-22 Thread Tejun Heo
Hello, On Mon, Nov 14, 2016 at 02:22:12PM -0800, Shaohua Li wrote: > +static unsigned long tg_last_high_overflow_time(struct throtl_grp *tg) > +{ > + struct throtl_service_queue *parent_sq; > + struct throtl_grp *parent = tg; > + unsigned long ret = __tg_last_high_overflow_time(tg); >

[PATCH V4 05/15] blk-throttle: add downgrade logic

2016-11-14 Thread Shaohua Li
When queue state machine is in LIMIT_MAX state, but a cgroup is below its high limit for some time, the queue should be downgraded to lower state as one cgroup's high limit isn't met. Signed-off-by: Shaohua Li --- block/blk-throttle.c | 188 +++ 1