|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v4 13/13] libxl: make pci and usb setdefault function generic
From: Oleksandr Grytsov <oleksandr_grytsov@xxxxxxxx>
Due to changes in device framework setdefault function
should have same format. Otherwise calling devicetype
set_default causes segfault.
Signed-off-by: Oleksandr Grytsov <oleksandr_grytsov@xxxxxxxx>
---
tools/libxl/libxl_internal.h | 1 -
tools/libxl/libxl_pci.c | 5 +++--
tools/libxl/libxl_usb.c | 7 ++++---
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h
index 5fd0356..e4799eb 100644
--- a/tools/libxl/libxl_internal.h
+++ b/tools/libxl/libxl_internal.h
@@ -1242,7 +1242,6 @@ _hidden int
libxl__domain_create_info_setdefault(libxl__gc *gc,
libxl_domain_create_info *c_info);
_hidden int libxl__domain_build_info_setdefault(libxl__gc *gc,
libxl_domain_build_info *b_info);
-_hidden int libxl__device_pci_setdefault(libxl__gc *gc, libxl_device_pci *pci);
_hidden void libxl__rdm_setdefault(libxl__gc *gc,
libxl_domain_build_info *b_info);
diff --git a/tools/libxl/libxl_pci.c b/tools/libxl/libxl_pci.c
index 159d046..fa86bcf 100644
--- a/tools/libxl/libxl_pci.c
+++ b/tools/libxl/libxl_pci.c
@@ -1158,7 +1158,8 @@ static int libxl__device_pci_reset(libxl__gc *gc,
unsigned int domain, unsigned
return -1;
}
-int libxl__device_pci_setdefault(libxl__gc *gc, libxl_device_pci *pci)
+static int libxl__device_pci_setdefault(libxl__gc *gc, uint32_t domid,
+ libxl_device_pci *pci, bool hotplug)
{
/* We'd like to force reserve rdm specific to a device by default.*/
if (pci->rdm_policy == LIBXL_RDM_RESERVE_POLICY_INVALID)
@@ -1214,7 +1215,7 @@ int libxl__device_pci_add(libxl__gc *gc, uint32_t domid,
libxl_device_pci *pcide
}
}
- rc = libxl__device_pci_setdefault(gc, pcidev);
+ rc = libxl__device_pci_setdefault(gc, domid, pcidev, false);
if (rc) goto out;
if (pcidev->seize && !pciback_dev_is_assigned(gc, pcidev)) {
diff --git a/tools/libxl/libxl_usb.c b/tools/libxl/libxl_usb.c
index e526c08..9fdb284 100644
--- a/tools/libxl/libxl_usb.c
+++ b/tools/libxl/libxl_usb.c
@@ -39,7 +39,8 @@ static int usbback_is_loaded(libxl__gc *gc)
}
static int libxl__device_usbctrl_setdefault(libxl__gc *gc, uint32_t domid,
- libxl_device_usbctrl *usbctrl)
+ libxl_device_usbctrl *usbctrl,
+ bool update_json)
{
int rc;
libxl_domain_type domtype = libxl__domain_type(gc, domid);
@@ -449,7 +450,7 @@ static void libxl__device_usbctrl_add(libxl__egc *egc,
uint32_t domid,
libxl__device *device;
int rc;
- rc = libxl__device_usbctrl_setdefault(gc, domid, usbctrl);
+ rc = libxl__device_usbctrl_setdefault(gc, domid, usbctrl, false);
if (rc < 0) goto out;
if (usbctrl->devid == -1) {
@@ -1079,7 +1080,7 @@ static int libxl__device_usbdev_setdefault(libxl__gc *gc,
GCNEW(usbctrl);
libxl_device_usbctrl_init(usbctrl);
- rc = libxl__device_usbctrl_setdefault(gc, domid, usbctrl);
+ rc = libxl__device_usbctrl_setdefault(gc, domid, usbctrl,
update_json);
if (rc < 0) goto out;
if (usbctrl->devid == -1) {
--
2.7.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |