Re: [PATCH 08/17] blkcg: shoot down blkio_groups on elevator switch

From: Vivek Goyal
Date: Mon Jan 23 2012 - 11:10:46 EST


On Mon, Jan 23, 2012 at 07:57:45AM -0800, Tejun Heo wrote:
> On Mon, Jan 23, 2012 at 10:52:16AM -0500, Vivek Goyal wrote:
> > 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.
>
> It's simple - store all the policy rules before switching elevators
> and restore them afterwards regardless of success / failure.

This does not work well in hierachical management/scenario. Think that
a user gets an upper limit of 10MB/s on a device and now user can manage
its own children groups and divide allocated 10MB/s in children the way
he wants.

Now if root does the elevator switch, and saves all the rules (including
user's rules) and then restores back, these can very well race with
user's scripts of changing rules. If user changed a cgroup device rule
during elevator switch and after elevator switch root restored back
old rules, user's new rule will be lost leading to confusion.

Thanks
Vivek
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/