[PATCH 06/10] xen/setup: Only set identity mapping in E820 regions when privileged.

From: Konrad Rzeszutek Wilk
Date: Tue Dec 21 2010 - 16:38:42 EST


We do not want to set the identity mapping on E820 reserved
regions when running as PV. This is b/c the 0->ISA_END_ADDRESS region
would be considered identity and we would try to read DMI information
and fail (since the pfn_to_mfn(mfn)==pfn) under PV guests.

Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
---
arch/x86/xen/setup.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
index 752c865..34fb906 100644
--- a/arch/x86/xen/setup.c
+++ b/arch/x86/xen/setup.c
@@ -160,7 +160,7 @@ static unsigned long __init xen_set_identity(const struct e820map *e820)
if (end < start)
continue;

- if (e820->map[i].type != E820_RAM) {
+ if (xen_initial_domain() && e820->map[i].type != E820_RAM) {
for (pfn = PFN_UP(start); pfn < PFN_DOWN(end); pfn++)
set_phys_to_machine(pfn, pfn);
identity += pfn - PFN_UP(start);
--
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/