lkml.org 
[lkml]   [2013]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: memcg: cat: memory.memsw.* : Operation not supported
On 01/21/2013 06:56 PM, Michal Hocko wrote:
> On Mon 21-01-13 03:39:07, Zhouping Liu wrote:
>>
>> ----- Original Message -----
>>> From: "Kamezawa Hiroyuki" <kamezawa.hiroyu@jp.fujitsu.com>
>>> To: "Tejun Heo" <tj@kernel.org>
>>> Cc: "David Rientjes" <rientjes@google.com>, "Michal Hocko" <mhocko@suse.cz>, "Zhouping Liu" <zliu@redhat.com>,
>>> linux-mm@kvack.org, "Li Zefan" <lizefan@huawei.com>, "CAI Qian" <caiqian@redhat.com>, "LKML"
>>> <linux-kernel@vger.kernel.org>, "Andrew Morton" <akpm@linux-foundation.org>
>>> Sent: Saturday, June 30, 2012 11:45:41 AM
>>> Subject: Re: memcg: cat: memory.memsw.* : Operation not supported
>>>
>>> (2012/06/29 3:31), Tejun Heo wrote:
>>>> Hello, KAME.
>>>>
>>>> On Thu, Jun 28, 2012 at 01:04:16PM +0900, Kamezawa Hiroyuki wrote:
>>>>>> I still wish it's folded into CONFIG_MEMCG and conditionalized
>>>>>> just on
>>>>>> CONFIG_SWAP tho.
>>>>>>
>>>>> In old days, memsw controller was not very stable. So, we devided
>>>>> the config.
>>>>> And, it makes size of memory for swap-device double (adds 2bytes
>>>>> per swapent.)
>>>>> That is the problem.
>>>> I see. Do you think it's now reasonable to drop the separate
>>>> config
>>>> option? Having memcg enabled but swap unaccounted sounds
>>>> half-broken
>>>> to me.
>>>>
>>> Hmm. Maybe it's ok if we can keep boot option. I'll cook a patch in
>>> the next week.
>> Hello Kame and All,
>>
>> Sorry for so delay to open the thread. (please open the link https://lkml.org/lkml/2012/6/26/547 if you don't remember the topic)
>>
>> do you have any updates for the issue?
>>
>> I checked the latest version, if we don't open CONFIG_MEMCG_SWAP_ENABLED(commit c255a458055e changed
>> CONFIG_CGROUP_MEM_RES_CTLR_SWAP_ENABLED as CONFIG_MEMCG_SWAP_ENABLED), the issue still exist:
>>
>> [root@dhcp-8-128 ~] cat .config | grep -i memcg
>> CONFIG_MEMCG=y
>> CONFIG_MEMCG_SWAP=y
>> # CONFIG_MEMCG_SWAP_ENABLED is not set
>> CONFIG_MEMCG_KMEM=y
>> [root@dhcp-8-128 ~] uname -r
>> 3.8.0-rc4+
>> [root@dhcp-8-128 ~] cat memory.memsw.*
>> cat: memory.memsw.failcnt: Operation not supported
>> cat: memory.memsw.limit_in_bytes: Operation not supported
>> cat: memory.memsw.max_usage_in_bytes: Operation not supported
>> cat: memory.memsw.usage_in_bytes: Operation not supported
> Ohh, this one got lost. I thought Kame was working on that.
> Anyway the patch bellow should work:
> ---
> From 5f8141bf7d27014cfbc7b450f13f6146b5ab099d Mon Sep 17 00:00:00 2001
> From: Michal Hocko <mhocko@suse.cz>
> Date: Mon, 21 Jan 2013 11:33:26 +0100
> Subject: [PATCH] memcg: Do not create memsw files if swap accounting is
> disabled
>
> Zhouping Liu has reported that memsw files are exported even though
> swap accounting is runtime disabled if CONFIG_MEMCG_SWAP is enabled.
> This behavior has been introduced by af36f906 (memcg: always create
> memsw files if CONFIG_CGROUP_MEM_RES_CTLR_SWAP) and it causes any
> attempt to open the file to return EOPNOTSUPP. Although EOPNOTSUPP
> should say be clear that memsw operations are not supported in the given
> configuration it is fair to say that this behavior could be quite
> confusing.
>
> Let's tear memsw files out of default cgroup files and add
> them only if the swap accounting is really enabled (either by
> CONFIG_MEMCG_SWAP_ENABLED or swapaccount=1 boot parameter). We can
> hook into mem_cgroup_init which is called when the memcg subsystem is
> initialized and which happens after boot command line is processed.

Thanks for your quick patch, your patch looks good for me.

I tested it with or without CONFIG_MEMCG_SWAP_ENABLED=y,
and also tested it with swapaccount=1 kernel parameters, all are okay.

Tested-by: Zhouping Liu <zliu@redhat.com>

Thanks,
Zhouping


\
 
 \ /
  Last update: 2013-01-21 17:43    [W:0.079 / U:1.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site