From: Tang Chen <imtangchen@gmail.com>
To: Tejun Heo <tj@kernel.org>
Cc: Tang Chen <tangchen@cn.fujitsu.com>,
robert.moore@intel.com, lv.zheng@intel.com, rjw@sisk.pl,
lenb@kernel.org, tglx@linutronix.de, mingo@elte.hu,
hpa@zytor.com, akpm@linux-foundation.org, trenn@suse.de,
yinghai@kernel.org, jiang.liu@huawei.com, wency@cn.fujitsu.com,
laijs@cn.fujitsu.com, isimatu.yasuaki@jp.fujitsu.com,
izumi.taku@jp.fujitsu.com, mgorman@suse.de, minchan@kernel.org,
mina86@mina86.com, gong.chen@linux.intel.com,
vasilis.liaskovitis@profitbricks.com, lwoodman@redhat.com,
riel@redhat.com, jweiner@redhat.com, prarit@redhat.com,
zhangyanfei@cn.fujitsu.com, yanghy@cn.fujitsu.com,
x86@kernel.org, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-mm@kvack.org,
linux-acpi@vger.kernel.org, imtangchen@gmail.com
Subject: Re: [PATCH part5 1/7] x86: get pg_data_t's memory from other node
Date: Mon, 12 Aug 2013 23:12:48 +0800 [thread overview]
Message-ID: <5208FB70.5010503@gmail.com> (raw)
In-Reply-To: <20130812143910.GH15892@htj.dyndns.org>
On 08/12/2013 10:39 PM, Tejun Heo wrote:
> Hello,
>
> The subject is a bit misleading. Maybe it should say "allow getting
> ..." rather than "get ..."?
Ok, followed.
>
> On Thu, Aug 08, 2013 at 06:16:13PM +0800, Tang Chen wrote:
......
>
> I suppose the above three paragraphs are trying to say
>
> * A hotpluggable NUMA node may be composed of multiple memory devices
> which individually are hot-pluggable.
>
> * pg_data_t and page tables the serving a NUMA node may be located in
> the same node they're serving; however, if the node is composed of
> multiple hotpluggable memory devices, the device containing them
> should be the last one to be removed.
>
> * For physical memory hotplug, whole NUMA node hotunplugging is fine;
> however, in virtualizied environments, finer grained hotunplugging
> is desirable; unfortunately, there currently is no way to which
> specific memory device pg_data_t and page tables are allocated
> inside making it impossible to order unpluggings of memory devices
> of a NUMA node. To avoid the ordering problem while allowing
> removal of subset fo a NUMA node, it has been decided that pg_data_t
> and page tables should be allocated on a different non-hotpluggable
> NUMA node.
>
> Am I following it correctly? If so, can you please update the
> description? It's quite confusing.
Yes, you are right. I'll update the description.
> Also, the decision seems rather
> poorly made. It should be trivial to allocate memory for pg_data_t
> and page tables in one end of the NUMA node and just record the
> boundary to distinguish between the area which can be removed any time
> and the other which can only be removed as a unit as the last step.
We have tried, but the hot-remove path is difficult to fix.
Please refer to:
https://lkml.org/lkml/2013/6/13/249
Actually, the above patch-set can achieve movable node, what you said.
But we have the following problems:
1. The device holding pagetable cannot be removed before other devices.
In virtualization environment, it could be prlblematic.
(https://lkml.org/lkml/2013/6/18/527)
2. It will break the semanteme of memory_block online/offline. If part
of the memory_block is pagetable, and it is offlined, what status
it should have ? My patches set it to offline, but the kernel
is still using the memory.
I'm not saying it is not fixable. But we finally came to that we
may do the movable node in the current way and then improve it,
including local pgdat and pagetable. We need more discussion on that.
But it should not block the memory hotplug developping.
I suggest to do movable node in the current way first, and improve
it after this is done.
Thanks.
next prev parent reply other threads:[~2013-08-12 15:13 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-08 10:16 [PATCH part5 0/7] Arrange hotpluggable memory as ZONE_MOVABLE Tang Chen
2013-08-08 10:16 ` [PATCH part5 1/7] x86: get pg_data_t's memory from other node Tang Chen
2013-08-12 14:39 ` Tejun Heo
2013-08-12 15:12 ` Tang Chen [this message]
2013-08-08 10:16 ` [PATCH part5 2/7] x86, numa, mem_hotplug: Skip all the regions the kernel resides in Tang Chen
2013-08-08 10:16 ` [PATCH part5 3/7] memblock, numa: Introduce flag into memblock Tang Chen
2013-08-08 10:16 ` [PATCH part5 4/7] memblock, mem_hotplug: Introduce MEMBLOCK_HOTPLUG flag to mark hotpluggable regions Tang Chen
2013-08-08 10:16 ` [PATCH part5 5/7] memblock, mem_hotplug: Make memblock skip hotpluggable regions by default Tang Chen
2013-08-14 21:54 ` Naoya Horiguchi
2013-08-15 5:15 ` Tang Chen
2013-08-08 10:16 ` [PATCH part5 6/7] mem-hotplug: Introduce movablenode boot option to {en|dis}able using SRAT Tang Chen
2013-08-08 10:16 ` [PATCH part5 7/7] x86, numa, acpi, memory-hotplug: Make movablenode have higher priority Tang Chen
2013-08-09 16:32 ` [PATCH part5 0/7] Arrange hotpluggable memory as ZONE_MOVABLE Tejun Heo
2013-08-12 8:54 ` Tang Chen
2013-08-12 14:50 ` Tejun Heo
2013-08-12 15:14 ` H. Peter Anvin
2013-08-12 15:23 ` Tejun Heo
2013-08-12 16:29 ` Tang Chen
2013-08-12 16:46 ` Tejun Heo
2013-08-12 18:23 ` Tang Chen
2013-08-12 20:20 ` Tejun Heo
2013-08-13 6:14 ` Tang Chen
2013-08-13 9:56 ` Tang Chen
2013-08-13 14:38 ` Tejun Heo
2013-08-12 15:41 ` Tang Chen
2013-08-12 15:46 ` Tejun Heo
2013-08-12 16:19 ` Tang Chen
2013-08-12 16:22 ` Tejun Heo
2013-08-12 17:01 ` Tang Chen
2013-08-12 17:23 ` H. Peter Anvin
2013-08-14 18:22 ` KOSAKI Motohiro
2013-08-12 18:07 ` Tejun Heo
2013-08-14 18:15 ` KOSAKI Motohiro
2013-08-14 18:23 ` Tejun Heo
2013-08-14 19:40 ` KOSAKI Motohiro
2013-08-14 19:55 ` Tejun Heo
2013-08-14 20:29 ` KOSAKI Motohiro
2013-08-14 20:30 ` H. Peter Anvin
2013-08-14 20:35 ` Tejun Heo
2013-08-14 21:17 ` KOSAKI Motohiro
2013-08-14 21:36 ` Tejun Heo
2013-08-15 1:08 ` KOSAKI Motohiro
2013-08-15 1:21 ` Tejun Heo
2013-08-15 1:33 ` Tejun Heo
2013-08-15 1:44 ` KOSAKI Motohiro
2013-08-15 2:22 ` Tejun Heo
2013-08-15 1:38 ` KOSAKI Motohiro
2013-08-15 1:51 ` Tejun Heo
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=5208FB70.5010503@gmail.com \
--to=imtangchen@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=gong.chen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=isimatu.yasuaki@jp.fujitsu.com \
--cc=izumi.taku@jp.fujitsu.com \
--cc=jiang.liu@huawei.com \
--cc=jweiner@redhat.com \
--cc=laijs@cn.fujitsu.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lv.zheng@intel.com \
--cc=lwoodman@redhat.com \
--cc=mgorman@suse.de \
--cc=mina86@mina86.com \
--cc=minchan@kernel.org \
--cc=mingo@elte.hu \
--cc=prarit@redhat.com \
--cc=riel@redhat.com \
--cc=rjw@sisk.pl \
--cc=robert.moore@intel.com \
--cc=tangchen@cn.fujitsu.com \
--cc=tglx@linutronix.de \
--cc=tj@kernel.org \
--cc=trenn@suse.de \
--cc=vasilis.liaskovitis@profitbricks.com \
--cc=wency@cn.fujitsu.com \
--cc=x86@kernel.org \
--cc=yanghy@cn.fujitsu.com \
--cc=yinghai@kernel.org \
--cc=zhangyanfei@cn.fujitsu.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;
as well as URLs for NNTP newsgroup(s).