[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCHv1 3/8] x86/xen: discard RAM regions above the maximum reservation



During setup, discard RAM regions that are above the maximum
reservation (instead of marking them as E820_UNUSABLE).  This allows
hotplug memory to be placed at these addresses.

Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>
---
 arch/x86/xen/setup.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
index 55f388e..32910c5 100644
--- a/arch/x86/xen/setup.c
+++ b/arch/x86/xen/setup.c
@@ -646,6 +646,7 @@ char * __init xen_memory_setup(void)
                phys_addr_t addr = map[i].addr;
                phys_addr_t size = map[i].size;
                u32 type = map[i].type;
+               bool discard = false;
 
                if (type == E820_RAM) {
                        if (addr < mem_end) {
@@ -656,10 +657,11 @@ char * __init xen_memory_setup(void)
                                xen_add_extra_mem(addr, size);
                                xen_max_p2m_pfn = PFN_DOWN(addr + size);
                        } else
-                               type = E820_UNUSABLE;
+                               discard = true;
                }
 
-               xen_align_and_add_e820_region(addr, size, type);
+               if (!discard)
+                       xen_align_and_add_e820_region(addr, size, type);
 
                map[i].addr += size;
                map[i].size -= size;
-- 
1.7.10.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.