From: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
To: LKML <linux-kernel@vger.kernel.org>, linux-mm <linux-mm@kvack.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Balbir Singh <balbir@linux.vnet.ibm.com>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
Li Zefan <lizf@cn.fujitsu.com>, Paul Menage <menage@google.com>,
Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
Subject: [PATCH mmotm 2/2] memcg: allow mem.limit bigger than memsw.limit iff unlimited
Date: Wed, 3 Jun 2009 11:50:27 +0900 [thread overview]
Message-ID: <20090603115027.80f9169b.nishimura@mxp.nes.nec.co.jp> (raw)
In-Reply-To: <20090603114518.301cef4d.nishimura@mxp.nes.nec.co.jp>
Now users cannot set mem.limit bigger than memsw.limit.
This patch allows mem.limit bigger than memsw.limit iff mem.limit==unlimited.
By this, users can set memsw.limit without setting mem.limit.
I think it's usefull if users want to limit memsw only.
They must set mem.limit first and memsw.limit to the same value now for this purpose.
They can save the first step by this patch.
Signed-off-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
---
mm/memcontrol.c | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 6629ed2..2b63cb1 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -1742,11 +1742,12 @@ static int mem_cgroup_resize_limit(struct mem_cgroup *memcg,
/*
* Rather than hide all in some function, I do this in
* open coded manner. You see what this really does.
- * We have to guarantee mem->res.limit < mem->memsw.limit.
+ * We have to guarantee mem->res.limit < mem->memsw.limit,
+ * except for mem->res.limit == RESOURCE_MAX(unlimited) case.
*/
mutex_lock(&set_limit_mutex);
memswlimit = res_counter_read_u64(&memcg->memsw, RES_LIMIT);
- if (memswlimit < val) {
+ if (val != RESOURCE_MAX && memswlimit < val) {
ret = -EINVAL;
mutex_unlock(&set_limit_mutex);
break;
@@ -1789,11 +1790,12 @@ static int mem_cgroup_resize_memsw_limit(struct mem_cgroup *memcg,
/*
* Rather than hide all in some function, I do this in
* open coded manner. You see what this really does.
- * We have to guarantee mem->res.limit < mem->memsw.limit.
+ * We have to guarantee mem->res.limit < mem->memsw.limit,
+ * except for mem->res.limit == RESOURCE_MAX(unlimited) case.
*/
mutex_lock(&set_limit_mutex);
memlimit = res_counter_read_u64(&memcg->res, RES_LIMIT);
- if (memlimit > val) {
+ if (memlimit != RESOURCE_MAX && memlimit > val) {
ret = -EINVAL;
mutex_unlock(&set_limit_mutex);
break;
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2009-06-03 16:43 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-03 2:45 [PATCH mmotm 0/2] memcg: changes to *.limit_in_bytes Daisuke Nishimura
2009-06-03 2:49 ` [PATCH mmotm 1/2] memcg: add interface to reset limits Daisuke Nishimura
2009-06-03 3:54 ` KAMEZAWA Hiroyuki
2009-06-03 5:16 ` Li Zefan
2009-06-03 5:43 ` Daisuke Nishimura
2009-06-05 13:22 ` [PATCH mmotm] " Daisuke Nishimura
2009-06-05 20:20 ` Andrew Morton
2009-06-03 2:50 ` Daisuke Nishimura [this message]
2009-06-03 3:52 ` [PATCH mmotm 2/2] memcg: allow mem.limit bigger than memsw.limit iff unlimited KAMEZAWA Hiroyuki
2009-06-03 5:01 ` Daisuke Nishimura
2009-06-03 8:20 ` KAMEZAWA Hiroyuki
2009-06-03 8:46 ` KAMEZAWA Hiroyuki
2009-06-04 4:31 ` Daisuke Nishimura
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090603115027.80f9169b.nishimura@mxp.nes.nec.co.jp \
--to=nishimura@mxp.nes.nec.co.jp \
--cc=akpm@linux-foundation.org \
--cc=balbir@linux.vnet.ibm.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lizf@cn.fujitsu.com \
--cc=menage@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox