Fix the referenced anchor in 'formatdomain.rst' right away.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
docs/drvxen.html.in | 358 ------------------------------------------
docs/drvxen.rst | 338 +++++++++++++++++++++++++++++++++++++++
docs/formatdomain.rst | 2 +-
docs/meson.build | 2 +-
4 files changed, 340 insertions(+), 360 deletions(-)
delete mode 100644 docs/drvxen.html.in
create mode 100644 docs/drvxen.rst
diff --git a/docs/drvxen.html.in b/docs/drvxen.html.in
deleted file mode 100644
index 95be36c879..0000000000
--- a/docs/drvxen.html.in
+++ /dev/null
@@ -1,358 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html>
-<html
xmlns="http://www.w3.org/1999/xhtml">
- <body>
- <h1>libxl hypervisor driver for Xen</h1>
-
- <ul id="toc"></ul>
-
- <p>
- The libvirt libxl driver provides the ability to manage virtual
- machines on any Xen release from 4.6.0 onwards.
- </p>
-
- <h2><a id="project">Project Links</a></h2>
-
- <ul>
- <li>
- The <a href="https://www.xenproject.org">Xen</a>
- hypervisor on Linux and Solaris hosts
- </li>
- </ul>
-
- <h2><a id="prereq">Deployment
pre-requisites</a></h2>
-
- <p>
- The libvirt libxl driver uses Xen's libxl API, also known as
- libxenlight, to implement libvirt's hypervisor driver
- functionality. libxl provides a consolidated interface for
- managing a Xen host and its virtual machines, unlike old
- versions of Xen where applications often had to communicate
- with xend, xenstored, and the hypervisor itself via hypercalls.
- With libxl the only pre-requisit is a properly installed Xen
- host with the libxl toolstack running in a service domain
- (often Domain-0).
- </p>
-
- <h2><a id="uri">Connections to libxl
driver</a></h2>
-
- <p>
- The libvirt libxl driver is a single-instance privileged driver,
- with a driver name of 'xen'. Some example connection URIs for
- the libxl driver are:
- </p>
-
-<pre>
-xen:///system (local access, direct)
-xen+unix:///system (local access, via daemon)
-xen://example.com/system (remote access, TLS/x509)
-xen+tcp://example.com/system (remote access, SASl/Kerberos)
-xen+ssh://root@example.com/system (remote access, SSH tunnelled)
-</pre>
-
-
- <h2><a id="configFiles">Location of configuration
files</a></h2>
-
- <p>
- The libxl driver comes with sane default values. However, during its
- initialization it reads a configuration file which offers system
- administrator to override some of that default. The file is located
- under <code>/etc/libvirt/libxl.conf</code>
- </p>
-
-
- <h2><a id="imex">Import and export of libvirt domain XML
configs</a></h2>
-
- <p>
- The libxl driver currently supports three native
- config formats. The first, known as <code>xen-xm</code>, is the
- original Xen virtual machine config format used by the legacy
- xm/xend toolstack. The second, known as <code>xen-sxpr</code>,
- is also one of the original formats that was used by xend's
- legacy HTTP RPC service (<span class='removed'>removed in
5.6.0</span>)
- </p>
-
- <p>
- The third format is <code>xen-xl</code>, which is the virtual
- machine config format supported by modern Xen. The <code>xen-xl</code>
- format is described in the xl.cfg(5) man page.
- </p>
-
- <h3><a id="xmlimport">Converting from XM config files to domain
XML</a></h3>
-
- <p>
- The <code>virsh domxml-from-native</code> provides a way to convert an
- existing set of xl, xm, or sxpr config files to libvirt Domain XML,
- which can then be used by libvirt.
- </p>
-
- <pre>$ virsh -c xen:///system domxml-from-native xen-xm rhel5.cfg
-<domain type='xen'>
- <name>rhel5pv</name>
- <uuid>8f07fe28-753f-2729-d76d-bdbd892f949a</uuid>
- <memory>2560000</memory>
- <currentMemory>307200</currentMemory>
- <vcpu>4</vcpu>
- <bootloader>/usr/bin/pygrub</bootloader>
- <os>
- <type arch='x86_64'
machine='xenpv'>linux</type>
- </os>
- <clock offset='utc'/>
- <on_poweroff>destroy</on_poweroff>
- <on_reboot>restart</on_reboot>
- <on_crash>restart</on_crash>
- <devices>
- <disk type='file' device='disk'>
- <driver name='tap' type='aio'/>
- <source file='/var/lib/xen/images/rhel5pv.img'/>
- <target dev='xvda' bus='xen'/>
- </disk>
- <disk type='file' device='disk'>
- <driver name='tap' type='qcow'/>
- <source file='/root/qcow1-xen.img'/>
- <target dev='xvdd' bus='xen'/>
- </disk>
- <interface type='bridge'>
- <mac address='00:16:3e:60:36:ba'/>
- <source bridge='xenbr0'/>
- </interface>
- <console type='pty'>
- <target port='0'/>
- </console>
- <input type='mouse' bus='xen'/>
- <graphics type='vnc' port='-1' autoport='yes'
listen='0.0.0.0'/>
- </devices>
-</domain></pre>
-
- <h3><a id="xmlexport">Converting from domain XML to XM config
files</a></h3>
-
- <p>
- The <code>virsh domxml-to-native</code> provides a way to convert a
- guest description using libvirt Domain XML into xl, xm, or sxpr config
- format.
- </p>
-
- <pre>$ virsh -c xen:///system domxml-to-native xen-xm rhel5pv.xml
-name = "rhel5pv"
-uuid = "8f07fe28-753f-2729-d76d-bdbd892f949a"
-maxmem = 2500
-memory = 300
-vcpus = 4
-bootloader = "/usr/bin/pygrub"
-kernel = "/var/lib/xen/boot_kernel.0YK-cS"
-ramdisk = "/var/lib/xen/boot_ramdisk.vWgrxK"
-extra = "ro root=/dev/VolGroup00/LogVol00 rhgb quiet"
-on_poweroff = "destroy"
-on_reboot = "restart"
-on_crash = "restart"
-sdl = 0
-vnc = 1
-vncunused = 1
-vnclisten = "0.0.0.0"
-disk = [ "tap:aio:/var/lib/xen/images/rhel5pv.img,xvda,w",
"tap:qcow:/root/qcow1-xen.img,xvdd,w" ]
-vif = [ "mac=00:16:3e:60:36:ba,bridge=virbr0,script=vif-bridge,vifname=vif5.0"
]</pre>
-
- <h2><a id="xencommand">Pass-through of arbitrary command-line
arguments
- to the qemu device model</a></h2>
-
- <p><span class="since">Since 6.7.0</span>, the Xen driver
supports passing
- arbitrary command-line arguments to the qemu device model used by Xen with
- the <code><xen:commandline></code> element under
<code>domain</code>.
- In order to use command-line pass-through, an XML namespace request must be
- issued that pulls in
<
code>http://libvirt.org/schemas/domain/xen/1.0</code>.
- With the namespace in place, it is then possible to add
- <code><xen:arg></code>sub-elements to
- <code><xen:commandline></code> describing each argument
passed to
- the device model when starting the domain.
- </p>
- <p>The following example illustrates passing arguments to the QEMU device
- model that define a floppy drive, which Xen does not support through its
- public APIs:
- </p>
- <pre>
-<domain type="xen"
xmlns:xen="http://libvirt.org/schemas/domain/xen/1.0">
- ...
- <xen:commandline>
- <xen:arg value='-drive'/>
- <xen:arg
value='file=/path/to/image,format=raw,if=none,id=drive-fdc0-0-0'/>
- <xen:arg value='-global'/>
- <xen:arg value='isa-fdc.driveA=drive-fdc0-0-0'/>
- </xen:commandline>
-</domain>
- </pre>
-
- <h2><a id="xmlconfig">Example domain XML
config</a></h2>
-
- <p>
- Below are some example XML configurations for Xen guest domains.
- For full details of the available options, consult the <a
href="formatdomain.html">domain XML format</a>
- guide.
- </p>
-
- <h3>Paravirtualized guest bootloader</h3>
-
- <p>
- Using a bootloader allows a paravirtualized guest to be booted using
- a kernel stored inside its virtual disk image
- </p>
-
- <pre><domain type='xen' >
- <name>fc8</name>
- <bootloader>/usr/bin/pygrub</bootloader>
- <os>
- <type>linux</type>
- </os>
- <memory>131072</memory>
- <vcpu>1</vcpu>
- <devices>
- <disk type='file'>
- <source file='/var/lib/xen/images/fc4.img'/>
- <target dev='sda1'/>
- </disk>
- <interface type='bridge'>
- <source bridge='xenbr0'/>
- <mac address='aa:00:00:00:00:11'/>
- <script path='/etc/xen/scripts/vif-bridge'/>
- </interface>
- <console tty='/dev/pts/5'/>
- </devices>
-</domain></pre>
-
- <h3>Paravirtualized guest direct kernel boot</h3>
-
- <p>
- For installation of paravirtualized guests it is typical to boot the
- domain using a kernel and initrd stored in the host OS
- </p>
-
- <pre><domain type='xen' >
- <name>fc8</name>
- <os>
- <type>linux</type>
-
<kernel>/var/lib/xen/install/vmlinuz-fedora8-x86_64</kernel>
-
<initrd>/var/lib/xen/install/initrd-vmlinuz-fedora8-x86_64</initrd>
- <cmdline>
kickstart=http://example.com/myguest.ks
</cmdline>
- </os>
- <memory>131072</memory>
- <vcpu>1</vcpu>
- <devices>
- <disk type='file'>
- <source file='/var/lib/xen/images/fc4.img'/>
- <target dev='sda1'/>
- </disk>
- <interface type='bridge'>
- <source bridge='xenbr0'/>
- <mac address='aa:00:00:00:00:11'/>
- <script path='/etc/xen/scripts/vif-bridge'/>
- </interface>
- <graphics type='vnc' port='-1'/>
- <console tty='/dev/pts/5'/>
- </devices>
-</domain></pre>
-
- <h3>Fullyvirtualized guest BIOS boot</h3>
-
- <p>
- Fullyvirtualized guests use the emulated BIOS to boot off the primary
- harddisk, CDROM or Network PXE ROM.
- </p>
-
- <pre><domain type='xen' id='3'>
- <name>fv0</name>
- <uuid>4dea22b31d52d8f32516782e98ab3fa0</uuid>
- <os>
- <type>hvm</type>
- <loader>/usr/lib/xen/boot/hvmloader</loader>
- <boot dev='hd'/>
- </os>
- <memory>524288</memory>
- <vcpu>1</vcpu>
- <on_poweroff>destroy</on_poweroff>
- <on_reboot>restart</on_reboot>
- <on_crash>restart</on_crash>
- <features>
- <pae/>
- <acpi/>
- <apic/>
- </features>
- <clock sync="localtime"/>
- <devices>
- <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
- <interface type='bridge'>
- <source bridge='xenbr0'/>
- <mac address='00:16:3e:5d:c7:9e'/>
- <script path='vif-bridge'/>
- </interface>
- <disk type='file'>
- <source file='/var/lib/xen/images/fv0'/>
- <target dev='hda'/>
- </disk>
- <disk type='file' device='cdrom'>
- <source file='/var/lib/xen/images/fc5-x86_64-boot.iso'/>
- <target dev='hdc'/>
- <readonly/>
- </disk>
- <disk type='file' device='floppy'>
- <source file='/root/fd.img'/>
- <target dev='fda'/>
- </disk>
- <graphics type='vnc' port='5904'/>
- </devices>
-</domain></pre>
-
- <h3>Fullyvirtualized guest direct kernel boot</h3>
-
- <p>
- With Xen 3.2.0 or later it is possible to bypass the BIOS and directly
- boot a Linux kernel and initrd as a fullyvirtualized domain. This allows
- for complete automation of OS installation, for example using the Anaconda
- kickstart support.
- </p>
-
- <pre><domain type='xen' id='3'>
- <name>fv0</name>
- <uuid>4dea22b31d52d8f32516782e98ab3fa0</uuid>
- <os>
- <type>hvm</type>
- <loader>/usr/lib/xen/boot/hvmloader</loader>
-
<kernel>/var/lib/xen/install/vmlinuz-fedora8-x86_64</kernel>
-
<initrd>/var/lib/xen/install/initrd-vmlinuz-fedora8-x86_64</initrd>
- <cmdline>
kickstart=http://example.com/myguest.ks
</cmdline>
- </os>
- <memory>524288</memory>
- <vcpu>1</vcpu>
- <on_poweroff>destroy</on_poweroff>
- <on_reboot>restart</on_reboot>
- <on_crash>restart</on_crash>
- <features>
- <pae/>
- <acpi/>
- <apic/>
- </features>
- <clock sync="localtime"/>
- <devices>
- <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
- <interface type='bridge'>
- <source bridge='xenbr0'/>
- <mac address='00:16:3e:5d:c7:9e'/>
- <script path='vif-bridge'/>
- </interface>
- <disk type='file'>
- <source file='/var/lib/xen/images/fv0'/>
- <target dev='hda'/>
- </disk>
- <disk type='file' device='cdrom'>
- <source file='/var/lib/xen/images/fc5-x86_64-boot.iso'/>
- <target dev='hdc'/>
- <readonly/>
- </disk>
- <disk type='file' device='floppy'>
- <source file='/root/fd.img'/>
- <target dev='fda'/>
- </disk>
- <graphics type='vnc' port='5904'/>
- </devices>
-</domain></pre>
-
- </body>
-</html>
diff --git a/docs/drvxen.rst b/docs/drvxen.rst
new file mode 100644
index 0000000000..c131d52c7a
--- /dev/null
+++ b/docs/drvxen.rst
@@ -0,0 +1,338 @@
+.. role:: since
+
+===============================
+libxl hypervisor driver for Xen
+===============================
+
+.. contents::
+
+The libvirt libxl driver provides the ability to manage virtual machines on any
+Xen release from 4.6.0 onwards.
+
+Project Links
+-------------
+
+- The `Xen <
https://www.xenproject.org>`__ hypervisor on Linux and Solaris
+ hosts
+
+Deployment pre-requisites
+-------------------------
+
+The libvirt libxl driver uses Xen's libxl API, also known as libxenlight, to
+implement libvirt's hypervisor driver functionality. libxl provides a
+consolidated interface for managing a Xen host and its virtual machines, unlike
+old versions of Xen where applications often had to communicate with xend,
+xenstored, and the hypervisor itself via hypercalls. With libxl the only
+pre-requisit is a properly installed Xen host with the libxl toolstack running
+in a service domain (often Domain-0).
+
+Connections to libxl driver
+---------------------------
+
+The libvirt libxl driver is a single-instance privileged driver, with a driver
+name of 'xen'. Some example connection URIs for the libxl driver are:
+
+::
+
+ xen:///system (local access, direct)
+ xen+unix:///system (local access, via daemon)
+
xen://example.com/system (remote access, TLS/x509)
+
xen+tcp://example.com/system (remote access, SASl/Kerberos)
+ xen+ssh://root@example.com/system (remote access, SSH tunnelled)
+
+Location of configuration files
+-------------------------------
+
+The libxl driver comes with sane default values. However, during its
+initialization it reads a configuration file which offers system administrator
+to override some of that default. The file is located under
+``/etc/libvirt/libxl.conf``
+
+Import and export of libvirt domain XML configs
+-----------------------------------------------
+
+The libxl driver currently supports three native config formats. The first,
+known as ``xen-xm``, is the original Xen virtual machine config format used by
+the legacy xm/xend toolstack. The second, known as ``xen-sxpr``, is also one of
+the original formats that was used by xend's legacy HTTP RPC service (
+:since:`removed in 5.6.0` )
+
+The third format is ``xen-xl``, which is the virtual machine config format
+supported by modern Xen. The ``xen-xl`` format is described in the xl.cfg(5) man
+page.
+
+Converting from XM config files to domain XML
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The ``virsh domxml-from-native`` provides a way to convert an existing set of
+xl, xm, or sxpr config files to libvirt Domain XML, which can then be used by
+libvirt.
+
+::
+
+ $ virsh -c xen:///system domxml-from-native xen-xm rhel5.cfg
+ <domain type='xen'>
+ <name>rhel5pv</name>
+ <uuid>8f07fe28-753f-2729-d76d-bdbd892f949a</uuid>
+ <memory>2560000</memory>
+ <currentMemory>307200</currentMemory>
+ <vcpu>4</vcpu>
+ <bootloader>/usr/bin/pygrub</bootloader>
+ <os>
+ <type arch='x86_64' machine='xenpv'>linux</type>
+ </os>
+ <clock offset='utc'/>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>restart</on_crash>
+ <devices>
+ <disk type='file' device='disk'>
+ <driver name='tap' type='aio'/>
+ <source file='/var/lib/xen/images/rhel5pv.img'/>
+ <target dev='xvda' bus='xen'/>
+ </disk>
+ <disk type='file' device='disk'>
+ <driver name='tap' type='qcow'/>
+ <source file='/root/qcow1-xen.img'/>
+ <target dev='xvdd' bus='xen'/>
+ </disk>
+ <interface type='bridge'>
+ <mac address='00:16:3e:60:36:ba'/>
+ <source bridge='xenbr0'/>
+ </interface>
+ <console type='pty'>
+ <target port='0'/>
+ </console>
+ <input type='mouse' bus='xen'/>
+ <graphics type='vnc' port='-1' autoport='yes'
listen='0.0.0.0'/>
+ </devices>
+ </domain>
+
+Converting from domain XML to XM config files
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The ``virsh domxml-to-native`` provides a way to convert a guest description
+using libvirt Domain XML into xl, xm, or sxpr config format.
+
+::
+
+ $ virsh -c xen:///system domxml-to-native xen-xm rhel5pv.xml
+ name = "rhel5pv"
+ uuid = "8f07fe28-753f-2729-d76d-bdbd892f949a"
+ maxmem = 2500
+ memory = 300
+ vcpus = 4
+ bootloader = "/usr/bin/pygrub"
+ kernel = "/var/lib/xen/boot_kernel.0YK-cS"
+ ramdisk = "/var/lib/xen/boot_ramdisk.vWgrxK"
+ extra = "ro root=/dev/VolGroup00/LogVol00 rhgb quiet"
+ on_poweroff = "destroy"
+ on_reboot = "restart"
+ on_crash = "restart"
+ sdl = 0
+ vnc = 1
+ vncunused = 1
+ vnclisten = "0.0.0.0"
+ disk = [ "tap:aio:/var/lib/xen/images/rhel5pv.img,xvda,w",
"tap:qcow:/root/qcow1-xen.img,xvdd,w" ]
+ vif = [
"mac=00:16:3e:60:36:ba,bridge=virbr0,script=vif-bridge,vifname=vif5.0" ]
+
+Pass-through of arbitrary command-line arguments to the qemu device model
+-------------------------------------------------------------------------
+
+:since:`Since 6.7.0` , the Xen driver supports passing arbitrary command-line
+arguments to the qemu device model used by Xen with the ``<xen:commandline>``
+element under ``domain``. In order to use command-line pass-through, an XML
+namespace request must be issued that pulls in
+``http://libvirt.org/schemas/domain/xen/1.0``. With the namespace in place, it
+is then possible to add ``<xen:arg>``\ sub-elements to ``<xen:commandline>``
+describing each argument passed to the device model when starting the domain.
+
+The following example illustrates passing arguments to the QEMU device model
+that define a floppy drive, which Xen does not support through its public APIs:
+
+::
+
+ <domain type="xen"
xmlns:xen="http://libvirt.org/schemas/domain/xen/1.0">
+ ...
+ <xen:commandline>
+ <xen:arg value='-drive'/>
+ <xen:arg
value='file=/path/to/image,format=raw,if=none,id=drive-fdc0-0-0'/>
+ <xen:arg value='-global'/>
+ <xen:arg value='isa-fdc.driveA=drive-fdc0-0-0'/>
+ </xen:commandline>
+ </domain>
+
+Example domain XML config
+-------------------------
+
+Below are some example XML configurations for Xen guest domains. For full
+details of the available options, consult the `domain XML
+format <formatdomain.html>`__ guide.
+
+Paravirtualized guest bootloader
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Using a bootloader allows a paravirtualized guest to be booted using a kernel
+stored inside its virtual disk image
+
+::
+
+ <domain type='xen' >
+ <name>fc8</name>
+ <bootloader>/usr/bin/pygrub</bootloader>
+ <os>
+ <type>linux</type>
+ </os>
+ <memory>131072</memory>
+ <vcpu>1</vcpu>
+ <devices>
+ <disk type='file'>
+ <source file='/var/lib/xen/images/fc4.img'/>
+ <target dev='sda1'/>
+ </disk>
+ <interface type='bridge'>
+ <source bridge='xenbr0'/>
+ <mac address='aa:00:00:00:00:11'/>
+ <script path='/etc/xen/scripts/vif-bridge'/>
+ </interface>
+ <console tty='/dev/pts/5'/>
+ </devices>
+ </domain>
+
+Paravirtualized guest direct kernel boot
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+For installation of paravirtualized guests it is typical to boot the domain
+using a kernel and initrd stored in the host OS
+
+::
+
+ <domain type='xen' >
+ <name>fc8</name>
+ <os>
+ <type>linux</type>
+ <kernel>/var/lib/xen/install/vmlinuz-fedora8-x86_64</kernel>
+ <initrd>/var/lib/xen/install/initrd-vmlinuz-fedora8-x86_64</initrd>
+ <cmdline>
kickstart=http://example.com/myguest.ks </cmdline>
+ </os>
+ <memory>131072</memory>
+ <vcpu>1</vcpu>
+ <devices>
+ <disk type='file'>
+ <source file='/var/lib/xen/images/fc4.img'/>
+ <target dev='sda1'/>
+ </disk>
+ <interface type='bridge'>
+ <source bridge='xenbr0'/>
+ <mac address='aa:00:00:00:00:11'/>
+ <script path='/etc/xen/scripts/vif-bridge'/>
+ </interface>
+ <graphics type='vnc' port='-1'/>
+ <console tty='/dev/pts/5'/>
+ </devices>
+ </domain>
+
+Fullyvirtualized guest BIOS boot
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Fullyvirtualized guests use the emulated BIOS to boot off the primary harddisk,
+CDROM or Network PXE ROM.
+
+::
+
+ <domain type='xen' id='3'>
+ <name>fv0</name>
+ <uuid>4dea22b31d52d8f32516782e98ab3fa0</uuid>
+ <os>
+ <type>hvm</type>
+ <loader>/usr/lib/xen/boot/hvmloader</loader>
+ <boot dev='hd'/>
+ </os>
+ <memory>524288</memory>
+ <vcpu>1</vcpu>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>restart</on_crash>
+ <features>
+ <pae/>
+ <acpi/>
+ <apic/>
+ </features>
+ <clock sync="localtime"/>
+ <devices>
+ <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
+ <interface type='bridge'>
+ <source bridge='xenbr0'/>
+ <mac address='00:16:3e:5d:c7:9e'/>
+ <script path='vif-bridge'/>
+ </interface>
+ <disk type='file'>
+ <source file='/var/lib/xen/images/fv0'/>
+ <target dev='hda'/>
+ </disk>
+ <disk type='file' device='cdrom'>
+ <source file='/var/lib/xen/images/fc5-x86_64-boot.iso'/>
+ <target dev='hdc'/>
+ <readonly/>
+ </disk>
+ <disk type='file' device='floppy'>
+ <source file='/root/fd.img'/>
+ <target dev='fda'/>
+ </disk>
+ <graphics type='vnc' port='5904'/>
+ </devices>
+ </domain>
+
+Fullyvirtualized guest direct kernel boot
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+With Xen 3.2.0 or later it is possible to bypass the BIOS and directly boot a
+Linux kernel and initrd as a fullyvirtualized domain. This allows for complete
+automation of OS installation, for example using the Anaconda kickstart support.
+
+::
+
+ <domain type='xen' id='3'>
+ <name>fv0</name>
+ <uuid>4dea22b31d52d8f32516782e98ab3fa0</uuid>
+ <os>
+ <type>hvm</type>
+ <loader>/usr/lib/xen/boot/hvmloader</loader>
+ <kernel>/var/lib/xen/install/vmlinuz-fedora8-x86_64</kernel>
+ <initrd>/var/lib/xen/install/initrd-vmlinuz-fedora8-x86_64</initrd>
+ <cmdline>
kickstart=http://example.com/myguest.ks </cmdline>
+ </os>
+ <memory>524288</memory>
+ <vcpu>1</vcpu>
+ <on_poweroff>destroy</on_poweroff>
+ <on_reboot>restart</on_reboot>
+ <on_crash>restart</on_crash>
+ <features>
+ <pae/>
+ <acpi/>
+ <apic/>
+ </features>
+ <clock sync="localtime"/>
+ <devices>
+ <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
+ <interface type='bridge'>
+ <source bridge='xenbr0'/>
+ <mac address='00:16:3e:5d:c7:9e'/>
+ <script path='vif-bridge'/>
+ </interface>
+ <disk type='file'>
+ <source file='/var/lib/xen/images/fv0'/>
+ <target dev='hda'/>
+ </disk>
+ <disk type='file' device='cdrom'>
+ <source file='/var/lib/xen/images/fc5-x86_64-boot.iso'/>
+ <target dev='hdc'/>
+ <readonly/>
+ </disk>
+ <disk type='file' device='floppy'>
+ <source file='/root/fd.img'/>
+ <target dev='fda'/>
+ </disk>
+ <graphics type='vnc' port='5904'/>
+ </devices>
+ </domain>
diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst
index 4fb2e1a9f4..95ace2677e 100644
--- a/docs/formatdomain.rst
+++ b/docs/formatdomain.rst
@@ -8352,5 +8352,5 @@ Example configs
Example configurations for each driver are provide on the driver specific pages
listed below
-- `Xen examples <drvxen.html#xmlconfig>`__
+- `Xen examples <drvxen.html#example-domain-xml-config>`__
- `QEMU/KVM examples <drvqemu.html#example-domain-xml-config>`__
diff --git a/docs/meson.build b/docs/meson.build
index 940fbedcfa..6147f85d16 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -22,7 +22,6 @@ docs_html_in_files = [
'csharp',
'dbus',
'docs',
- 'drvxen',
'firewall',
'format',
'formatcaps',
@@ -81,6 +80,7 @@ docs_rst_files = [
'drvvbox',
'drvvirtuozzo',
'drvvmware',
+ 'drvxen',
'errors',
'formatbackup',
'formatcheckpoint',
--
2.35.1