From: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
To: Lai Jiangshan <laijs@cn.fujitsu.com>
Cc: Mel Gorman <mel@csn.ul.ie>, <linux-kernel@vger.kernel.org>
Subject: Re: [RFC V3 PATCH 00/25] memory,numa: introduce MOVABLE-dedicated node and online_movable for hotplug
Date: Thu, 23 Aug 2012 17:22:30 +0900 [thread overview]
Message-ID: <5035E846.50707@jp.fujitsu.com> (raw)
In-Reply-To: <1344244999-5081-1-git-send-email-laijs@cn.fujitsu.com>
Hi Lai,
Sorry for late reply.
I'm trying to apply your patchset into linux-3.6-rc3.
But I failed to apply them.
What is the based kernel that can apply your patch?
Thanks,
Yasuaki Ishimatsu
2012/08/06 18:22, Lai Jiangshan wrote:
> A) Introduction:
>
> This patchset adds MOVABLE-dedicated node and online_movable for memory-management.
>
> It is used for anti-fragmentation(hugepage, big-order allocation...),
> hot-removal-of-memory(virtualization, power-conserve, move memory between systems
> to make better utilities of memories).
>
> B) User Interface:
>
> When users(big system manager) need config some node/memory as MOVABLE:
> 1 Use kernelcore_max_addr=XX when boot
> 2 Use movable_online hotplug action when running
> We may introduce some more convenient interface, such as
> movable_node=NODE_LIST boot option.
>
> C) Patches
>
> Patch1-3 Fix problems of the current code.(all related with hotplug)
> Patch4 cleanup for node_state_attr
> Patch5 introduce N_MEMORY
> Patch6-18 use N_MEMORY instead N_HIGH_MEMORY.
> The patches are separated by subsystem,
> *these conversions was(must be) checked carefully*.
> Patch18 also changes the node_states initialization
> Patch19 Add config to allow MOVABLE-dedicated node
> Patch20-24 Add kernelcore_max_addr
> Patch25 Add online_movable and online_kernel
>
>
> D) changes
> change V3-v2:
> Proper nodemask management
>
> change V2-V1:
>
> The original V1 patchset of MOVABLE-dedicated node is here:
> http://comments.gmane.org/gmane.linux.kernel.mm/78122
>
> The new V2 adds N_MEMORY and a notion of "MOVABLE-dedicated node".
> And fix some related problems.
>
> The orignal V1 patchset of "add online_movable" is here:
> https://lkml.org/lkml/2012/7/4/145
>
> The new V2 discards the MIGRATE_HOTREMOVE approach, and use a more straight
> implementation(only 1 patch).
>
>
> Lai Jiangshan (21):
> page_alloc.c: don't subtract unrelated memmap from zone's present
> pages
> memory_hotplug: fix missing nodemask management
> slub, hotplug: ignore unrelated node's hot-adding and hot-removing
> node: cleanup node_state_attr
> node_states: introduce N_MEMORY
> cpuset: use N_MEMORY instead N_HIGH_MEMORY
> procfs: use N_MEMORY instead N_HIGH_MEMORY
> memcontrol: use N_MEMORY instead N_HIGH_MEMORY
> oom: use N_MEMORY instead N_HIGH_MEMORY
> mm,migrate: use N_MEMORY instead N_HIGH_MEMORY
> mempolicy: use N_MEMORY instead N_HIGH_MEMORY
> hugetlb: use N_MEMORY instead N_HIGH_MEMORY
> vmstat: use N_MEMORY instead N_HIGH_MEMORY
> kthread: use N_MEMORY instead N_HIGH_MEMORY
> init: use N_MEMORY instead N_HIGH_MEMORY
> vmscan: use N_MEMORY instead N_HIGH_MEMORY
> page_alloc: use N_MEMORY instead N_HIGH_MEMORY change the node_states
> initialization
> hotplug: update nodemasks management
> numa: add CONFIG_MOVABLE_NODE for movable-dedicated node
> page_alloc: add kernelcore_max_addr
> mm, memory-hotplug: add online_movable and online_kernel
>
> Yasuaki Ishimatsu (4):
> x86: get pg_data_t's memory from other node
> x86: use memblock_set_current_limit() to set memblock.current_limit
> memblock: limit memory address from memblock
> memblock: compare current_limit with end variable at
> memblock_find_in_range_node()
>
> Documentation/cgroups/cpusets.txt | 2 +-
> Documentation/kernel-parameters.txt | 9 ++
> Documentation/memory-hotplug.txt | 24 +++-
> arch/x86/kernel/setup.c | 4 +-
> arch/x86/mm/init_64.c | 4 +-
> arch/x86/mm/numa.c | 8 +-
> drivers/base/memory.c | 19 ++-
> drivers/base/node.c | 28 +++--
> fs/proc/kcore.c | 2 +-
> fs/proc/task_mmu.c | 4 +-
> include/linux/cpuset.h | 2 +-
> include/linux/memblock.h | 1 +
> include/linux/memory.h | 2 +
> include/linux/memory_hotplug.h | 13 ++-
> include/linux/nodemask.h | 5 +
> init/main.c | 2 +-
> kernel/cpuset.c | 32 +++---
> kernel/kthread.c | 2 +-
> mm/Kconfig | 8 ++
> mm/hugetlb.c | 24 ++--
> mm/memblock.c | 10 +-
> mm/memcontrol.c | 18 ++--
> mm/memory_hotplug.c | 232 ++++++++++++++++++++++++++++++++---
> mm/mempolicy.c | 12 +-
> mm/migrate.c | 2 +-
> mm/oom_kill.c | 2 +-
> mm/page_alloc.c | 96 +++++++++------
> mm/page_cgroup.c | 2 +-
> mm/slub.c | 4 +-
> mm/vmscan.c | 4 +-
> mm/vmstat.c | 4 +-
> 31 files changed, 437 insertions(+), 144 deletions(-)
>
prev parent reply other threads:[~2012-08-23 8:22 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-02 6:01 [RFC PATCH 00/23 V2] memory,numa: introduce MOVABLE-dedicated node and online_movable for hotplug Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 01/23 V2] node_states: introduce N_MEMORY Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 02/23 V2] cpuset: use N_MEMORY instead N_HIGH_MEMORY Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 03/23 V2] procfs: " Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 04/23 V2] oom: " Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 05/23 V2] mm,migrate: " Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 16:09 ` Christoph Lameter
2012-08-02 16:09 ` Christoph Lameter
2012-08-02 6:01 ` [RFC PATCH 06/23 V2] mempolicy: " Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
[not found] ` <1343887288-8866-1-git-send-email-laijs-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2012-08-02 6:01 ` [RFC PATCH 07/23 V2] memcontrol: " Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 08/23 V2] hugetlb: " Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-04 14:02 ` Hillf Danton
2012-08-04 14:02 ` Hillf Danton
2012-08-02 6:01 ` [RFC PATCH 09/23 V2] vmstat: " Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 16:09 ` Christoph Lameter
2012-08-02 16:09 ` Christoph Lameter
2012-08-02 6:01 ` [RFC PATCH 10/23 V2] kthread: " Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 11/23 V2] init: " Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 12/23 V2] vmscan: " Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 13/23 V2] page_alloc: use N_MEMORY instead N_HIGH_MEMORY change the node_states initialization Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 14/23 V2] slub, hotplug: ignore unrelated node's hot-adding and hot-removing Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 15/23 V2] memory_hotplug: fix missing nodemask management Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 16/23 V2] numa: add CONFIG_MOVABLE_NODE for movable-dedicated node Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 17/23 V2] page_alloc.c: don't subtract unrelated memmap from zone's present pages Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 18/23 V2] page_alloc: add kernelcore_max_addr Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 19/23 V2] x86: get pg_data_t's memory from other node Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 20/23 V2] x86: use memblock_set_current_limit() to set memblock.current_limit Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 21/23 V2] memblock: limit memory address from memblock Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 22/23 V2] memblock: compare current_limit with end variable at memblock_find_in_range_node() Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-02 6:01 ` [RFC PATCH 23/23 V2] mm, memory-hotplug: add online_movable Lai Jiangshan
2012-08-02 6:01 ` Lai Jiangshan
2012-08-06 9:22 ` [RFC V3 PATCH 00/25] memory,numa: introduce MOVABLE-dedicated node and online_movable for hotplug Lai Jiangshan
2012-08-06 9:22 ` [RFC V3 PATCH 01/25] page_alloc.c: don't subtract unrelated memmap from zone's present pages Lai Jiangshan
2012-08-06 9:22 ` Lai Jiangshan
2012-08-06 9:22 ` [RFC V3 PATCH 02/25] memory_hotplug: fix missing nodemask management Lai Jiangshan
2012-08-06 9:22 ` Lai Jiangshan
2012-08-06 9:22 ` [RFC V3 PATCH 03/25] slub, hotplug: ignore unrelated node's hot-adding and hot-removing Lai Jiangshan
2012-08-06 9:22 ` Lai Jiangshan
2012-08-06 9:22 ` [RFC V3 PATCH 04/25] node: cleanup node_state_attr Lai Jiangshan
2012-08-06 9:22 ` [RFC V3 PATCH 05/25] node_states: introduce N_MEMORY Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 06/25] cpuset: use N_MEMORY instead N_HIGH_MEMORY Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 07/25] procfs: " Lai Jiangshan
[not found] ` <1344244999-5081-1-git-send-email-laijs-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2012-08-06 9:23 ` [RFC V3 PATCH 08/25] memcontrol: " Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 09/25] oom: " Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 10/25] mm,migrate: " Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 11/25] mempolicy: " Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 12/25] hugetlb: " Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 13/25] vmstat: " Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 14/25] kthread: " Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 15/25] init: " Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 16/25] vmscan: " Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 17/25] page_alloc: use N_MEMORY instead N_HIGH_MEMORY change the node_states initialization Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 18/25] hotplug: update nodemasks management Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 19/25] numa: add CONFIG_MOVABLE_NODE for movable-dedicated node Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 20/25] page_alloc: add kernelcore_max_addr Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 21/25] x86: get pg_data_t's memory from other node Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 22/25] x86: use memblock_set_current_limit() to set memblock.current_limit Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 23/25] memblock: limit memory address from memblock Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 24/25] memblock: compare current_limit with end variable at memblock_find_in_range_node() Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-06 9:23 ` [RFC V3 PATCH 25/25] mm, memory-hotplug: add online_movable and online_kernel Lai Jiangshan
2012-08-06 9:23 ` Lai Jiangshan
2012-08-23 8:22 ` Yasuaki Ishimatsu [this message]
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=5035E846.50707@jp.fujitsu.com \
--to=isimatu.yasuaki@jp.fujitsu.com \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.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 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.