blob: b8e1799575775b72861b62baa32a3b06af0956f7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
In order to know whether qemu supports a specific backend type libxl
needs a way to obtain this information.
As each qemu instance owns a path (named $QEMU from now on) in
Xenstore, the backend information is presented there. $QEMU is built
from the domain id where the qemu instance is running $BACKEND_DOM,
and the domain id of the target domain of the qemu process $DOMID:
$QEMU = /local/domain/$BACKEND_DOM/device-model/$DOMID
Before signalling qemu is running by writing "running" to $QEMU/state
qemu will create a Xenstore node for each supported backend under
$QEMU/backends with the backend type as name (e.g. $QEMU/backends/qdisk
for the qdisk backend). In case qemu is running de-privileged (not as
user root) the backend nodes must be written before qemu is dropping
privileges.
libxl can assume a backend of a specific type $TYPE is supported if:
- $QEMU/backends/$TYPE is existing in Xenstore
- or $QEMU/backends is not existing and $TYPE is one of:
"console", "vkbd", "vfb", "qdisk", "qnic"
|