aboutsummaryrefslogtreecommitdiffstats
path: root/tools/misc
diff options
context:
space:
mode:
authorPaul Durrant <paul.durrant@citrix.com>2011-09-26 22:10:21 +0100
committerPaul Durrant <paul.durrant@citrix.com>2011-09-26 22:10:21 +0100
commit5f47247ded7bcd5ae5126da30f09f105a59fdc8d (patch)
tree96fc69a0ee8ee024529c2114dfad92e0df49a9c8 /tools/misc
parentef80eecda3f183b97ec4060a7f49bc24f14b086c (diff)
downloadxen-5f47247ded7bcd5ae5126da30f09f105a59fdc8d.tar.gz
xen-5f47247ded7bcd5ae5126da30f09f105a59fdc8d.tar.bz2
xen-5f47247ded7bcd5ae5126da30f09f105a59fdc8d.zip
Add save/restore support for viridian APIC assist pfn.
c/s 17b754cab7b0 introduced a per-VCPU viridian structure to store the APIC assist pfn. This patch adds support for save and restore of that value. Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Tim Deegan <tim@xen.org>
Diffstat (limited to 'tools/misc')
-rw-r--r--tools/misc/xen-hvmctx.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/tools/misc/xen-hvmctx.c b/tools/misc/xen-hvmctx.c
index 1542c2ed86..5dc534d27e 100644
--- a/tools/misc/xen-hvmctx.c
+++ b/tools/misc/xen-hvmctx.c
@@ -366,15 +366,23 @@ static void dump_mtrr(void)
(unsigned long long) p.msr_mtrr_fixed[i]);
}
-static void dump_viridian(void)
+static void dump_viridian_domain(void)
{
- HVM_SAVE_TYPE(VIRIDIAN) p;
+ HVM_SAVE_TYPE(VIRIDIAN_DOMAIN) p;
READ(p);
- printf(" VIRIDIAN: hypercall gpa 0x%llx, guest ID 0x%llx\n",
+ printf(" VIRIDIAN_DOMAIN: hypercall gpa 0x%llx, guest_os_id 0x%llx\n",
(unsigned long long) p.hypercall_gpa,
(unsigned long long) p.guest_os_id);
}
+static void dump_viridian_vcpu(void)
+{
+ HVM_SAVE_TYPE(VIRIDIAN_VCPU) p;
+ READ(p);
+ printf(" VIRIDIAN_VCPU: apic_assist 0x%llx\n",
+ (unsigned long long) p.apic_assist);
+}
+
int main(int argc, char **argv)
{
int entry, domid;
@@ -439,7 +447,8 @@ int main(int argc, char **argv)
case HVM_SAVE_CODE(HPET): dump_hpet(); break;
case HVM_SAVE_CODE(PMTIMER): dump_pmtimer(); break;
case HVM_SAVE_CODE(MTRR): dump_mtrr(); break;
- case HVM_SAVE_CODE(VIRIDIAN): dump_viridian(); break;
+ case HVM_SAVE_CODE(VIRIDIAN_DOMAIN): dump_viridian_domain(); break;
+ case HVM_SAVE_CODE(VIRIDIAN_VCPU): dump_viridian_vcpu(); break;
case HVM_SAVE_CODE(END): break;
default:
printf(" ** Don't understand type %u: skipping\n",