From: Yu Zhao <yuzhao@google.com>
To: linux-mm@kvack.org, cgroups@vger.kernel.org, x86@kernel.org
Cc: linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org,
jamieliu@google.com, suleiman@google.com, hannes@cmpxchg.org,
Yu Zhao <yuzhao@google.com>
Subject: [PATCH v2 0/3] Per-cgroup swap file support
Date: Wed, 2 Apr 2014 13:34:06 -0700 [thread overview]
Message-ID: <1396470849-26154-1-git-send-email-yuzhao@google.com> (raw)
This series of patches adds support to configure a cgroup to swap to a
particular file by using control file memory.swapfile.
Originally, cgroups share system-wide swap space and limiting cgroup swapping
is not possible. This patchset solves the problem by adding mechanism that
isolates cgroup swap spaces (i.e. per-cgroup swap file) so users can safely
enable swap for particular cgroups without worrying about one cgroup uses up
all swap space.
A value of "default" in memory.swapfile indicates that this cgroup should
use the default, system-wide, swap files. A value of "none" indicates that
this cgroup should never swap. Other values are interpreted as the path
to a private swap file that can only be used by the owner (and its children).
The swap file has to be created and swapon() has to be done on it with
SWAP_FLAG_PRIVATE, before it can be used. This flag ensures that the swap
file is private and does not get used by others.
Changelog since v1:
- Fixed typos in comment and commit message
- Added rationale to this cover letter (Johannes Weiner)
Jamie Liu (1):
swap: do not store private swap files on swap_list
Suleiman Souhlal (2):
mm/swap: support per memory cgroup swapfiles
swap: Increase the max swap files to 8192 on x86_64
Documentation/cgroups/memory.txt | 15 ++
arch/x86/include/asm/pgtable_64.h | 62 ++++++--
include/linux/memcontrol.h | 2 +
include/linux/swap.h | 45 +++---
mm/memcontrol.c | 76 ++++++++++
mm/memory.c | 3 +-
mm/shmem.c | 2 +-
mm/swap_state.c | 2 +-
mm/swapfile.c | 307 +++++++++++++++++++++++++++++++-------
mm/vmscan.c | 2 +-
10 files changed, 422 insertions(+), 94 deletions(-)
--
1.9.1.423.g4596e3a
--
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:[~2014-04-02 20:35 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-02 20:34 Yu Zhao [this message]
2014-04-02 20:34 ` [PATCH v2 1/3] mm/swap: support per memory cgroup swapfiles Yu Zhao
2014-04-02 20:34 ` [PATCH v2 2/3] swap: do not store private swap files on swap_list Yu Zhao
2014-04-02 20:34 ` [PATCH v2 3/3] swap: Increase the max swap files to 8192 on x86_64 Yu Zhao
2014-04-02 20:54 ` [PATCH v2 0/3] Per-cgroup swap file support Johannes Weiner
2014-04-02 21:29 ` Yu Zhao
2014-04-04 17:10 ` Johannes Weiner
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=1396470849-26154-1-git-send-email-yuzhao@google.com \
--to=yuzhao@google.com \
--cc=cgroups@vger.kernel.org \
--cc=hannes@cmpxchg.org \
--cc=jamieliu@google.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=suleiman@google.com \
--cc=x86@kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).