|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 2/5] x86/dom0: allow stealing RAM from a region that starts in the low 1MB
As long as the memory stolen is always above 1MB. This allows the PVH
Dom0 builder to be used on a memory map that only has a single RAM
region starting at 0.
Reported-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
---
Cc: Jan Beulich <jbeulich@xxxxxxxx>
Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
---
xen/arch/x86/hvm/dom0_build.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index 91dc27dc3e..24cc15f28b 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -154,12 +154,13 @@ static int __init pvh_steal_ram(struct domain *d,
unsigned long size,
{
struct e820entry *entry = &d->arch.e820[i];
- if ( entry->type != E820_RAM || entry->addr + entry->size > limit ||
- entry->addr < MB(1) )
+ if ( entry->type != E820_RAM || entry->addr + entry->size > limit )
continue;
*addr = (entry->addr + entry->size - size) & ~(align - 1);
- if ( *addr < entry->addr )
+ if ( *addr < entry->addr ||
+ /* Don't steal from the low 1MB due to the copying done there. */
+ *addr < MB(1) )
continue;
entry->size = *addr - entry->addr;
--
2.17.2 (Apple Git-113)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |