aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/xen/mm.h
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-05-04 12:42:21 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-05-04 12:42:21 +0100
commita03bd60cee72d1d7f025398c98130da7a011492e (patch)
treea485b55482f7215259a0636bd715c9f0deee3eb7 /xen/include/xen/mm.h
parentc499509ef2595a5daa8ef804168c94291e90ec48 (diff)
downloadxen-a03bd60cee72d1d7f025398c98130da7a011492e.tar.gz
xen-a03bd60cee72d1d7f025398c98130da7a011492e.tar.bz2
xen-a03bd60cee72d1d7f025398c98130da7a011492e.zip
x86: fix Dom0 booting time regression
Unfortunately the changes in c/s 21035 caused boot time to go up significantly on certain large systems. To rectify this without going back to the old behavior, introduce a new memory allocation flag so that Dom0 allocations can exhaust non-DMA memory before starting to consume DMA memory. For the latter, the behavior introduced in aforementioned c/s gets retained, while for the former we can now even try larger chunks first. This builds on the fact that alloc_chunk() gets called with non- increasing 'max_pages' arguments, end hence it can store locally the allocation order last used (as larger order allocations can't succeed during subsequent invocations if they failed once). Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/include/xen/mm.h')
-rw-r--r--xen/include/xen/mm.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h
index 94b4aa2000..612a11c39b 100644
--- a/xen/include/xen/mm.h
+++ b/xen/include/xen/mm.h
@@ -80,6 +80,8 @@ int assign_pages(
#define MEMF_populate_on_demand (1U<<_MEMF_populate_on_demand)
#define _MEMF_tmem 2
#define MEMF_tmem (1U<<_MEMF_tmem)
+#define _MEMF_no_dma 3
+#define MEMF_no_dma (1U<<_MEMF_no_dma)
#define _MEMF_node 8
#define MEMF_node(n) ((((n)+1)&0xff)<<_MEMF_node)
#define _MEMF_bits 24