On Fri, Feb 26, 2010 at 02:09:16PM +0100, Wolfgang Mauerer wrote: > We must not delete the data part when the operation succeeds > because it is required later on. The correct pattern to handle > the parsed representation of the device information on success > is dev->data.controller = NULL; virDomainDeviceDefFree(dev);, > which leaves the structure pointed at by data in memory. > > Signed-off-by: Wolfgang Mauerer <wolfgang.mauerer@xxxxxxxxxxx> > Signed-off-by: Jan Kiszka <jan.kiszka@xxxxxxxxxxx> > --- > src/qemu/qemu_driver.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c > index 1586e35..5394ff5 100644 > --- a/src/qemu/qemu_driver.c > +++ b/src/qemu/qemu_driver.c > @@ -6111,6 +6111,8 @@ static int qemudDomainAttachDevice(virDomainPtr dom, > if (dev->data.controller->type == VIR_DOMAIN_CONTROLLER_TYPE_SCSI) { > ret = qemudDomainAttachPciControllerDevice(driver, vm, > dev->data.controller, qemuCmdFlags); > + if (ret == 0) > + dev->data.controller = NULL; > } else { > qemuReportError(VIR_ERR_NO_SUPPORT, > _("disk controller bus '%s' cannot be hotplugged."), Okay, ACK, obviously a bug fix, so pushed, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list