[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 27/27] docs: Update Xen-on-KVM documentation for PV disk suppo
From: |
David Woodhouse |
Subject: |
[PATCH v2 27/27] docs: Update Xen-on-KVM documentation for PV disk support |
Date: |
Tue, 7 Mar 2023 17:17:50 +0000 |
From: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
---
docs/system/i386/xen.rst | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)
diff --git a/docs/system/i386/xen.rst b/docs/system/i386/xen.rst
index a00523b492..f06765e88c 100644
--- a/docs/system/i386/xen.rst
+++ b/docs/system/i386/xen.rst
@@ -9,6 +9,8 @@ KVM has support for hosting Xen guests, intercepting Xen
hypercalls and event
channel (Xen PV interrupt) delivery. This allows guests which expect to be
run under Xen to be hosted in QEMU under Linux/KVM instead.
+Using the split irqchip is mandatory for Xen support.
+
Setup
-----
@@ -17,14 +19,14 @@ accelerator, for example for Xen 4.10:
.. parsed-literal::
- |qemu_system| --accel kvm,xen-version=0x4000a
+ |qemu_system| --accel kvm,xen-version=0x4000a,kernel-irqchip=split
Additionally, virtual APIC support can be advertised to the guest through the
``xen-vapic`` CPU flag:
.. parsed-literal::
- |qemu_system| --accel kvm,xen-version=0x4000a --cpu host,+xen_vapic
+ |qemu_system| --accel kvm,xen-version=0x4000a,kernel-irqchip=split --cpu
host,+xen_vapic
When Xen support is enabled, QEMU changes hypervisor identification (CPUID
0x40000000..0x4000000A) to Xen. The KVM identification and features are not
@@ -33,11 +35,25 @@ moves to leaves 0x40000100..0x4000010A.
The Xen platform device is enabled automatically for a Xen guest. This allows
a guest to unplug all emulated devices, in order to use Xen PV block and
network
-drivers instead. Note that until the Xen PV device back ends are enabled to
work
-with Xen mode in QEMU, that is unlikely to cause significant joy. Linux guests
-can be dissuaded from this by adding 'xen_emul_unplug=never' on their command
-line, and it can also be noted that AHCI disk controllers are exempt from being
-unplugged, as are passthrough VFIO PCI devices.
+drivers instead. Under Xen, the boot disk is typically available both via IDE
+emulation, and as a PV block device. Guest bootloaders typically use IDE to
load
+the guest kernel, which then unplugs the IDE and continues with the Xen PV
block
+device.
+
+This configuration can be achieved as follows
+
+.. parsed-literal::
+
+ |qemu_system| -M pc --accel kvm,xen-version=0x4000a,kernel-irqchip=split \\
+ -drive file=${GUEST_IMAGE},if=none,id=disk,file.locking=off -device
xen-disk,drive=disk,vdev=xvda \\
+ -drive file=${GUEST_IMAGE},index=2,media=disk,file.locking=off,if=ide
+
+It is necessary to use the pc machine type, as the q35 machine uses AHCI
instead
+of legacy IDE, and AHCI disks are not unplugged through the Xen PV unplug
+mechanism.
+
+VirtIO devices can also be used; Linux guests may need to be dissuaded from
+umplugging them by adding 'xen_emul_unplug=never' on their command line.
Properties
----------
--
2.39.0
- [PATCH v2 19/27] hw/xen: Only advertise ring-page-order for xen-block if gnttab supports it, (continued)
- [PATCH v2 19/27] hw/xen: Only advertise ring-page-order for xen-block if gnttab supports it, David Woodhouse, 2023/03/07
- [PATCH v2 02/27] hw/xen: Add basic XenStore tree walk and write/read/directory support, David Woodhouse, 2023/03/07
- [PATCH v2 25/27] i386/xen: Initialize Xen backends from pc_basic_device_init() for emulation, David Woodhouse, 2023/03/07
- [PATCH v2 12/27] hw/xen: Add foreignmem operations to allow redirection to internal emulation, David Woodhouse, 2023/03/07
- [PATCH v2 01/27] hw/xen: Add xenstore wire implementation and implementation stubs, David Woodhouse, 2023/03/07
- [PATCH v2 16/27] hw/xen: Rename xen_common.h to xen_native.h, David Woodhouse, 2023/03/07
- [PATCH v2 08/27] hw/xen: Create initial XenStore nodes, David Woodhouse, 2023/03/07
- [PATCH v2 13/27] hw/xen: Add xenstore operations to allow redirection to internal emulation, David Woodhouse, 2023/03/07
- [PATCH v2 26/27] MAINTAINERS: Add entry for Xen on KVM emulation, David Woodhouse, 2023/03/07
- [PATCH v2 27/27] docs: Update Xen-on-KVM documentation for PV disk support,
David Woodhouse <=
- [PATCH v2 04/27] hw/xen: Implement XenStore transactions, David Woodhouse, 2023/03/07
- [PATCH v2 23/27] hw/xen: Map guest XENSTORE_PFN grant in emulated Xenstore, David Woodhouse, 2023/03/07
- [PATCH v2 09/27] hw/xen: Add evtchn operations to allow redirection to internal emulation, David Woodhouse, 2023/03/07
- [PATCH v2 17/27] hw/xen: Build PV backend drivers for CONFIG_XEN_BUS, David Woodhouse, 2023/03/07
- [PATCH v2 03/27] hw/xen: Implement XenStore watches, David Woodhouse, 2023/03/07