From: Jeff Liu <jeff.liu@oracle.com>
To: linux-mm@kvack.org
Cc: Michal Hocko <mhocko@suse.cz>,
Glauber Costa <glommer@parallels.com>,
cgroups@vger.kernel.org
Subject: [PATCH v2 0/6] memcg: disable swap cgroup allocation at swapon
Date: Mon, 28 Jan 2013 18:54:27 +0800 [thread overview]
Message-ID: <510658E3.1020306@oracle.com> (raw)
Hello,
Here is the v2 patch set for disabling swap_cgroup structures allocation
per swapon.
In the initial version, one big issue is that I have missed the swap tracking
for the root memcg, thanks Michal pointing it out. :)
In order to solve it, the easiest approach I can think out is to bypass the root
memcg swap accounting during the business and figure it out with some global stats,
which means that we always return 0 per root memcg swap charge/uncharge stage, and
this is inspired by another proposal from Zhengju:
"memcg: Don't account root memcg page statistics -- https://lkml.org/lkml/2013/1/2/71"
Besides that, another major fix is deallocate swap accounting structures on the last
non-root memcg remove after all references to it are gone rather than doing it on
mem_cgroup_destroy().
Any comment are welcome!
v1->v2:
- Refactor swap_cgroup_swapon()/swap_cgroup_prepare(), to make the later can be
used for allocating buffers per the first non-root memcg creation.
- Bypass root memcg swap statistics, using the global stats to figure it out instead.
- Export nr_swap_files which would be used when creating/freeing swap_cgroup
- Deallocate swap accounting structures on the last non-root memcg removal
Old patch set:
v1:
http://marc.info/?l=linux-mm&m=135461016823964&w=2
Thanks,
-Jeff
--
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 reply other threads:[~2013-01-28 10:54 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-28 10:54 Jeff Liu [this message]
2013-01-28 10:54 ` [PATCH v2 1/6] memcg: refactor swap_cgroup_swapon() Jeff Liu
[not found] ` <510658E6.9030108-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2013-01-29 9:15 ` Lord Glauber Costa of Sealand
2013-01-29 9:15 ` Lord Glauber Costa of Sealand
2013-01-29 13:41 ` Michal Hocko
2013-01-29 13:41 ` Michal Hocko
2013-01-28 10:54 ` [PATCH v2 2/6] memcg: bypass swap accounting for the root memcg Jeff Liu
2013-01-29 10:18 ` Lord Glauber Costa of Sealand
2013-01-31 6:18 ` Jeff Liu
2013-01-29 14:13 ` Michal Hocko
2013-01-30 16:01 ` Jeff Liu
2013-01-30 16:29 ` Michal Hocko
2013-01-31 4:00 ` Jeff Liu
2013-01-28 10:54 ` [PATCH v2 3/6] memcg: introduce memsw_accounting_users Jeff Liu
[not found] ` <510658F0.9050802-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2013-01-29 9:46 ` Lord Glauber Costa of Sealand
2013-01-29 9:46 ` Lord Glauber Costa of Sealand
2013-01-29 10:52 ` Jeff Liu
2013-01-29 14:26 ` Michal Hocko
2013-01-29 14:24 ` Michal Hocko
2013-01-29 14:24 ` Michal Hocko
2013-01-29 15:16 ` Jeff Liu
2013-01-28 10:54 ` [PATCH v2 4/6] memcg: export nr_swap_files Jeff Liu
[not found] ` <510658F6.4010504-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2013-01-29 9:47 ` Lord Glauber Costa of Sealand
2013-01-29 9:47 ` Lord Glauber Costa of Sealand
2013-01-29 14:31 ` Michal Hocko
2013-01-29 14:31 ` Michal Hocko
2013-01-29 15:17 ` Jeff Liu
2013-01-28 10:54 ` [PATCH v2 5/6] memcg: introduce swap_cgroup_init()/swap_cgroup_free() Jeff Liu
2013-01-29 9:57 ` Lord Glauber Costa of Sealand
2013-01-29 10:21 ` Jeff Liu
[not found] ` <510658F7.6050806-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2013-01-29 14:56 ` Michal Hocko
2013-01-29 14:56 ` Michal Hocko
2013-01-29 15:51 ` Jeff Liu
[not found] ` <5107F00E.7070302-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2013-01-29 16:09 ` Michal Hocko
2013-01-29 16:09 ` Michal Hocko
2013-01-28 10:54 ` [PATCH v2 6/6] memcg: init/free swap cgroup strucutres upon create/free child memcg Jeff Liu
[not found] ` <510658FC.50009-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2013-01-29 9:59 ` Lord Glauber Costa of Sealand
2013-01-29 9:59 ` Lord Glauber Costa of Sealand
2013-01-29 10:27 ` Jeff Liu
2013-01-29 15:11 ` Michal Hocko
2013-01-29 15:11 ` Michal Hocko
[not found] ` <510658E3.1020306-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2013-01-29 15:15 ` [PATCH v2 0/6] memcg: disable swap cgroup allocation at swapon Michal Hocko
2013-01-29 15:15 ` Michal Hocko
2013-01-29 16:50 ` Jeff Liu
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=510658E3.1020306@oracle.com \
--to=jeff.liu@oracle.com \
--cc=cgroups@vger.kernel.org \
--cc=glommer@parallels.com \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.cz \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.