Chunyan sent a correct patch to fix a resource leak on error in libxlDomainAttachNetDevice https://www.redhat.com/archives/libvir-list/2016-March/msg00924.html I made what was thought to be an improvement and pushed the patch as commit e6336442. As it turns out, my change broke adding net devices that are actually hostdevs to the list of nets in virDomainDef. This patch changes e6336442 to resemble Chunyan's original, correct patch. Signed-off-by: Jim Fehlig <jfehlig@xxxxxxxx> --- src/libxl/libxl_driver.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index 5103495..9955cc7 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -3174,12 +3174,13 @@ libxlDomainAttachNetDevice(libxlDriverPrivatePtr driver, goto cleanup; } - vm->def->nets[vm->def->nnets++] = net; ret = 0; cleanup: libxl_device_nic_dispose(&nic); - if (ret) { + if (!ret) { + vm->def->nets[vm->def->nnets++] = net; + } else { virDomainNetRemoveHostdev(vm->def, net); networkReleaseActualDevice(vm->def, net); } -- 2.6.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list