From a8b558624b12333400a5f0bfd22c42a9f62e1fe2 Mon Sep 17 00:00:00 2001 From: George Dunlap Date: Tue, 4 Mar 2014 13:38:18 +0000 Subject: [PATCH] libxl: Fail domain creation if pci assignment fails Actually pay attention to the return value of libxl__device_pci_add. Signed-off-by: George Dunlap --- tools/libxl/libxl_create.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c index a604cd8701..53e7cb6944 100644 --- a/tools/libxl/libxl_create.c +++ b/tools/libxl/libxl_create.c @@ -1262,8 +1262,14 @@ static void domcreate_attach_pci(libxl__egc *egc, libxl__multidev *multidev, goto error_out; } - for (i = 0; i < d_config->num_pcidevs; i++) - libxl__device_pci_add(gc, domid, &d_config->pcidevs[i], 1); + for (i = 0; i < d_config->num_pcidevs; i++) { + ret = libxl__device_pci_add(gc, domid, &d_config->pcidevs[i], 1); + if (ret < 0) { + LIBXL__LOG(ctx, LIBXL__LOG_ERROR, + "libxl_device_pci_add failed: %d", ret); + goto error_out; + } + } if (d_config->num_pcidevs > 0) { ret = libxl__create_pci_backend(gc, domid, d_config->pcidevs, -- 2.39.5