summaryrefslogtreecommitdiffstats
path: root/qemu/xen-common.c
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/xen-common.c')
-rw-r--r--qemu/xen-common.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/qemu/xen-common.c b/qemu/xen-common.c
index 0dcdbc39f..e641ad1ae 100644
--- a/qemu/xen-common.c
+++ b/qemu/xen-common.c
@@ -8,6 +8,7 @@
* GNU GPL, version 2 or (at your option) any later version.
*/
+#include "qemu/osdep.h"
#include "hw/xen/xen_backend.h"
#include "qmp-commands.h"
#include "sysemu/char.h"
@@ -113,11 +114,17 @@ static void xen_change_state_handler(void *opaque, int running,
static int xen_init(MachineState *ms)
{
- xen_xc = xen_xc_interface_open(0, 0, 0);
- if (xen_xc == XC_HANDLER_INITIAL_VALUE) {
+ xen_xc = xc_interface_open(0, 0, 0);
+ if (xen_xc == NULL) {
xen_be_printf(NULL, 0, "can't open xen interface\n");
return -1;
}
+ xen_fmem = xenforeignmemory_open(0, 0);
+ if (xen_fmem == NULL) {
+ xen_be_printf(NULL, 0, "can't open xen fmem interface\n");
+ xc_interface_close(xen_xc);
+ return -1;
+ }
qemu_add_vm_change_state_handler(xen_change_state_handler, NULL);
global_state_set_optional();