qemu/hw/i386/kvm
David Woodhouse 110a0ea59f i386/xen: manage and save/restore Xen guest long_mode setting
Xen will "latch" the guest's 32-bit or 64-bit ("long mode") setting when
the guest writes the MSR to fill in the hypercall page, or when the guest
sets the event channel callback in HVM_PARAM_CALLBACK_IRQ.

KVM handles the former and sets the kernel's long_mode flag accordingly.
The latter will be handled in userspace. Keep them in sync by noticing
when a hypercall is made in a mode that doesn't match qemu's idea of
the guest mode, and resyncing from the kernel. Do that same sync right
before serialization too, in case the guest has set the hypercall page
but hasn't yet made a system call.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
2023-03-01 08:22:49 +00:00
..
apic.c i386/kvm: The value passed to strerror should be positive 2021-06-05 21:01:17 +02:00
clock.c i386/kvm: The value passed to strerror should be positive 2021-06-05 21:01:17 +02:00
i8254.c i386/kvm: Replace abs64() with uabs64() from host-utils 2021-09-29 19:37:38 +10:00
i8259.c hw/intc: Extract the IRQ counting functions into a separate file 2023-01-13 16:22:57 +01:00
ioapic.c hw: Move ioapic*.h to intc/ 2023-02-27 22:29:01 +01:00
meson.build hw/xen: Add xen_overlay device for emulating shared xenheap pages 2023-03-01 08:22:49 +00:00
xen_overlay.c i386/xen: manage and save/restore Xen guest long_mode setting 2023-03-01 08:22:49 +00:00
xen_overlay.h i386/xen: manage and save/restore Xen guest long_mode setting 2023-03-01 08:22:49 +00:00