From ba585ed6cff624c6c0f1f9801382fd6846466ee0 Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Thu, 17 Sep 2009 15:31:08 +0100 Subject: [PATCH] Fix net/disk hot-unplug segfault When we hot-unplug the last device, we're currently double-freeing the device definition. Reported by Michal Nowak here: https://bugzilla.redhat.com/523953 * src/qemu_driver.c: fix double free (cherry-picked from commit 8881ae1bf8783006777429403cc543c33187175d) Fedora-patch: libvirt-fix-net-hotunplug-double-free.patch --- src/qemu_driver.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qemu_driver.c b/src/qemu_driver.c index a65334f..de31581 100644 --- a/src/qemu_driver.c +++ b/src/qemu_driver.c @@ -5998,7 +5998,7 @@ try_command: /* ignore, harmless */ } } else { - VIR_FREE(vm->def->disks[0]); + VIR_FREE(vm->def->disks); vm->def->ndisks = 0; } virDomainDiskDefFree(detach); @@ -6100,7 +6100,7 @@ qemudDomainDetachNetDevice(virConnectPtr conn, /* ignore, harmless */ } } else { - VIR_FREE(vm->def->nets[0]); + VIR_FREE(vm->def->nets); vm->def->nnets = 0; } virDomainNetDefFree(detach); -- 1.6.2.5