Re: [PATCH 3/9] bio-cgroup controller

From: Andrea Righi
Date: Fri Apr 17 2009 - 05:40:57 EST


On Thu, Apr 16, 2009 at 03:29:37PM -0700, Andrew Morton wrote:
> On Tue, 14 Apr 2009 22:21:14 +0200
> Andrea Righi <righi.andrea@xxxxxxxxx> wrote:
>
> > Subject: [PATCH 3/9] bio-cgroup controller
>
> Sorry, but I have to register extreme distress at the name of this.
> The term "bio" is well-established in the kernel and here we have a new
> definition for the same term: "block I/O".
>
> "bio" was a fine term for you to have chosen from the user's
> perspective, but from the kernel developer perspective it is quite
> horrid. The patch adds a vast number of new symbols all into the
> existing "bio_" namespace, many of which aren't related to `struct bio'
> at all.
>
> At least, I think that's what's happening. Perhaps the controller
> really _is_ designed to track `struct bio'? If so, that's an odd thing
> to tell userspace about.
>
>
> > The controller bio-cgroup is used by io-throttle to track writeback IO
> > and for properly apply throttling.
>
> Presumably it tracks all forms of block-based I/O and not just delayed
> writeback.

For the general case bio-cgroup tracks all forms of block IO, in this
particular case (only for the io-throttle controller) I used bio-cgroup
to track writeback IO. Synchronous IO is accounted directly in
submit_bio() and throttled as well, imposing explicit sleeps via
schedule_timeout_killable().

-Andrea
--
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/