[Devel] Re: [PATCH 3/9] bio-cgroup controller
KAMEZAWA Hiroyuki
kamezawa.hiroyu at jp.fujitsu.com
Fri Apr 17 01:51:40 PDT 2009
On Fri, 17 Apr 2009 17:48:54 +0900
KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com> wrote:
> On Fri, 17 Apr 2009 17:00:16 +0900
> KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com> wrote:
>
> > On Fri, 17 Apr 2009 16:22:01 +0900 (JST)
> > Ryo Tsuruta <ryov at valinux.co.jp> wrote:
> >
> > > In the case where the bio-cgroup data is allocated dynamically,
> > > - Sometimes quite a large amount of memory get marked dirty.
> > > In this case it requires more kernel memory than that of the
> > > current implementation.
> > > - The operation is expansive due to memory allocations and exclusive
> > > controls by such as spinlocks.
> > >
> > > In the case where the bio-cgroup data is allocated by delayed allocation,
> > > - It makes the operation complicated and expensive, because
> > > sometimes a bio has to be created in the context of other
> > > processes, such as aio and swap-out operation.
> > >
> > > I'd prefer a simple and lightweight implementation. bio-cgroup only
> > > needs 4bytes unlike memory controller. The reason why bio-cgroup chose
> > > this approach is to minimize the overhead.
> > >
> > My point is, plz do your best to reduce memory usage here. You increase
> > size of page_cgroup just because you cannot increase size of struct page.
> > It's not be sane reason to increase size of this object.
> > It's a cheat in my point of view.
> >
>
> Can't this work sanely ?
> Hmm, endian is obstacle ?
> ==
> sturct page_cgroup {
> union {
> struct {
> unsigned long memcg_field:16;
> unsigned long blockio_field:16;
> } field;
> unsigned long flags; /* unsigned long is not 32bits */
> } flags;
> }
> ==
>
....sorry plz ignore.
-Kame
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers
More information about the Devel
mailing list