3 <h1>Driver capabilities XML format
</h1>
5 <p>As new virtualization engine support gets added to libvirt, and to handle
6 cases like QEmu supporting a variety of emulations, a query interface has
7 been added in
0.2.1 allowing to list the set of supported virtualization
8 capabilities on the host:
</p>
9 <pre> char * virConnectGetCapabilities (virConnectPtr conn);
</pre>
10 <p>The value returned is an XML document listing the virtualization
11 capabilities of the host and virtualization engine to which
12 <code>@conn
</code> is connected. One can test it using
<code>virsh
</code>
13 command line tool command '
<code>capabilities
</code>', it dumps the XML
14 associated to the current connection. For example in the case of a
64 bits
15 machine with hardware virtualization capabilities enabled in the chip and
17 <pre><capabilities
>
18 <span style=
"color: #E50000"><host
>
20 <arch
>x86_64
</arch
>
24 <model
>core2duo
</model
>
25 <vendor
>Intel
</vendor
>
26 <topology
sockets=
"1" cores=
"2" threads=
"1"/
>
27 <feature
name=
"lahf_lm"/
>
28 <feature name='xtpr'/
>
33 <!-- xen-
3.0-x86_64 --
>
34 <span style=
"color: #0000E5"><guest
>
35 <os_type
>xen
</os_type
>
36 <arch
name=
"x86_64">
37 <wordsize
>64</wordsize
>
38 <domain
type=
"xen"></domain
>
39 <emulator
>/usr/lib64/xen/bin/qemu-dm
</emulator
>
45 <!-- hvm-
3.0-x86_32 --
>
46 <span style=
"color: #00B200"><guest
>
47 <os_type
>hvm
</os_type
>
48 <arch
name=
"i686">
49 <wordsize
>32</wordsize
>
50 <domain
type=
"xen"></domain
>
51 <emulator
>/usr/lib/xen/bin/qemu-dm
</emulator
>
52 <machine
>pc
</machine
>
53 <machine
>isapc
</machine
>
54 <loader
>/usr/lib/xen/boot/hvmloader
</loader
>
62 </capabilities
></pre>
63 <p>The first block (in red) indicates the host hardware capabilities, currently
64 it is limited to the CPU properties but other information may be available,
65 it shows the CPU architecture, topology, model name, and additional features
66 which are not included in the model but the CPU provides them. Features of the
67 chip are shown within the feature block (the block is similar to what you will
68 find in a Xen fully virtualized domain description).
</p>
69 <p>The second block (in blue) indicates the paravirtualization support of the
70 Xen support, you will see the os_type of xen to indicate a paravirtual
71 kernel, then architecture information and potential features.
</p>
72 <p>The third block (in green) gives similar information but when running a
73 32 bit OS fully virtualized with Xen using the hvm support.
</p>
74 <p>This section is likely to be updated and augmented in the future, see
<a href=
"https://www.redhat.com/archives/libvir-list/2007-March/msg00215.html">the
75 discussion
</a> which led to the capabilities format in the mailing-list