WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Xen

xen-devel

[Top] [All Lists]

[Xen-devel] x86 numa: fix nodes' memory parsing when SRAT table includes

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] x86 numa: fix nodes' memory parsing when SRAT table includes future-hotplug memory range
From: "Yang, Xiaowei" <xiaowei.yang@xxxxxxxxx>
Date: 2009年8月12日 17:31:46 +0800
Delivery-date: 2009年8月12日 02:32:27 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 2.0.0.22 (X11/20090608)
A node's future-hotplug memory range starts from very high end normally, e.g. 1TB, and is not continuous with its current existing memory range. It should not be covered by the global variable 'nodes' as it assumes the node's memory is continuous. Otherwise it can make nodes' memory ranges become very big and overlapped, and populate_memnodemap() fails. We can ignore future-hotplug memory range for now. Physical memory hotplug support in future will handle it.
Signed-off-by: Yang Xiaowei <xiaowei.yang@xxxxxxxxx>
Thanks,
Xiaowei
diff -r e35a1c004fc2 xen/arch/x86/srat.c
--- a/xen/arch/x86/srat.c Tue Aug 11 07:36:26 2009 +0100
+++ b/xen/arch/x86/srat.c Wed Aug 12 17:06:48 2009 +0800
@@ -189,10 +189,21 @@
 bad_srat();
 return;
 }
- /* It is fine to add this area to the nodes data it will be used later*/
- if (ma->flags & ACPI_SRAT_MEM_HOT_PLUGGABLE)
- printk(KERN_INFO "SRAT: hot plug zone found %"PRIx64" - 
%"PRIx64" \n",
+ if (ma->flags & ACPI_SRAT_MEM_HOT_PLUGGABLE) {
+ if (page_is_ram_type(paddr_to_pfn(start), 
RAM_TYPE_CONVENTIONAL))
+ printk(KERN_INFO "SRAT: hot-pluggable zone found 
%"PRIx64" - %"PRIx64" \n",
 start, end);
+ else {
+ /* TODO: This range contains no existing memory yet,
+ * and shouldn't be included in nodes' [start, end]. It
+ * will be covered with physical memory hotplug support
+ * in future.
+ */
+ printk(KERN_INFO "SRAT: future hotplug zone found 
%"PRIx64" - %"PRIx64" \n",
+ start, end);
+ return;
+ }
+ }
 i = conflicting_nodes(start, end);
 if (i == node) {
 printk(KERN_WARNING
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] x86 numa: fix nodes' memory parsing when SRAT table includes future-hotplug memory range, Yang, Xiaowei <=
Previous by Date: [Xen-devel] [PATCH] xen: PAT support on AMD , Christoph Egger
Next by Date: Re: [Xen-devel] Xen help , George Dunlap
Previous by Thread: [Xen-devel] [PATCH] xen: PAT support on AMD , Christoph Egger
Next by Thread: [Xen-devel] [PATCH] fix qemu memory leak , Stefano Stabellini
Indexes: [Date] [Thread] [Top] [All Lists]

Copyright ©, Citrix Systems Inc. All rights reserved. Legal and Privacy
Citrix This site is hosted by Citrix

AltStyle によって変換されたページ (->オリジナル) /