[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120123161308.GH25986@redhat.com>
Date: Mon, 23 Jan 2012 11:13:08 -0500
From: Vivek Goyal <vgoyal@...hat.com>
To: Tejun Heo <tj@...nel.org>
Cc: axboe@...nel.dk, ctalbott@...gle.com, rni@...gle.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 08/17] blkcg: shoot down blkio_groups on elevator switch
On Mon, Jan 23, 2012 at 11:10:42AM -0500, Vivek Goyal wrote:
> 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.
How about draining throttle groups only on queue exit (blk_cleanup_queue())
and not on elevator switch.
Thanks
Vivek
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists