From: Lai Jiangshan <laijs@cn.fujitsu.com>
To: Yinghai Lu <yinghai@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>,
Tang Chen <tangchen@cn.fujitsu.com>,
Don Morris <don.morris@hp.com>,
Tim Gardner <tim.gardner@canonical.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Tejun Heo <tj@kernel.org>, Tony Luck <tony.luck@intel.com>,
Thomas Renninger <trenn@suse.de>,
linux-kernel@vger.kernel.org, tglx@linutronix.de,
mingo@redhat.com, a.p.zijlstra@chello.nl,
jarkko.sakkinen@intel.com
Subject: Re: sched: CPU #1's llc-sibling CPU #0 is not on the same node!
Date: Wed, 27 Feb 2013 16:00:36 +0800 [thread overview]
Message-ID: <512DBD24.7090302@cn.fujitsu.com> (raw)
In-Reply-To: <CAE9FiQWAxL6F70fF0dQcBZKTReJOiC+Ez0xcqcosgAdSagS-bA@mail.gmail.com>
On 02/27/2013 01:11 PM, Yinghai Lu wrote:
> On Tue, Feb 26, 2013 at 8:43 PM, Yasuaki Ishimatsu
> <isimatu.yasuaki@jp.fujitsu.com> wrote:
>> 2013/02/27 13:04, Yinghai Lu wrote:
>>>
>>> On Tue, Feb 26, 2013 at 7:38 PM, Yasuaki Ishimatsu
>>> <isimatu.yasuaki@jp.fujitsu.com> wrote:
>>>>
>>>> 2013/02/27 11:30, Yinghai Lu wrote:
>>>>>
>>>>> Do you mean you can not boot one socket system with 1G ram ?
>>>>> Assume socket 0 does not support hotplug, other 31 sockets support hot
>>>>> plug.
>>>>>
>>>>> So we could boot system only with socket0, and later one by one hot
>>>>> add other cpus.
>>>>
>>>>
>>>>
>>>> In this case, system can boot. But other cpus with bunch of ram hot
>>>> plug may fails, since system does not have enough memory for cover
>>>> hot added memory. When hot adding memory device, kernel object for the
>>>> memory is allocated from 1G ram since hot added memory has not been
>>>> enabled.
>>>>
>>>
>>> yes, it may fail, if the one node memory need page table and vmemmap
>>> is more than 1g ...
>>>
>>
>>> for hot add memory we need to
>>> 1. add another wrapper for init_memory_mapping, just like
>>> init_mem_mapping() for booting path.
>>> 2. we need make memblock more generic, so we can use it with hot add
>>> memory during runtime.
>>> 3. with that we can initialize page table for hot added node with ram.
>>> a. initial page table for 2M near node top is from node0 ( that does
>>> not support hot plug).
>>> b. then will use 2M for memory below node top...
>>> c. with that we will make sure page table stay on local node.
>>> alloc_low_pages need to be updated to support that.
>>> 4. need to make sure vmemmap on local node too.
>>
>>
>> I think so too. By this, memory hot plug becomes more useful.
>>
>>>
>>> so hot-remove node will work too later.
>>>
>>> In the long run, we should make booting path and hot adding more
>>> similar and share at most code.
>>> That will make code get more test coverage.
>
> Tang, Yasuaki, Andrew,
>
> Please check if you are ok with attached reverting patch.
>
> Tim, Don,
> Can you try if attached reverting patch fix all the problems for you ?
>
Hi, Yinghai, Andrew
In the mails and the changlog of the revert-patch, I think Yinghai
mainly worries about 3 problems.
1) the current implement has bug and bad code.
Yes. Any bug should be fixed. we should fix it directly, or
we can revert the related patches and then send the fixed patches.
But the related patch is only one or two, it is not good idea
to revert the whole patchset or the whole feature. Right?
Thank you all for addressing the bug. we are on the way to fix it.
2) many memory can be put into hotplugable memory, but we have not yet moved them
into hotplugable memory yet. like: vmemmap, some page table ...etc, a lot.
This is a restriction in the currently kernel, we can't convert them quickly.
we must convert them step by step. example, we are converting the memory of
page_cgroup to hotplugable memory.
3) if the user(or firmware) specify the un-hotplugable memory too small, the system can't
work, even can't boot.
Any feature/system has its own minimum requirements, the user should
meet the requirements and specify more un-hotplugable memory.
so I don't think it is a problem in kernel land.
But the problem 2)(above) make this feature's "minimum requirements"
much higher. It is the real thing that Yinghai worries about.
But all systems which use this feature can offer this higher requirement
very easily. The users should specify enough un-hotplugable memory
before and after we decrease the "minimum requirements".
The whole feature works very well if the user specify enough
un-hotplugable memory. So the problem 2) and 3) are not urgent
problems.
And our team has another problem, we are still not good at community work,
(example, the patch TITLE is total misleading), but we are growing up.
We are sorry and thank you for pointing out the mistakes.
The feature/patchset does have problems. But it is not good to tangle
all the problems together and revert the whole feature.
Thanks,
Lai
next prev parent reply other threads:[~2013-02-27 7:58 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-25 15:02 sched: CPU #1's llc-sibling CPU #0 is not on the same node! Tim Gardner
2013-02-25 15:32 ` Tim Gardner
2013-02-25 21:27 ` Don Morris
2013-02-25 22:50 ` Yinghai Lu
2013-02-26 0:35 ` Yinghai Lu
2013-02-26 2:06 ` Yinghai Lu
2013-02-26 3:21 ` Martin Bligh
2013-02-26 4:20 ` Yinghai Lu
2013-02-26 4:51 ` Martin Bligh
2013-02-26 6:09 ` Tang Chen
2013-02-26 6:57 ` Yinghai Lu
2013-02-26 7:29 ` Tang Chen
2013-02-26 7:53 ` Yasuaki Ishimatsu
2013-03-01 6:37 ` H. Peter Anvin
2013-03-01 8:05 ` Yinghai Lu
2013-03-01 10:59 ` Ingo Molnar
2013-03-01 11:03 ` Borislav Petkov
2013-03-01 11:24 ` Ingo Molnar
2013-03-01 15:32 ` H. Peter Anvin
2013-02-26 1:51 ` Tang Chen
2013-02-26 21:36 ` Yinghai Lu
2013-02-26 22:44 ` Yinghai Lu
2013-02-27 0:52 ` Yasuaki Ishimatsu
2013-02-27 2:30 ` Yinghai Lu
2013-02-27 3:38 ` Yasuaki Ishimatsu
2013-02-27 4:04 ` Yinghai Lu
2013-02-27 4:43 ` Yasuaki Ishimatsu
2013-02-27 5:11 ` Yinghai Lu
2013-02-27 5:49 ` Yasuaki Ishimatsu
2013-02-27 6:54 ` Yinghai Lu
2013-02-27 7:11 ` Tang Chen
2013-02-27 7:25 ` Yinghai Lu
2013-02-27 7:44 ` Tang Chen
2013-02-28 16:07 ` Yinghai Lu
2013-03-01 1:39 ` Tang Chen
2013-02-27 8:00 ` Lai Jiangshan [this message]
2013-02-27 21:26 ` Andrew Morton
2013-02-28 10:01 ` Tang Chen
2013-03-01 3:13 ` Linus Torvalds
2013-03-01 3:46 ` Tang Chen
2013-03-01 4:32 ` Linus Torvalds
2013-03-01 4:38 ` H. Peter Anvin
[not found] ` <CAE9FiQXb7K=QTR4PgMdNSoPm2LgYkxAuXUUZ0BXtgicQOGOaUA@mail.gmail.com>
2013-03-01 6:02 ` Yasuaki Ishimatsu
2013-03-01 7:55 ` Yinghai Lu
2013-03-01 15:43 ` H. Peter Anvin
2013-03-01 22:51 ` [PATCH] x86, ACPI, mm: Revert movablemem_map support Yinghai Lu
2013-03-01 6:18 ` sched: CPU #1's llc-sibling CPU #0 is not on the same node! Tang Chen
2013-03-01 8:02 ` Yinghai Lu
2013-03-01 8:39 ` Yasuaki Ishimatsu
2013-03-01 7:43 ` Yinghai Lu
2013-03-01 11:32 ` Tang Chen
2013-03-01 19:31 ` Yinghai Lu
[not found] ` <CAD11hGx5N9Eqy5bX-SEv9c7oR6Ehz2pUJwdrK0Q=L4S44RC5gg@mail.gmail.com>
2013-03-02 5:46 ` Yinghai Lu
2013-03-01 4:40 ` Andrew Morton
2013-02-27 12:40 ` Don Morris
2013-02-27 16:28 ` Luck, Tony
2013-02-27 17:30 ` Yinghai Lu
2013-02-27 17:50 ` Luck, Tony
2013-02-27 2:14 ` Tang Chen
2013-02-27 2:24 ` Yinghai Lu
2013-02-27 4:32 ` Tang Chen
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=512DBD24.7090302@cn.fujitsu.com \
--to=laijs@cn.fujitsu.com \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=don.morris@hp.com \
--cc=hpa@zytor.com \
--cc=isimatu.yasuaki@jp.fujitsu.com \
--cc=jarkko.sakkinen@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tangchen@cn.fujitsu.com \
--cc=tglx@linutronix.de \
--cc=tim.gardner@canonical.com \
--cc=tj@kernel.org \
--cc=tony.luck@intel.com \
--cc=torvalds@linux-foundation.org \
--cc=trenn@suse.de \
--cc=yinghai@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