aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-02-04 13:42:53 +0000
committerKeir Fraser <keir.fraser@citrix.com>2008-02-04 13:42:53 +0000
commitb490b3db0688144a5cd1baa09c62b98ba6bf45b9 (patch)
tree080accda0f9be0583e657d3564934bb57bc0bb17 /tools
parent5f013ef0b280fff267cb57fafb2c5aab2c926b10 (diff)
downloadxen-b490b3db0688144a5cd1baa09c62b98ba6bf45b9.tar.gz
xen-b490b3db0688144a5cd1baa09c62b98ba6bf45b9.tar.bz2
xen-b490b3db0688144a5cd1baa09c62b98ba6bf45b9.zip
Revert 16947:32b898768217027. Breaks HVM qcow-backed discs.
Sigend-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/ioemu/hw/xen_machine_fv.c2
-rw-r--r--tools/ioemu/vl.c2
-rw-r--r--tools/ioemu/vl.h1
-rw-r--r--tools/ioemu/xenstore.c13
4 files changed, 7 insertions, 11 deletions
diff --git a/tools/ioemu/hw/xen_machine_fv.c b/tools/ioemu/hw/xen_machine_fv.c
index 794afeb236..22ba1dbc3f 100644
--- a/tools/ioemu/hw/xen_machine_fv.c
+++ b/tools/ioemu/hw/xen_machine_fv.c
@@ -205,8 +205,6 @@ static void xen_init_fv(uint64_t ram_size, int vga_ram_size, char *boot_device,
}
#endif
- xenstore_parse_domain_config(domid);
-
xc_get_hvm_param(xc_handle, domid, HVM_PARAM_IOREQ_PFN, &ioreq_pfn);
fprintf(logfile, "shared page at pfn %lx\n", ioreq_pfn);
shared_page = xc_map_foreign_range(xc_handle, domid, XC_PAGE_SIZE,
diff --git a/tools/ioemu/vl.c b/tools/ioemu/vl.c
index ce0b26c3e5..939149c46f 100644
--- a/tools/ioemu/vl.c
+++ b/tools/ioemu/vl.c
@@ -7593,7 +7593,7 @@ int main(int argc, char **argv)
#ifdef CONFIG_DM
bdrv_init();
xc_handle = xc_interface_open();
- xenstore_daemon_open();
+ xenstore_parse_domain_config(domid);
#endif /* CONFIG_DM */
#ifdef USE_KQEMU
diff --git a/tools/ioemu/vl.h b/tools/ioemu/vl.h
index e73ef3b6e9..9d78cd25d9 100644
--- a/tools/ioemu/vl.h
+++ b/tools/ioemu/vl.h
@@ -1457,7 +1457,6 @@ void readline_start(const char *prompt, int is_password,
ReadLineFunc *readline_func, void *opaque);
/* xenstore.c */
-void xenstore_daemon_open(void);
void xenstore_parse_domain_config(int domid);
int xenstore_fd(void);
void xenstore_process_event(void *opaque);
diff --git a/tools/ioemu/xenstore.c b/tools/ioemu/xenstore.c
index 0063a2eba9..9d33237cb3 100644
--- a/tools/ioemu/xenstore.c
+++ b/tools/ioemu/xenstore.c
@@ -77,13 +77,6 @@ static void waitForDevice(char *fn)
return;
}
-void xenstore_daemon_open(void)
-{
- xsh = xs_daemon_open();
- if (xsh == NULL)
- fprintf(logfile, "Could not contact xenstore for domain config\n");
-}
-
void xenstore_parse_domain_config(int domid)
{
char **e = NULL;
@@ -97,6 +90,12 @@ void xenstore_parse_domain_config(int domid)
for(i = 0; i < MAX_DISKS + MAX_SCSI_DISKS; i++)
media_filename[i] = NULL;
+ xsh = xs_daemon_open();
+ if (xsh == NULL) {
+ fprintf(logfile, "Could not contact xenstore for domain config\n");
+ return;
+ }
+
path = xs_get_domain_path(xsh, domid);
if (path == NULL) {
fprintf(logfile, "xs_get_domain_path() error\n");