[libvirt] [PATCH v2] esx: Fix and improve esxListAllDomains function
Matthias Bolte
matthias.bolte at googlemail.com
Sat Sep 29 19:21:06 UTC 2012
2012/9/10 Peter Krempa <pkrempa at redhat.com>:
> On 09/09/12 17:55, Matthias Bolte wrote:
>>
>> Avoid requesting information such as identity or power state when it
>> is not necessary.
>>
>> Lookup virtual machine list with the required fields (configStatus,
>> name, and config.uuid) to make esxVI_GetVirtualMachineIdentity work.
>>
>> No need to call esxVI_GetNumberOfSnapshotTrees. rootSnapshotTreeList
>> can be tested for emptiness by checking it for NULL.
>>
>> esxVI_LookupRootSnapshotTreeList already does the error reporting,
>> don't overwrite it.
>>
>> Check if autostart is enabled at all before looking up the individual
>> autostart setting of a virtual machine.
>>
>> Reorder VIR_EXPAND_N(doms, ndoms, 1) to avoid leaking the result of
>> the call to virGetDomain if VIR_EXPAND_N fails.
>>
>> Replace VIR_EXPAND_N by VIR_RESIZE_N to avoid quadratic scaling, as in
>> the Hyper-V version of the function.
>>
>> If virGetDomain fails it already reports an error, don't overwrite it
>> with an OOM error.
>>
>> All items in doms up to the count-th one are valid, no need to double
>> check before freeing them.
>>
>> Finally, don't leak autoStartDefaults and powerInfoList.
>> ---
>>
>> v2: Replace VIR_EXPAND_N by VIR_RESIZE_N to avoid quadratic scaling,
>> as in the Hyper-V version of the function.
>>
>> src/esx/esx_driver.c | 116
>> ++++++++++++++++++++++++++++++++-----------------
>> 1 files changed, 76 insertions(+), 40 deletions(-)
>>
>
> ACK. I'm glad you took care of my mess :)
>
> Peter
>
Thanks, pushed.
--
Matthias Bolte
http://photron.blogspot.com
More information about the libvir-list
mailing list