[libvirt] [PATCH 1/2] Always free the device in AttachChrDevice

Ján Tomko jtomko at redhat.com
Tue Jan 27 16:40:03 UTC 2015


On 01/27/2015 04:27 PM, Michal Privoznik wrote:
> On 27.01.2015 14:45, Ján Tomko wrote:
>> Do not free it in the caller (qemuDomainAttachDeviceFlags),
>> because it has no way of knowing if it hasn't been cleaned
>> up by qemuProcessStop on monitor EOF.
>>
>> https://bugzilla.redhat.com/show_bug.cgi?id=1161024
>> ---
>>  src/qemu/qemu_driver.c  |  3 +--
>>  src/qemu/qemu_hotplug.c | 14 ++++++++++----
>>  tests/qemuhotplugtest.c |  1 +
>>  3 files changed, 12 insertions(+), 6 deletions(-)
>>
>> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
>> index ee5e4f5..333b2bf 100644
>> --- a/src/qemu/qemu_driver.c
>> +++ b/src/qemu/qemu_driver.c
>> @@ -6997,8 +6997,7 @@ qemuDomainAttachDeviceLive(virDomainObjPtr vm,
>>      case VIR_DOMAIN_DEVICE_CHR:
>>          ret = qemuDomainAttachChrDevice(driver, vm,
>>                                          dev->data.chr);
>> -        if (!ret)
>> -            dev->data.chr = NULL;
>> +        dev->data.chr = NULL;
> 
> I think it would be clearer if we make qemuDomainAttachChrDevice to add
> the device into vm->def only on success like the rest of attach function
> do.

Yeah, it's a shame the author of this function didn't follow the convention.
I'll take a look at the *ChrInsert function if they can be easily split up
into pre-monitor and post-monitor parts. Otherwise, I'd rather not risk
breaking it and use this patch.

Jan

> There's nothing wrong with the code though.
> 
> Michal


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20150127/e1f22146/attachment-0001.sig>


More information about the libvir-list mailing list