[libvirt] [PATCH v1 0/4] RFC CPU Model Comparison via QMP

Collin Walling posted 4 patches 4 years, 11 months ago
Test syntax-check passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20190415205925.28737-1-walling@linux.ibm.com
src/conf/cpu_conf.c                           |  30 +++
src/conf/cpu_conf.h                           |   6 +
src/cpu/cpu.c                                 |  14 +-
src/libvirt_private.syms                      |   1 +
src/qemu/qemu_capabilities.c                  |  49 ++++
src/qemu/qemu_capabilities.h                  |  10 +
src/qemu/qemu_driver.c                        |  10 +
src/qemu/qemu_monitor.c                       |  22 ++
src/qemu/qemu_monitor.h                       |  10 +
src/qemu/qemu_monitor_json.c                  | 223 +++++++++++++++---
src/qemu/qemu_monitor_json.h                  |  11 +
.../caps_2.10.0.s390x.xml                     |   1 +
.../caps_2.11.0.s390x.xml                     |   1 +
.../caps_2.12.0.s390x.xml                     |   1 +
.../qemucapabilitiesdata/caps_2.8.0.s390x.xml |   1 +
.../qemucapabilitiesdata/caps_2.9.0.s390x.xml |   1 +
.../qemucapabilitiesdata/caps_3.0.0.s390x.xml |   1 +
17 files changed, 343 insertions(+), 49 deletions(-)
[libvirt] [PATCH v1 0/4] RFC CPU Model Comparison via QMP
Posted by Collin Walling 4 years, 11 months ago
This is a preview of the CPU comparison (and soon baseline)
patches. Comments are welcome on all aspects, as they will
help guide the development of the baseline implementation.

The first couple of patches simply refactor code. The first
introduces an XML -> CPU def helper to be used to extract
the CPU definition prior to sending it to the comparison
functions. The second patch refactors some of the code from
CPU model expansion to be later used by comparison and
baseline. Currently, only one of the functions from the
refactoring is reused for comparison. The other two will
come into play when baseline is implemented.

The third is the typical "new capability" patch to introduce
query-cpu-model-comparison and test data for s390x.

The last patch implements the qemuMonitorJSON function for
query-cpu-model-comparison and hooks it up to virsh
hypervisor-cpu-compare.

This is posted as an RFC to make sure these patches are set
in the correct direction before tackling the baseline patches.

Thanks!

Collin Walling (4):
  cpu_conf: xml to cpu definition parse helper
  qemu: monitor: helper functions for CPU models
  qemu_capabilities: introduce QEMU_CAPS_QUERY_CPU_MODEL_COMPARISON
  qemu: monitor: implement query-cpu-model-comparison

 src/conf/cpu_conf.c                           |  30 +++
 src/conf/cpu_conf.h                           |   6 +
 src/cpu/cpu.c                                 |  14 +-
 src/libvirt_private.syms                      |   1 +
 src/qemu/qemu_capabilities.c                  |  49 ++++
 src/qemu/qemu_capabilities.h                  |  10 +
 src/qemu/qemu_driver.c                        |  10 +
 src/qemu/qemu_monitor.c                       |  22 ++
 src/qemu/qemu_monitor.h                       |  10 +
 src/qemu/qemu_monitor_json.c                  | 223 +++++++++++++++---
 src/qemu/qemu_monitor_json.h                  |  11 +
 .../caps_2.10.0.s390x.xml                     |   1 +
 .../caps_2.11.0.s390x.xml                     |   1 +
 .../caps_2.12.0.s390x.xml                     |   1 +
 .../qemucapabilitiesdata/caps_2.8.0.s390x.xml |   1 +
 .../qemucapabilitiesdata/caps_2.9.0.s390x.xml |   1 +
 .../qemucapabilitiesdata/caps_3.0.0.s390x.xml |   1 +
 17 files changed, 343 insertions(+), 49 deletions(-)

-- 
2.20.1

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v1 0/4] RFC CPU Model Comparison via QMP
Posted by Daniel Henrique Barboza 4 years, 11 months ago

On 4/15/19 5:59 PM, Collin Walling wrote:
> This is a preview of the CPU comparison (and soon baseline)
> patches. Comments are welcome on all aspects, as they will
> help guide the development of the baseline implementation.
>
> The first couple of patches simply refactor code. The first
> introduces an XML -> CPU def helper to be used to extract
> the CPU definition prior to sending it to the comparison
> functions. The second patch refactors some of the code from
> CPU model expansion to be later used by comparison and
> baseline. Currently, only one of the functions from the
> refactoring is reused for comparison. The other two will
> come into play when baseline is implemented.
>
> The third is the typical "new capability" patch to introduce
> query-cpu-model-comparison and test data for s390x.
>
> The last patch implements the qemuMonitorJSON function for
> query-cpu-model-comparison and hooks it up to virsh
> hypervisor-cpu-compare.
>
> This is posted as an RFC to make sure these patches are set
> in the correct direction before tackling the baseline patches.

Tested in both x86 (working as expected, falling back to
virCPUCompareXML) and in Power 9 (failing "as expected" - I'll
see if I can understand if there is a viable reason of why Power
hosts can't handle it like x86).


Tested-by: Daniel Henrique Barboza <danielhb413@gmail.com>



>
> Thanks!
>
> Collin Walling (4):
>    cpu_conf: xml to cpu definition parse helper
>    qemu: monitor: helper functions for CPU models
>    qemu_capabilities: introduce QEMU_CAPS_QUERY_CPU_MODEL_COMPARISON
>    qemu: monitor: implement query-cpu-model-comparison
>
>   src/conf/cpu_conf.c                           |  30 +++
>   src/conf/cpu_conf.h                           |   6 +
>   src/cpu/cpu.c                                 |  14 +-
>   src/libvirt_private.syms                      |   1 +
>   src/qemu/qemu_capabilities.c                  |  49 ++++
>   src/qemu/qemu_capabilities.h                  |  10 +
>   src/qemu/qemu_driver.c                        |  10 +
>   src/qemu/qemu_monitor.c                       |  22 ++
>   src/qemu/qemu_monitor.h                       |  10 +
>   src/qemu/qemu_monitor_json.c                  | 223 +++++++++++++++---
>   src/qemu/qemu_monitor_json.h                  |  11 +
>   .../caps_2.10.0.s390x.xml                     |   1 +
>   .../caps_2.11.0.s390x.xml                     |   1 +
>   .../caps_2.12.0.s390x.xml                     |   1 +
>   .../qemucapabilitiesdata/caps_2.8.0.s390x.xml |   1 +
>   .../qemucapabilitiesdata/caps_2.9.0.s390x.xml |   1 +
>   .../qemucapabilitiesdata/caps_3.0.0.s390x.xml |   1 +
>   17 files changed, 343 insertions(+), 49 deletions(-)
>

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v1 0/4] RFC CPU Model Comparison via QMP
Posted by Collin Walling 4 years, 11 months ago
On 4/17/19 4:25 PM, Daniel Henrique Barboza wrote:
> 
> 
> On 4/15/19 5:59 PM, Collin Walling wrote:
>> This is a preview of the CPU comparison (and soon baseline)
>> patches. Comments are welcome on all aspects, as they will
>> help guide the development of the baseline implementation.
>>
>> The first couple of patches simply refactor code. The first
>> introduces an XML -> CPU def helper to be used to extract
>> the CPU definition prior to sending it to the comparison
>> functions. The second patch refactors some of the code from
>> CPU model expansion to be later used by comparison and
>> baseline. Currently, only one of the functions from the
>> refactoring is reused for comparison. The other two will
>> come into play when baseline is implemented.
>>
>> The third is the typical "new capability" patch to introduce
>> query-cpu-model-comparison and test data for s390x.
>>
>> The last patch implements the qemuMonitorJSON function for
>> query-cpu-model-comparison and hooks it up to virsh
>> hypervisor-cpu-compare.
>>
>> This is posted as an RFC to make sure these patches are set
>> in the correct direction before tackling the baseline patches.
> 
> Tested in both x86 (working as expected, falling back to
> virCPUCompareXML) and in Power 9 (failing "as expected" - I'll
> see if I can understand if there is a viable reason of why Power
> hosts can't handle it like x86).
> 
> 
> Tested-by: Daniel Henrique Barboza <danielhb413@gmail.com>
> 
> 
> 

Much appreciated! Thanks for testing and reviewing.

>>
>> Thanks!
>>
>> Collin Walling (4):
>>    cpu_conf: xml to cpu definition parse helper
>>    qemu: monitor: helper functions for CPU models
>>    qemu_capabilities: introduce QEMU_CAPS_QUERY_CPU_MODEL_COMPARISON
>>    qemu: monitor: implement query-cpu-model-comparison
>>
>>   src/conf/cpu_conf.c                           |  30 +++
>>   src/conf/cpu_conf.h                           |   6 +
>>   src/cpu/cpu.c                                 |  14 +-
>>   src/libvirt_private.syms                      |   1 +
>>   src/qemu/qemu_capabilities.c                  |  49 ++++
>>   src/qemu/qemu_capabilities.h                  |  10 +
>>   src/qemu/qemu_driver.c                        |  10 +
>>   src/qemu/qemu_monitor.c                       |  22 ++
>>   src/qemu/qemu_monitor.h                       |  10 +
>>   src/qemu/qemu_monitor_json.c                  | 223 +++++++++++++++---
>>   src/qemu/qemu_monitor_json.h                  |  11 +
>>   .../caps_2.10.0.s390x.xml                     |   1 +
>>   .../caps_2.11.0.s390x.xml                     |   1 +
>>   .../caps_2.12.0.s390x.xml                     |   1 +
>>   .../qemucapabilitiesdata/caps_2.8.0.s390x.xml |   1 +
>>   .../qemucapabilitiesdata/caps_2.9.0.s390x.xml |   1 +
>>   .../qemucapabilitiesdata/caps_3.0.0.s390x.xml |   1 +
>>   17 files changed, 343 insertions(+), 49 deletions(-)
>>
> 
> -- 
> libvir-list mailing list
> libvir-list@redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
> 

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list