From: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>,
Andrew Morton <akpm@linux-foundation.org>,
x86@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, linux-acpi@vger.kernel.org,
linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
linux-ia64@vger.kernel.org, cmetcalf@tilera.com,
sparclinux@vger.kernel.org, rientjes@google.com,
liuj97@gmail.com, len.brown@intel.com, benh@kernel.crashing.org,
paulus@samba.org, cl@linux.com, minchan.kim@gmail.com,
kosaki.motohiro@jp.fujitsu.com
Subject: Re: [RFC v8 PATCH 00/20] memory-hotplug: hot-remove physical memory
Date: Wed, 19 Sep 2012 19:02:05 +0200 [thread overview]
Message-ID: <20120919170205.GA15549@dhcp-192-168-178-175.profitbricks.localdomain> (raw)
In-Reply-To: <50584159.3020403@cn.fujitsu.com>
Hi,
On Tue, Sep 18, 2012 at 05:39:37PM +0800, Wen Congyang wrote:
> At 09/13/2012 01:18 AM, Vasilis Liaskovitis Wrote:
> > Hi,
> >
> > On Wed, Sep 12, 2012 at 01:20:28PM +0800, Wen Congyang wrote:
> >> Hmm, seabios doesn't support ACPI table SLIT. We can specify node it for dimm
> >> device, so I think we should support SLIT in seabios. Otherwise we may meet
> >> the following kernel messages:
> >> [ 325.016769] init_memory_mapping: [mem 0x40000000-0x5fffffff]
> >> [ 325.018060] [mem 0x40000000-0x5fffffff] page 2M
> >> [ 325.019168] [ffffea0001000000-ffffea00011fffff] potential offnode page_structs
> >> [ 325.024172] [ffffea0001200000-ffffea00013fffff] potential offnode page_structs
> >> [ 325.028596] [ffffea0001400000-ffffea00017fffff] PMD -> [ffff880035000000-ffff8800353fffff] on node 1
> >> [ 325.031775] [ffffea0001600000-ffffea00017fffff] potential offnode page_structs
> >>
> >> Do you have plan to do it?
> > thanks for testing.
> >
> > commit 5294828 from https://github.com/vliaskov/seabios/commits/memhp-v2
> > implements a SLIT table for the given numa nodes.
>
> Hmm, why do you set node_distance(i, j) to REMOTE_DISTANCE if i != j?
What's the alternative?
Afaik SLIT[i][j] shows the distance between proximity domains (_PXM) i and j. It
doesn't correspond to individual SRAT entries. So i and j here are not memory
ranges associated with 2 different dimms. They denote domains i and j, which map
to 2 different logical nodeids in the kernel.
A default setting would be to set the entry to REMOTE_DISTANCE for all different
domains (i!=j). So this SLIT implementation is not useful, since it results
in the same numa_distance values as the non-SLIT kernel calculation in
include/linux/topology.h
>
> >
> > However I am not sure the SLIT is the problem. The kernel builds a default
> > numa_distance table in arch/x86/mm/numa.c: numa_alloc_distance(). If the BIOS
> > doesn't present a SLIT, this should take effect (numactl --hardware should
> > report this table)
>
> If the BIOS doesn't present a SLIT, numa_distance_cnt is set to 0 in the
> function numa_reset_distance(). So node_distance(i, j) is REMOTE_DISTANCE(i != j).
>
> >
> > Do you have more details on how to reproduce the warning? e.g. how many dimms
> > are present in the system? Does this happen on the first dimm hot-plugged?
> > Are all SRAT entries parsed correctly at boot-time or do you see any other
> > warnings at boot-time?
>
> I can't reproduce it again. IIRC, I only do the following things:
> hotplug a memory device, online the pages, offline the pages and hot remove
> the memory device.
Is the sparse_vmemmap allocation supposed to guarantee no off-node allocations?
If not, then the warning could be valid.
thanks,
- Vasilis
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
prev parent reply other threads:[~2012-09-19 17:02 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-28 10:00 wency
2012-08-28 10:00 ` [RFC v8 PATCH 01/20] memory-hotplug: rename remove_memory() to offline_memory()/offline_pages() wency
2012-08-28 10:00 ` [RFC v8 PATCH 02/20] memory-hotplug: implement offline_memory() wency
2012-08-28 10:00 ` [RFC v8 PATCH 03/20] memory-hotplug: store the node id in acpi_memory_device wency
2012-08-28 10:00 ` [RFC v8 PATCH 04/20] memory-hotplug: offline and remove memory when removing the memory device wency
2012-08-31 20:55 ` Andrew Morton
2012-09-03 1:30 ` Wen Congyang
2012-08-28 10:00 ` [RFC v8 PATCH 05/20] memory-hotplug: check whether memory is present or not wency
2012-08-28 10:00 ` [RFC v8 PATCH 06/20] memory-hotplug: export the function acpi_bus_remove() wency
2012-08-28 10:00 ` [RFC v8 PATCH 07/20] memory-hotplug: call acpi_bus_remove() to remove memory device wency
2012-08-28 10:00 ` [RFC v8 PATCH 08/20] memory-hotplug: remove /sys/firmware/memmap/X sysfs wency
2012-08-31 21:06 ` Andrew Morton
2012-09-03 5:51 ` Wen Congyang
2012-09-04 23:16 ` Andrew Morton
2012-09-05 1:41 ` Wen Congyang
2012-09-03 7:31 ` Wen Congyang
2012-08-28 10:00 ` [RFC v8 PATCH 09/20] memory-hotplug: does not release memory region in PAGES_PER_SECTION chunks wency
2012-08-28 10:00 ` [RFC v8 PATCH 10/20] memory-hotplug: add memory_block_release wency
2012-08-28 10:00 ` [RFC v8 PATCH 11/20] memory-hotplug: remove_memory calls __remove_pages wency
2012-08-28 10:00 ` [RFC v8 PATCH 12/20] memory-hotplug: introduce new function arch_remove_memory() wency
2012-08-28 10:00 ` [RFC v8 PATCH 13/20] memory-hotplug: check page type in get_page_bootmem wency
2012-08-31 21:30 ` Andrew Morton
2012-09-04 3:46 ` Wen Congyang
2012-09-04 9:54 ` Yasuaki Ishimatsu
2012-08-28 10:00 ` [RFC v8 PATCH 14/20] memory-hotplug: move register_page_bootmem_info_node and put_page_bootmem for sparse-vmemmap wency
2012-08-28 10:00 ` [RFC v8 PATCH 15/20] memory-hotplug: implement register_page_bootmem_info_section of sparse-vmemmap wency
2012-08-28 10:00 ` [RFC v8 PATCH 16/20] memory-hotplug: free memmap " wency
2012-08-28 10:00 ` [RFC v8 PATCH 17/20] memory_hotplug: clear zone when the memory is removed wency
2012-08-28 10:00 ` [RFC v8 PATCH 18/20] memory-hotplug: add node_device_release wency
2012-08-28 10:00 ` [RFC v8 PATCH 19/20] memory-hotplug: remove sysfs file of node wency
2012-08-28 10:00 ` [RFC v8 PATCH 20/20] memory-hotplug: clear hwpoisoned flag when onlining pages wency
2012-08-31 20:49 ` [RFC v8 PATCH 00/20] memory-hotplug: hot-remove physical memory Andrew Morton
2012-09-10 1:46 ` Yasuaki Ishimatsu
2012-09-10 2:01 ` Wen Congyang
2012-09-10 13:52 ` Vasilis Liaskovitis
2012-09-11 0:27 ` Jerry
2012-09-11 1:23 ` Minchan Kim
2012-09-11 5:18 ` Jerry
2012-09-11 5:39 ` Wen Congyang
2012-09-12 6:17 ` Minchan Kim
2012-09-11 1:25 ` Wen Congyang
2012-09-12 5:20 ` Wen Congyang
2012-09-12 17:18 ` Vasilis Liaskovitis
2012-09-18 9:39 ` Wen Congyang
2012-09-19 17:02 ` Vasilis Liaskovitis [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=20120919170205.GA15549@dhcp-192-168-178-175.profitbricks.localdomain \
--to=vasilis.liaskovitis@profitbricks.com \
--cc=akpm@linux-foundation.org \
--cc=benh@kernel.crashing.org \
--cc=cl@linux.com \
--cc=cmetcalf@tilera.com \
--cc=isimatu.yasuaki@jp.fujitsu.com \
--cc=kosaki.motohiro@jp.fujitsu.com \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=liuj97@gmail.com \
--cc=minchan.kim@gmail.com \
--cc=paulus@samba.org \
--cc=rientjes@google.com \
--cc=sparclinux@vger.kernel.org \
--cc=wency@cn.fujitsu.com \
--cc=x86@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