[libvirt] [PATCHv2 4/5] S390: Fixed core identification for s390
Michal Privoznik
mprivozn at redhat.com
Mon Jun 25 14:43:36 UTC 2012
On 25.06.2012 13:25, Daniel P. Berrange wrote:
> On Fri, Jun 22, 2012 at 01:50:13PM +0200, Viktor Mihajlovski wrote:
>> For the s390x architecture the sysfs core_id alone is not unique. As a
>> result it can happen that libvirt thinks there are less host CPUs available
>> than really present.
>> Currently, a logical CPU is equivalent to a core for s390x. We therefore
>> produce a fake core id from the CPU number.
>>
>> Signed-off-by: Viktor Mihajlovski <mihajlov at linux.vnet.ibm.com>
>> ---
>> src/nodeinfo.c | 6 ++++++
>> 1 files changed, 6 insertions(+), 0 deletions(-)
>>
>> diff --git a/src/nodeinfo.c b/src/nodeinfo.c
>> index 7eb5ae5..819f954 100644
>> --- a/src/nodeinfo.c
>> +++ b/src/nodeinfo.c
>> @@ -355,7 +355,13 @@ int linuxNodeInfoCPUPopulate(FILE *cpuinfo,
>> nodeinfo->cpus++;
>>
>> /* Parse core */
>> +# if defined(__s390__) || \
>> + defined(__s390x__)
>> + /* logical cpu is equivalent to a core on s390 */
>> + core = cpu;
>> +# else
>> core = virNodeGetCpuValue(sysfs_cpudir, cpu, "topology/core_id", false);
>> +# endif
>> if (!CPU_ISSET(core, &core_mask)) {
>> CPU_SET(core, &core_mask);
>> nodeinfo->cores++;
>
> ACK
>
> Daniel
>
Pushed now.
Michal
More information about the libvir-list
mailing list