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

[Xen-changelog] [linux-2.6.18-xen] Setup memory zones in the same way as native instead of putting all



# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1197299089 0
# Node ID b865b15fb54b35e08940b8143c0e3392effc07e9
# Parent  c3ff0b26f664b46a542505c98ea418b0268b516d
Setup memory zones in the same way as native instead of putting all
low memory in ZONE_DMA. There is no real benefit from diverging from
native in this respect.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxxxxx>
---
 arch/i386/kernel/setup-xen.c |    9 +--------
 arch/x86_64/mm/init-xen.c    |    8 --------
 2 files changed, 1 insertion(+), 16 deletions(-)

diff -r c3ff0b26f664 -r b865b15fb54b arch/i386/kernel/setup-xen.c
--- a/arch/i386/kernel/setup-xen.c      Mon Dec 10 13:52:47 2007 +0000
+++ b/arch/i386/kernel/setup-xen.c      Mon Dec 10 15:04:49 2007 +0000
@@ -1305,14 +1305,7 @@ void __init zone_sizes_init(void)
        unsigned long zones_size[MAX_NR_ZONES] = {0, 0, 0};
        unsigned int max_dma, low;
 
-       /*
-        * XEN: Our notion of "DMA memory" is fake when running over Xen.
-        * We simply put all RAM in the DMA zone so that those drivers which
-        * needlessly specify GFP_DMA do not get starved of RAM unnecessarily.
-        * Those drivers that *do* require lowmem are screwed anyway when
-        * running over Xen!
-        */
-       max_dma = max_low_pfn;
+       max_dma = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT;
        low = max_low_pfn;
 
        if (low < max_dma)
diff -r c3ff0b26f664 -r b865b15fb54b arch/x86_64/mm/init-xen.c
--- a/arch/x86_64/mm/init-xen.c Mon Dec 10 13:52:47 2007 +0000
+++ b/arch/x86_64/mm/init-xen.c Mon Dec 10 15:04:49 2007 +0000
@@ -775,14 +775,11 @@ size_zones(unsigned long *z, unsigned lo
           unsigned long start_pfn, unsigned long end_pfn)
 {
        int i;
-#ifndef CONFIG_XEN
        unsigned long w;
-#endif
 
        for (i = 0; i < MAX_NR_ZONES; i++)
                z[i] = 0;
 
-#ifndef CONFIG_XEN
        if (start_pfn < MAX_DMA_PFN)
                z[ZONE_DMA] = MAX_DMA_PFN - start_pfn;
        if (start_pfn < MAX_DMA32_PFN) {
@@ -823,11 +820,6 @@ size_zones(unsigned long *z, unsigned lo
                        h[ZONE_DMA] = z[ZONE_DMA];
                }
        }
-#else
-       z[ZONE_DMA] = end_pfn;
-       for (i = 0; i < MAX_NR_ZONES; i++)
-               h[i] = 0;
-#endif
 }
 
 #ifndef CONFIG_NUMA

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

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