From: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
To: linux-mm@kvack.org
Cc: Andrew Morton <akpm@linux-foundation.org>,
Mel Gorman <mel@csn.ul.ie>, Hugh Dickins <hughd@google.com>,
KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
Andi Kleen <andi@firstfloor.org>,
linux-kernel@vger.kernel.org
Subject: [RFC][PATCH 0/9] extend hugepage migration
Date: Thu, 21 Feb 2013 14:41:39 -0500 [thread overview]
Message-ID: <1361475708-25991-1-git-send-email-n-horiguchi@ah.jp.nec.com> (raw)
Hi,
Hugepage migration is now available only for soft offlining (moving
data on the half corrupted page to another page to save the data).
But it's also useful some other users of page migration, so this
patchset tries to extend some of such users to support hugepage.
The targets of this patchset are NUMA related system calls (i.e.
migrate_pages(2), move_pages(2), and mbind(2)), and memory hotplug.
This patchset does not extend page migration in memory compaction,
because I think that users of memory compaction mainly expect to
construct thp by arranging raw pages but hugepage migration doesn't
help it.
CMA, another user of page migration, can have benefit from hugepage
migration, but is not enabled to support it now. This is because
I've never used CMA and need to learn more to extend and/or test
hugepage migration in CMA. I'll add this in later version if it
becomes ready, or will post as a separate patchset.
Hugepage migration of 1GB hugepage is not enabled for now, because
I'm not sure whether users of 1GB hugepage really want it.
We need to spare free hugepage in order to do migration, but I don't
think that users want to 1GB memory to idle for that purpose
(currently we can't expand/shrink 1GB hugepage pool after boot).
Could you review and give me some comments/feedbacks?
Thanks,
Naoya Horiguchi
---
Easy patch access:
git@github.com:Naoya-Horiguchi/linux.git
branch:extend_hugepage_migration
Test code:
git@github.com:Naoya-Horiguchi/test_hugepage_migration_extension.git
Naoya Horiguchi (9):
migrate: add migrate_entry_wait_huge()
migrate: make core migration code aware of hugepage
soft-offline: use migrate_pages() instead of migrate_huge_page()
migrate: clean up migrate_huge_page()
migrate: enable migrate_pages() to migrate hugepage
migrate: enable move_pages() to migrate hugepage
mbind: enable mbind() to migrate hugepage
memory-hotplug: enable memory hotplug to handle hugepage
remove /proc/sys/vm/hugepages_treat_as_movable
Documentation/sysctl/vm.txt | 16 ------
include/linux/hugetlb.h | 25 ++++++++--
include/linux/mempolicy.h | 2 +-
include/linux/migrate.h | 12 ++---
include/linux/swapops.h | 4 ++
kernel/sysctl.c | 7 ---
mm/hugetlb.c | 98 ++++++++++++++++++++++++++++--------
mm/memory-failure.c | 20 ++++++--
mm/memory.c | 6 ++-
mm/memory_hotplug.c | 51 +++++++++++++++----
mm/mempolicy.c | 61 +++++++++++++++--------
mm/migrate.c | 119 ++++++++++++++++++++++++++++++--------------
mm/page_alloc.c | 12 +++++
mm/page_isolation.c | 5 ++
14 files changed, 311 insertions(+), 127 deletions(-)
next reply other threads:[~2013-02-21 19:42 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-21 19:41 Naoya Horiguchi [this message]
2013-02-21 19:41 ` [PATCH 1/9] migrate: add migrate_entry_wait_huge() Naoya Horiguchi
2013-03-18 14:51 ` Michal Hocko
2013-03-19 0:06 ` Naoya Horiguchi
2013-03-19 23:57 ` Simon Jeons
2013-03-20 21:53 ` Naoya Horiguchi
2013-03-20 23:36 ` Simon Jeons
2013-04-04 4:57 ` Simon Jeons
2013-02-21 19:41 ` [PATCH 2/9] migrate: make core migration code aware of hugepage Naoya Horiguchi
2013-03-18 15:22 ` Michal Hocko
2013-03-18 15:33 ` Michal Hocko
2013-03-19 0:06 ` Naoya Horiguchi
2013-02-21 19:41 ` [PATCH 3/9] soft-offline: use migrate_pages() instead of migrate_huge_page() Naoya Horiguchi
2013-02-27 7:25 ` Chen Gong
2013-02-27 17:06 ` Naoya Horiguchi
2013-02-27 17:57 ` Naoya Horiguchi
2013-02-21 19:41 ` [PATCH 4/9] migrate: clean up migrate_huge_page() Naoya Horiguchi
2013-02-21 19:41 ` [PATCH 5/9] migrate: enable migrate_pages() to migrate hugepage Naoya Horiguchi
2013-03-18 15:40 ` Michal Hocko
2013-03-19 0:07 ` Naoya Horiguchi
2013-03-19 7:11 ` Michal Hocko
2013-03-20 6:12 ` Naoya Horiguchi
2013-03-20 7:41 ` Michal Hocko
2013-03-20 0:31 ` Simon Jeons
2013-03-20 21:59 ` Naoya Horiguchi
2013-03-21 0:06 ` Simon Jeons
2013-02-21 19:41 ` [PATCH 6/9] migrate: enable move_pages() " Naoya Horiguchi
2013-02-21 19:41 ` [PATCH 7/9] mbind: enable mbind() " Naoya Horiguchi
2013-02-21 19:41 ` [PATCH 8/9] memory-hotplug: enable memory hotplug to handle hugepage Naoya Horiguchi
2013-02-23 7:05 ` Hillf Danton
2013-02-25 16:57 ` Naoya Horiguchi
2013-02-27 7:36 ` Chen Gong
2013-02-27 17:16 ` Naoya Horiguchi
2013-03-18 16:07 ` Michal Hocko
2013-03-20 3:55 ` Naoya Horiguchi
2013-03-20 7:57 ` Michal Hocko
2013-03-20 1:03 ` Simon Jeons
2013-03-20 22:05 ` Naoya Horiguchi
2013-03-20 23:55 ` Simon Jeons
2013-02-21 19:41 ` [PATCH 9/9] remove /proc/sys/vm/hugepages_treat_as_movable Naoya Horiguchi
2013-02-28 6:02 ` KOSAKI Motohiro
2013-02-28 18:16 ` Naoya Horiguchi
2013-03-18 15:51 ` Michal Hocko
2013-03-19 0:07 ` Naoya Horiguchi
2013-03-19 23:43 ` [RFC][PATCH 0/9] extend hugepage migration Simon Jeons
2013-03-20 21:35 ` Naoya Horiguchi
2013-03-20 23:49 ` Simon Jeons
2013-03-21 12:56 ` Michal Hocko
2013-03-21 23:46 ` Simon Jeons
[not found] ` <20130322081532.GC31457@dhcp22.suse.cz>
2013-04-05 1:14 ` Simon Jeons
2013-04-05 8:08 ` Michal Hocko
2013-04-05 9:00 ` Simon Jeons
2013-04-05 9:30 ` Michal Hocko
2013-04-07 0:32 ` Simon Jeons
2013-04-07 14:05 ` KOSAKI Motohiro
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=1361475708-25991-1-git-send-email-n-horiguchi@ah.jp.nec.com \
--to=n-horiguchi@ah.jp.nec.com \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=hughd@google.com \
--cc=kosaki.motohiro@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mel@csn.ul.ie \
/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).