|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] x86/pvh: print dom0 memory map
commit 329b7bed80032fd52904af6a0cac7dd3716d27cf
Author: Roger Pau Monne <roger.pau@xxxxxxxxxx>
AuthorDate: Tue Jan 25 11:46:36 2022 +0100
Commit: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
CommitDate: Tue Jan 25 10:52:25 2022 +0000
x86/pvh: print dom0 memory map
I find it useful for debugging certain issues to have the memory map
dom0 is using, so print it when using `dom0=verbose` on the command
line.
Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
---
xen/arch/x86/e820.c | 3 ++-
xen/arch/x86/hvm/dom0_build.c | 6 ++++++
xen/arch/x86/include/asm/e820.h | 2 ++
3 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/xen/arch/x86/e820.c b/xen/arch/x86/e820.c
index aa602773bb..b653a19c93 100644
--- a/xen/arch/x86/e820.c
+++ b/xen/arch/x86/e820.c
@@ -88,7 +88,8 @@ static void __init add_memory_region(unsigned long long start,
e820.nr_map++;
}
-static void __init print_e820_memory_map(struct e820entry *map, unsigned int
entries)
+void __init print_e820_memory_map(const struct e820entry *map,
+ unsigned int entries)
{
unsigned int i;
diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
index 8048987286..afba6e7dfd 100644
--- a/xen/arch/x86/hvm/dom0_build.c
+++ b/xen/arch/x86/hvm/dom0_build.c
@@ -1269,6 +1269,12 @@ int __init dom0_construct_pvh(struct domain *d, const
module_t *image,
return rc;
}
+ if ( opt_dom0_verbose )
+ {
+ printk("Dom%u memory map:\n", d->domain_id);
+ print_e820_memory_map(d->arch.e820, d->arch.nr_e820);
+ }
+
printk("WARNING: PVH is an experimental mode with limited
functionality\n");
return 0;
}
diff --git a/xen/arch/x86/include/asm/e820.h b/xen/arch/x86/include/asm/e820.h
index 9d8f1ba960..92f5efa4f5 100644
--- a/xen/arch/x86/include/asm/e820.h
+++ b/xen/arch/x86/include/asm/e820.h
@@ -32,6 +32,8 @@ extern int e820_change_range_type(
extern int e820_add_range(
struct e820map *, uint64_t s, uint64_t e, uint32_t type);
extern unsigned long init_e820(const char *, struct e820map *);
+extern void print_e820_memory_map(const struct e820entry *map,
+ unsigned int entries);
extern struct e820map e820;
extern struct e820map e820_raw;
--
generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |