[libvirt] [PATCH python] include usable memory in virDomainMemoryStats

Martin Kletzander mkletzan at redhat.com
Thu Aug 3 06:13:18 UTC 2017


On Wed, Aug 02, 2017 at 01:59:02PM +0200, Michal Privoznik wrote:
>On 08/02/2017 01:17 PM, Martin Kletzander wrote:
>> On Wed, Aug 02, 2017 at 12:52:32PM +0200, Michal Privoznik wrote:
>>> On 08/01/2017 03:23 PM, Tomáš Golembiovský wrote:
>>>> Signed-off-by: Tomáš Golembiovský <tgolembi at redhat.com>
>>>> ---
>>>>  libvirt-override.c | 3 +++
>>>>  1 file changed, 3 insertions(+)
>>>>
>>>> diff --git a/libvirt-override.c b/libvirt-override.c
>>>> index 0abfc37..832e05c 100644
>>>> --- a/libvirt-override.c
>>>> +++ b/libvirt-override.c
>>>> @@ -398,6 +398,9 @@ libvirt_virDomainMemoryStats(PyObject *self
>>>> ATTRIBUTE_UNUSED,
>>>>          case VIR_DOMAIN_MEMORY_STAT_RSS:
>>>>              key = libvirt_constcharPtrWrap("rss");
>>>>              break;
>>>> +        case VIR_DOMAIN_MEMORY_STAT_USABLE:
>>>> +            key = libvirt_constcharPtrWrap("usable");
>>>> +            break;
>>>>          default:
>>>>              continue;
>>>>          }
>>>>
>>>
>>> Almost. Firstly, there's VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE which is not
>>> handled either. Secondly, these two macros were introduced in libvirt
>>> 2.1.0. So we need a check that enables them iff building with 2.1.0 or
>>> newer. I'm fixing both issues and pushing. I wonder if there's something
>>> we can do to not forget about macros like these again.
>>>
>>
>> You mean like this?  Or am I missing a reason why this won't work?
>>
>> diff --git a/libvirt-override.c b/libvirt-override.c
>> index 0abfc379c528..6e678d2efb2d 100644
>> --- a/libvirt-override.c
>> +++ b/libvirt-override.c
>> @@ -373,7 +373,7 @@ libvirt_virDomainMemoryStats(PyObject *self
>> ATTRIBUTE_UNUSED,
>>         return NULL;
>>
>>     for (i = 0; i < nr_stats; i++) {
>> -        switch (stats[i].tag) {
>> +        switch ((virDomainMemoryStatTags) stats[i].tag) {
>>         case VIR_DOMAIN_MEMORY_STAT_SWAP_IN:
>>             key = libvirt_constcharPtrWrap("swap_in");
>>             break;
>> @@ -398,7 +398,8 @@ libvirt_virDomainMemoryStats(PyObject *self
>> ATTRIBUTE_UNUSED,
>>         case VIR_DOMAIN_MEMORY_STAT_RSS:
>>             key = libvirt_constcharPtrWrap("rss");
>>             break;
>> -        default:
>> +        case VIR_DOMAIN_MEMORY_STAT_NR:
>> +        case VIR_DOMAIN_MEMORY_STAT_LAST:
>>             continue;
>>         }
>>         val = libvirt_ulonglongWrap(stats[i].val);
>> --
>
>Oh right. Apparently some time off is in place :-) Either of you care
>posting the patch?
>

Not erally, feel free to reuse that ^^, but someone could take their
time to check that it's done for all appropriate switches.

Have a nice day,
Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20170803/63ae3f65/attachment-0001.sig>


More information about the libvir-list mailing list