Messages in this thread | | | Date | Mon, 23 Jan 2012 10:52:16 -0500 | From | Vivek Goyal <> | Subject | Re: [PATCH 08/17] blkcg: shoot down blkio_groups on elevator switch |
| |
On Mon, Jan 23, 2012 at 07:39:13AM -0800, Tejun Heo wrote: > Hello, > > On Mon, Jan 23, 2012 at 10:20:55AM -0500, Vivek Goyal wrote: > > What happens to per device rules (per device weight and per device > > throttling rules)? IIUC, in new scheme of things, upon elevator switch > > these rules will be gone. > > > > I can understand per device weight rules disappearing but what about > > throttling rules. They are independent of IO scheduler and change of > > io scheduler should not cause per device throttling rules to get lost. > > > > This just gets worse if elevator switch fails and we fall back to old > > elevator. But now we have lost of the rules as rules were part of > > blkg.conf and old groups are gone. > > As any other choices, it's about trade off and there multiple aspects > to consider. Both elevator and policy changes are extremely low > frequency and inherently disruptive operations and having persistency > across them doesn't justify adding the amount of complexity and design > convolutions we have now, especially not when rule persistency across > those switches can be implemented with mostly trivial switching script > from userland.
Atleast throttling rules should not disappear over elevator switch. They are per device and not per IO scheduler. Think of losing nr_requests settings just because elevator switch happened.
Elevator switch can be low frequency but how would a user space know that elevator switch failed that's why we lost our rules and now lets put the rules back.
I am not sure how would we justify this that because of ease of programming in kernel, now user space is supposed to make sure that any programmed rules are still there and reprogram the cgroup if rules are gone for some reason.
Thanks Vivek
| |