2007-07-29 10:57:36 +02:00
|
|
|
bug #239173
|
|
|
|
bug #242953
|
|
|
|
|
2011-05-31 19:35:29 +02:00
|
|
|
Index: xen-4.1.1-testing/tools/python/xen/xend/XendDomainInfo.py
|
2010-03-01 16:05:50 +01:00
|
|
|
===================================================================
|
2011-05-31 19:35:29 +02:00
|
|
|
--- xen-4.1.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
|
|
|
|
+++ xen-4.1.1-testing/tools/python/xen/xend/XendDomainInfo.py
|
2011-03-21 17:47:37 +01:00
|
|
|
@@ -3295,7 +3295,7 @@ class XendDomainInfo:
|
2007-07-29 10:57:36 +02:00
|
|
|
(fn, BOOTLOADER_LOOPBACK_DEVICE))
|
|
|
|
|
|
|
|
vbd = {
|
|
|
|
- 'mode': 'RO',
|
|
|
|
+ 'mode': 'RW',
|
|
|
|
'device': BOOTLOADER_LOOPBACK_DEVICE,
|
|
|
|
}
|
|
|
|
|
2011-05-31 19:35:29 +02:00
|
|
|
Index: xen-4.1.1-testing/tools/ioemu-qemu-xen/xenstore.c
|
2010-03-01 16:05:50 +01:00
|
|
|
===================================================================
|
2011-05-31 19:35:29 +02:00
|
|
|
--- xen-4.1.1-testing.orig/tools/ioemu-qemu-xen/xenstore.c
|
|
|
|
+++ xen-4.1.1-testing/tools/ioemu-qemu-xen/xenstore.c
|
2011-03-21 17:47:37 +01:00
|
|
|
@@ -447,9 +447,9 @@ void xenstore_parse_domain_config(int hv
|
2007-07-29 10:57:36 +02:00
|
|
|
{
|
2009-05-04 18:38:09 +02:00
|
|
|
char **e_danger = NULL;
|
|
|
|
char *buf = NULL;
|
2007-07-29 10:57:36 +02:00
|
|
|
- char *fpath = NULL, *bpath = NULL,
|
|
|
|
+ char *fpath = NULL, *bpath = NULL, *btype = NULL,
|
2009-05-04 18:38:09 +02:00
|
|
|
*dev = NULL, *params = NULL, *drv = NULL;
|
2010-01-16 01:12:54 +01:00
|
|
|
- int i, ret;
|
|
|
|
+ int i, ret, is_tap;
|
2008-07-19 01:04:37 +02:00
|
|
|
unsigned int len, num, hd_index, pci_devid = 0;
|
2008-03-15 00:07:14 +01:00
|
|
|
BlockDriverState *bs;
|
2008-07-19 01:04:37 +02:00
|
|
|
BlockDriver *format;
|
2011-03-21 17:47:37 +01:00
|
|
|
@@ -486,6 +486,14 @@ void xenstore_parse_domain_config(int hv
|
2009-05-04 18:38:09 +02:00
|
|
|
e_danger[i]);
|
2007-07-29 10:57:36 +02:00
|
|
|
if (bpath == NULL)
|
2009-05-04 18:38:09 +02:00
|
|
|
continue;
|
2007-07-29 10:57:36 +02:00
|
|
|
+ /* check to see if type is tap or not */
|
|
|
|
+ if (pasprintf(&buf, "%s/type", bpath) == -1)
|
|
|
|
+ continue;
|
|
|
|
+ free(btype);
|
|
|
|
+ btype = xs_read(xsh, XBT_NULL, buf, &len);
|
|
|
|
+ if (btype == NULL)
|
|
|
|
+ continue;
|
|
|
|
+ is_tap = !strncmp(btype, "tap", 3);
|
|
|
|
/* read the name of the device */
|
|
|
|
if (pasprintf(&buf, "%s/dev", bpath) == -1)
|
|
|
|
continue;
|
2011-03-21 17:47:37 +01:00
|
|
|
@@ -775,6 +783,7 @@ void xenstore_parse_domain_config(int hv
|
2010-09-28 00:07:21 +02:00
|
|
|
free(mode);
|
2007-07-29 10:57:36 +02:00
|
|
|
free(params);
|
|
|
|
free(dev);
|
|
|
|
+ free(btype);
|
|
|
|
free(bpath);
|
|
|
|
free(buf);
|
2009-05-04 18:38:09 +02:00
|
|
|
free(danger_buf);
|