From: Zhang Yanfei <zhangyanfei.yes@gmail.com>
To: Tejun Heo <tj@kernel.org>
Cc: Zhang Yanfei <zhangyanfei@cn.fujitsu.com>,
"H. Peter Anvin" <hpa@zytor.com>, Yinghai Lu <yinghai@kernel.org>,
Toshi Kani <toshi.kani@hp.com>, Ingo Molnar <mingo@redhat.com>,
Andrew Morton <akpm@linux-foundation.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH part2 v2 0/8] Arrange hotpluggable memory as ZONE_MOVABLE
Date: Mon, 14 Oct 2013 23:34:22 +0800 [thread overview]
Message-ID: <525C0EFE.2010409@gmail.com> (raw)
In-Reply-To: <20131014151902.GL4722@htj.dyndns.org>
Hello tejun,
On 10/14/2013 11:19 PM, Tejun Heo wrote:
> Hey,
>
> On Mon, Oct 14, 2013 at 11:06:14PM +0800, Zhang Yanfei wrote:
>> a little difference here, consider a 16-GB node. If we parse SRAT earlier,
>> and still use the top-down allocation, and kernel image is loaded at 16MB,
>> we reserve other nodes but this 16GB node that kernel resides in is used
>> for boot-up allocation. So the page table is allocated from 16GB to 0.
>> The page table is allocated on top of the the memory as possible.
>>
>> But if we use this approach, no matter how large the page table is, we
>> allocate the page table in low memory which is the case that hpa concerns
>> about the DMA.
>
> Yeah, sure there will be cases where parsing SRAT would be better.
>
> 4k mapping is in use, which is mostly for debugging && memory map is
> composed such that the highest non-hotpluggable address is high
> enough.
>
> It's going in circles again but my point has always been that the
> above in itself don't seem to be substantial enough to justify
> putting, say, initrd loading before page table init.
>
> Later some argued that bringing SRAT parsing earlier could help
> implementing finer grained hotplug, which would be an acceptable path
> to follow; however, that doesn't turn out to be true either.
>
> * Again, it matter if and only if 4k mapping is in use. Do we even
> care?
>
> * SRAT isn't enough. The whole device tree needs to be parsed to put
> page tables into local device. It's a lot of churn, including major
> updates to page table allocation, just to support debug 4k mapping
> cases. Doesn't make much sense to me.
>
> So, SRAT's usefulness seems extremely limited - it helps if the user
> wants to use debug features along with memory hotplug on an extreme
> large machine with devices which have low DMA limit, and that's it.
> To me, it seems to be a poor argument. Just declaring memory hotplug
> works iff large kernel mapping is in use feels like a pretty good
> trade-off to me, and I have no idea why I have to repeat all this,
> which I've written multiple times already, in a private thread again.
>
> If the thread is to make progress, one has to provide counter
> arguments to the points raised. It feels like I'm going in circle
> again. The exact same content I wrote above has been repeated
> multiple times in the past discussions and I'm getting tired of doing
> it without getting any actual response.
>
> When replying, please restore cc's and keep the whole body.
>
Thanks for the whole explanation again. I was just raising some argument
that other guys raised before. I agree with what you said above and already
put some of them into the patch 4 description in v7 version.
Now could you please help reviewing the part2? As I said before, no matter
how we implement the part1, part2 is kind of independent.
--
Thanks.
Zhang Yanfei
next prev parent reply other threads:[~2013-10-14 15:34 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-12 6:00 [PATCH part2 v2 0/8] Arrange hotpluggable memory as ZONE_MOVABLE Zhang Yanfei
2013-10-12 6:00 ` Zhang Yanfei
2013-10-12 6:00 ` Zhang Yanfei
2013-10-12 6:03 ` [PATCH part2 v2 1/8] x86: get pg_data_t's memory from other node Zhang Yanfei
2013-10-12 6:03 ` Zhang Yanfei
2013-10-12 6:03 ` Zhang Yanfei
2013-10-12 6:04 ` [PATCH part2 v2 2/8] memblock, numa: Introduce flag into memblock Zhang Yanfei
2013-10-12 6:04 ` Zhang Yanfei
2013-10-12 6:04 ` Zhang Yanfei
2013-10-12 6:05 ` [PATCH part2 v2 3/8] memblock, mem_hotplug: Introduce MEMBLOCK_HOTPLUG flag to mark hotpluggable regions Zhang Yanfei
2013-10-12 6:05 ` Zhang Yanfei
2013-10-12 6:05 ` Zhang Yanfei
2013-10-12 6:06 ` [PATCH part2 v2 4/8] memblock: Make memblock_set_node() support different memblock_type Zhang Yanfei
2013-10-12 6:06 ` Zhang Yanfei
2013-10-12 6:06 ` Zhang Yanfei
2013-10-12 6:07 ` [PATCH part2 v2 5/8] acpi, numa, mem_hotplug: Mark hotpluggable memory in memblock Zhang Yanfei
2013-10-12 6:07 ` Zhang Yanfei
2013-10-12 6:07 ` Zhang Yanfei
2013-10-12 6:08 ` [PATCH part2 v2 6/8] acpi, numa, mem_hotplug: Mark all nodes the kernel resides un-hotpluggable Zhang Yanfei
2013-10-12 6:08 ` Zhang Yanfei
2013-10-12 6:08 ` Zhang Yanfei
2013-10-12 6:09 ` [PATCH part2 v2 7/8] memblock, mem_hotplug: Make memblock skip hotpluggable regions if needed Zhang Yanfei
2013-10-12 6:09 ` Zhang Yanfei
2013-10-12 6:09 ` Zhang Yanfei
2013-10-12 6:09 ` [PATCH part2 v2 8/8] x86, numa, acpi, memory-hotplug: Make movable_node have higher priority Zhang Yanfei
2013-10-12 6:09 ` Zhang Yanfei
2013-10-12 6:09 ` Zhang Yanfei
[not found] ` <525B19C3.9040907@gmail.com>
[not found] ` <20131014133835.GG4722@htj.dyndns.org>
[not found] ` <525BFCF3.5010908@gmail.com>
[not found] ` <20131014142719.GI4722@htj.dyndns.org>
[not found] ` <525C02DC.4050706@gmail.com>
[not found] ` <20131014145131.GJ4722@htj.dyndns.org>
[not found] ` <525C0866.2010808@gmail.com>
[not found] ` <20131014151902.GL4722@htj.dyndns.org>
2013-10-14 15:34 ` Zhang Yanfei [this message]
2013-10-14 19:34 ` [PATCH part2 v2 0/8] Arrange hotpluggable memory as ZONE_MOVABLE Yinghai Lu
2013-10-14 20:04 ` Tejun Heo
2013-10-14 20:37 ` Yinghai Lu
2013-10-14 20:42 ` H. Peter Anvin
2013-10-15 6:50 ` Ingo Molnar
2013-10-15 17:31 ` H. Peter Anvin
2013-10-16 7:03 ` Ingo Molnar
2013-10-14 20:55 ` Tejun Heo
2013-10-15 1:40 ` Zhang Yanfei
2013-10-15 2:25 ` Yinghai Lu
2013-10-15 13:16 ` Tejun Heo
2013-10-14 20:35 ` H. Peter Anvin
2013-10-14 20:42 ` Yinghai Lu
2013-10-14 20:49 ` H. Peter Anvin
2013-11-13 13:50 ` Zhang Yanfei
2013-11-13 13:50 ` Zhang Yanfei
2013-11-19 9:56 ` Zhang Yanfei
2013-11-19 9:56 ` Zhang Yanfei
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=525C0EFE.2010409@gmail.com \
--to=zhangyanfei.yes@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tj@kernel.org \
--cc=toshi.kani@hp.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 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.