aboutsummaryrefslogtreecommitdiffstats
path: root/tools/xcutils/xc_restore.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-05-28 09:30:19 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-05-28 09:30:19 +0100
commit5cc436c1d2b3b0be3f42104582f53eec3969b43a (patch)
tree1e30ade146ee7287c486d1309b5d3d2c69a2d9b9 /tools/xcutils/xc_restore.c
parent7f9a888af4b65cb8c22cea3c8295d30d0fedd623 (diff)
downloadxen-5cc436c1d2b3b0be3f42104582f53eec3969b43a.tar.gz
xen-5cc436c1d2b3b0be3f42104582f53eec3969b43a.tar.bz2
xen-5cc436c1d2b3b0be3f42104582f53eec3969b43a.zip
libxc: eliminate static variables, use xentoollog; API change
This patch eliminate the global variables in libxenctrl (used for logging and error reporting). Instead the information which was in the global variables is now in a new xc_interface* opaque structure, which xc_interface open returns instead of the raw file descriptor; furthermore, logging is done via xentoollog. There are three new parameters to xc_interface_open to control the logging, but existing callers can just pass "0" for all three to get the old behaviour. All libxc callers have been adjusted accordingly. Also update QEMU_TAG for corresponding qemu change. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Diffstat (limited to 'tools/xcutils/xc_restore.c')
-rw-r--r--tools/xcutils/xc_restore.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/tools/xcutils/xc_restore.c b/tools/xcutils/xc_restore.c
index da4aa98b78..ea069ac8f5 100644
--- a/tools/xcutils/xc_restore.c
+++ b/tools/xcutils/xc_restore.c
@@ -20,7 +20,8 @@ main(int argc, char **argv)
{
unsigned int domid, store_evtchn, console_evtchn;
unsigned int hvm, pae, apic;
- int xc_fd, io_fd, ret;
+ xc_interface *xch;
+ int io_fd, ret;
int superpages;
unsigned long store_mfn, console_mfn;
@@ -28,8 +29,8 @@ main(int argc, char **argv)
errx(1, "usage: %s iofd domid store_evtchn "
"console_evtchn hvm pae apic [superpages]", argv[0]);
- xc_fd = xc_interface_open();
- if ( xc_fd < 0 )
+ xch = xc_interface_open(0,0,0);
+ if ( !xch )
errx(1, "failed to open control interface");
io_fd = atoi(argv[1]);
@@ -44,7 +45,7 @@ main(int argc, char **argv)
else
superpages = 0;
- ret = xc_domain_restore(xc_fd, io_fd, domid, store_evtchn, &store_mfn,
+ ret = xc_domain_restore(xch, io_fd, domid, store_evtchn, &store_mfn,
console_evtchn, &console_mfn, hvm, pae, superpages);
if ( ret == 0 )
@@ -55,7 +56,7 @@ main(int argc, char **argv)
fflush(stdout);
}
- xc_interface_close(xc_fd);
+ xc_interface_close(xch);
return ret;
}