2009-09-02 11:51:37

by Ryo Tsuruta

[permalink] [raw]
Subject: a room for blkio-cgroup in struct page_cgroup

Hi Kamezawa-san,

As you wrote before (http://lkml.org/lkml/2009/7/22/65)
> To be honest, what I expected in these days for people of blockio
> cgroup is like following for getting room for themselves.
<<snip>>
> --- mmotm-2.6.31-Jul16.orig/include/linux/page_cgroup.h
> +++ mmotm-2.6.31-Jul16/include/linux/page_cgroup.h
> @@ -13,7 +13,7 @@
> struct page_cgroup {
> unsigned long flags;
> struct mem_cgroup *mem_cgroup;
> - struct page *page;
> + /* block io tracking will use extra unsigned long bytes */
> struct list_head lru; /* per cgroup LRU list */
> };

Have you already added a room for blkio_cgroup in struct page_cgroup?
If not, I would like you to apply the above change to mmotm.

The latest blkio-cgroup has reflected the comments you pointed out.
I would also like you to give me any comments on it and consider
merging blkio-cgroup to mmotm.

Thank you for your help in advance.
Ryo Tsuruta


2009-09-02 13:12:53

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: a room for blkio-cgroup in struct page_cgroup

Ryo Tsuruta wrote:
> Hi Kamezawa-san,
>
> As you wrote before (http://lkml.org/lkml/2009/7/22/65)
>> To be honest, what I expected in these days for people of blockio
>> cgroup is like following for getting room for themselves.
> <<snip>>
>> --- mmotm-2.6.31-Jul16.orig/include/linux/page_cgroup.h
>> +++ mmotm-2.6.31-Jul16/include/linux/page_cgroup.h
>> @@ -13,7 +13,7 @@
>> struct page_cgroup {
>> unsigned long flags;
>> struct mem_cgroup *mem_cgroup;
>> - struct page *page;
>> + /* block io tracking will use extra unsigned long bytes */
>> struct list_head lru; /* per cgroup LRU list */
>> };
>
> Have you already added a room for blkio_cgroup in struct page_cgroup?
No.

> If not, I would like you to apply the above change to mmotm.
>
Plz wait until October. We're deadly busy and some amount of more important
patches are piled up in front of us. I have no objections if you add
a pointer or id because I know I can reduce 8(4)bytes later.
Just add (a small) member for a while and ignore page_cgroup's size.
I'll fix later.

> The latest blkio-cgroup has reflected the comments you pointed out.
> I would also like you to give me any comments on it and consider
> merging blkio-cgroup to mmotm.
>
BTW, do you all have cosensus about implementation ?

Bye,
-Kame

2009-09-02 20:02:27

by Balbir Singh

[permalink] [raw]
Subject: Re: a room for blkio-cgroup in struct page_cgroup

2009/9/2 KAMEZAWA Hiroyuki <[email protected]>:
> Ryo Tsuruta wrote:
>> Hi Kamezawa-san,
>>
>> As you wrote before (http://lkml.org/lkml/2009/7/22/65)
>>> To be honest, what I expected in these days for people of blockio
>>> cgroup is like following for getting room for themselves.
>> <<snip>>
>>> --- mmotm-2.6.31-Jul16.orig/include/linux/page_cgroup.h
>>> +++ mmotm-2.6.31-Jul16/include/linux/page_cgroup.h
>>> @@ -13,7 +13,7 @@
>>> ?struct page_cgroup {
>>> ? ? ? unsigned long flags;
>>> ? ? ? struct mem_cgroup *mem_cgroup;
>>> - ? ? struct page *page;
>>> + ? ? /* block io tracking will use extra unsigned long bytes */
>>> ? ? ? struct list_head lru; ? ? ? /* per cgroup LRU list */
>>> };
>>
>> Have you already added a room for blkio_cgroup in struct page_cgroup?
> No.
>

The diff above is unclear, are you removing struct page from page_cgroup?

Balbir Singh

2009-09-03 00:30:08

by Kamezawa Hiroyuki

[permalink] [raw]
Subject: Re: a room for blkio-cgroup in struct page_cgroup

Balbir Singh wrote:
> 2009/9/2 KAMEZAWA Hiroyuki <[email protected]>:
>> Ryo Tsuruta wrote:
>>> Hi Kamezawa-san,
>>>
>>> As you wrote before (http://lkml.org/lkml/2009/7/22/65)
>>>> To be honest, what I expected in these days for people of blockio
>>>> cgroup is like following for getting room for themselves.
>>> <<snip>>
>>>> --- mmotm-2.6.31-Jul16.orig/include/linux/page_cgroup.h
>>>> +++ mmotm-2.6.31-Jul16/include/linux/page_cgroup.h
>>>> @@ -13,7 +13,7 @@
>>>> &#160;struct page_cgroup {
>>>> &#160; &#160; &#160; unsigned long flags;
>>>> &#160; &#160; &#160; struct mem_cgroup *mem_cgroup;
>>>> - &#160; &#160; struct page *page;
>>>> + &#160; &#160; /* block io tracking will use extra unsigned long
bytes */
>>>> &#160; &#160; &#160; struct list_head lru; &#160; &#160; &#160; /*
per cgroup LRU list */
>>>> };
>>>
>>> Have you already added a room for blkio_cgroup in struct page_cgroup?
>> No.
>>
>
> The diff above is unclear, are you removing struct page from page_cgroup?
>
I said him "if you want a room, plz get by youself, consider more"
And offered this change.
http://lkml.org/lkml/2009/7/22/65
you were CC'd.
Because page_cgroup's layout is same to memmap, we can use similar function
as
page_cgroup_to_pfn(), pfn_to_page_cgroup().
And, we don't access page_cgroup->page in fast path. (maybe)
But as I wrote, we're busy. I'll not do this until all performance fixes
go ahead.

Thanks,
-Kame

2009-09-03 05:09:32

by Ryo Tsuruta

[permalink] [raw]
Subject: Re: a room for blkio-cgroup in struct page_cgroup

Hi Kamezawa-san,

"KAMEZAWA Hiroyuki" <[email protected]> wrote:
> Ryo Tsuruta wrote:
> > Hi Kamezawa-san,
> >
> > As you wrote before (http://lkml.org/lkml/2009/7/22/65)
> >> To be honest, what I expected in these days for people of blockio
> >> cgroup is like following for getting room for themselves.
> > <<snip>>
> >> --- mmotm-2.6.31-Jul16.orig/include/linux/page_cgroup.h
> >> +++ mmotm-2.6.31-Jul16/include/linux/page_cgroup.h
> >> @@ -13,7 +13,7 @@
> >> struct page_cgroup {
> >> unsigned long flags;
> >> struct mem_cgroup *mem_cgroup;
> >> - struct page *page;
> >> + /* block io tracking will use extra unsigned long bytes */
> >> struct list_head lru; /* per cgroup LRU list */
> >> };
> >
> > Have you already added a room for blkio_cgroup in struct page_cgroup?
> No.
>
> > If not, I would like you to apply the above change to mmotm.
> >
> Plz wait until October. We're deadly busy and some amount of more important
> patches are piled up in front of us. I have no objections if you add
> a pointer or id because I know I can reduce 8(4)bytes later.
> Just add (a small) member for a while and ignore page_cgroup's size.
> I'll fix later.

Thank you very much, but I've already added unsigned long member in the
last posted patch...

> > The latest blkio-cgroup has reflected the comments you pointed out.
> > I would also like you to give me any comments on it and consider
> > merging blkio-cgroup to mmotm.
> >
> BTW, do you all have cosensus about implementation ?

Not yet, it is under discussion now.

Thanks,
Ryo Tsuruta