]> xenbits.xensource.com Git - xen.git/commit
libxl: use new QEMU xenstore protocol
authorWei Liu <wei.liu2@citrix.com>
Thu, 9 Apr 2015 18:49:25 +0000 (19:49 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Thu, 9 Apr 2015 18:55:39 +0000 (19:55 +0100)
commit1fc3aeb3aa26a138d1a4e91709256a4eac8b3922
treed4aef28f47856cf696b1962b219a28727b6196be
parent5baf8162955ee6a9a25f4c590baf646534e8c5a1
libxl: use new QEMU xenstore protocol

Originally both QEMU traditional and QEMU upstream used hardcoded
/local/domain/0 paths. This patch changes the protocol to use
/local/domain/$dm_domid path.

For QEMU traditional and upstream without stubdom, $dm_domid is 0 so
the path is in fact still /local/domain/0.

For QEMU traditional stubdom, this is incompatible protocol change.
However QEMU traditional is shipped with Xen so we are allowed to do
such change.  This change requires to corresponding QEMU traditional
changeset.

There is no compatibility issue with QEMU upstream stubdom, because QEMU
upstream stubdom doesn't exist yet.

Watch /local/domain/$dm_domid/device-model/$domid/state, wait until
state turns "running" then unpause guest.

LIBXL_STUBDOM_START_TIMEOUT is the timeout used wait for stubdom to be
ready. My test on a very old machine (Core 2 6400) showed that it might
need more than 20s before the stubdom is ready to serve DomU.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Config.mk
tools/libxl/libxl.c
tools/libxl/libxl_device.c
tools/libxl/libxl_dm.c
tools/libxl/libxl_dom.c
tools/libxl/libxl_internal.h
tools/libxl/libxl_pci.c