diff options
author | Paul Durrant <paul.durrant@citrix.com> | 2016-08-01 10:16:25 +0100 |
---|---|---|
committer | Stefano Stabellini <sstabellini@kernel.org> | 2016-08-12 16:38:30 -0700 |
commit | b7665c6027c972c23668ee74b878b5c617218514 (patch) | |
tree | 19e37bd685e3a9c46805d2b86a727ea9fd59263a /xen-hvm.c | |
parent | c4f68f0b52f4d84658ee977eb7e44a80857e0b50 (diff) |
xen: handle inbound migration of VMs without ioreq server pages
VMs created on older versions on Xen will not have been provisioned with
pages to support creation of non-default ioreq servers. In this case
the ioreq server API is not supported and QEMU's only option is to fall
back to using the default ioreq server pages as it did prior to
commit 3996e85c ("Xen: Use the ioreq-server API when available").
This patch therefore changes the code in xen_common.h to stop considering
a failure of xc_hvm_create_ioreq_server() as a hard failure but simply
as an indication that the guest is too old to support the ioreq server
API. Instead a boolean is set to cause reversion to old behaviour such
that the default ioreq server is then used.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
Acked-by: Anthony PERARD <anthony.perard@citrix.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
Diffstat (limited to 'xen-hvm.c')
-rw-r--r-- | xen-hvm.c | 6 |
1 files changed, 1 insertions, 5 deletions
@@ -1203,11 +1203,7 @@ void xen_hvm_init(PCMachineState *pcms, MemoryRegion **ram_memory) goto err; } - rc = xen_create_ioreq_server(xen_xc, xen_domid, &state->ioservid); - if (rc < 0) { - perror("xen: ioreq server create"); - goto err; - } + xen_create_ioreq_server(xen_xc, xen_domid, &state->ioservid); state->exit.notify = xen_exit_notifier; qemu_add_exit_notifier(&state->exit); |