[libvirt] [PATCH] Regression: Report correct CPUs present on executing virsh nodecpumap

Nitesh Konkar niteshkonkar.libvirt at gmail.com
Wed May 24 16:35:54 UTC 2017


On Wed, May 24, 2017 at 8:09 PM, Ján Tomko <jtomko at redhat.com> wrote:

> On Wed, May 24, 2017 at 07:46:00PM +0530, Nitesh Konkar wrote:
>
>> Recent changes to virbitmap.c file created a regression
>> where on executing the virsh nodecpumap command, the number
>> of CPUs present was shown as (last cpu online id + 1). This
>> patch fixes the issue.
>>
>> Signed-off-by: Nitesh Konkar <nitkon12 at linux.vnet.ibm.com>
>> ---
>> src/Makefile.am      |  2 ++
>> src/util/virbitmap.c | 10 ++++++++--
>> 2 files changed, 10 insertions(+), 2 deletions(-)
>>
>>
> diff --git a/src/util/virbitmap.c b/src/util/virbitmap.c
>> index eac63d997..dc427f430 100644
>> --- a/src/util/virbitmap.c
>> +++ b/src/util/virbitmap.c
>> @@ -37,6 +37,7 @@
>> #include "count-one-bits.h"
>> #include "virstring.h"
>> #include "virerror.h"
>> +#include "virhostcpu.h"
>>
>> #define VIR_FROM_THIS VIR_FROM_NONE
>>
>> @@ -565,9 +566,14 @@ virBitmapParseUnlimited(const char *str)
>>     const char *cur = str;
>>     char *tmp;
>>     size_t i;
>> -    int start, last;
>> +    int start, last, bitmapSize;
>> +
>> +    bitmapSize = virHostCPUGetCount();
>>
>
> NACK.
>
> This function should be able to parse any bitmap, regardless of how many
> CPUs the host has.
>
> Jan
>
Hi Jan,

However, currently we get the following output, which is invalid.

# virsh nodecpumap
CPUs present:   73             <--- should be 80.
CPUs online:    10
CPU map:
y-------y-------y-------y-------y-------y-------y-------y-------y-------y

# lscpu
Architecture:          ppc64le
Byte Order:            Little Endian
CPU(s):                80
On-line CPU(s) list:   0,8,16,24,32,40,48,56,64,72
Off-line CPU(s) list:  1-7,9-15,17-23,25-31,33-39,41-47,49-55,57-63,65-71,73-79
Thread(s) per core:    1
Core(s) per socket:    5
Socket(s):             2
NUMA node(s):          2
Model:                 2.1 (pvr 004b 0201)
Model name:            POWER8E (raw), altivec supported
L1d cache:             64K
L1i cache:             32K
L2 cache:              512K
L3 cache:              8192K
NUMA node0 CPU(s):     0,8,16,24,32
NUMA node1 CPU(s):     40,48,56,64,72

# ls /sys/devices/system/cpu | grep cpu[0-9] | wc -l
80

Thanks,
Nitesh.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20170524/1b30bb1a/attachment-0001.htm>


More information about the libvir-list mailing list