On 9/23/20 2:52 PM, Collin Walling wrote:
> On 9/23/20 10:18 AM, Jiri Denemark wrote:
>> On Wed, Sep 23, 2020 at 09:26:58 +0200, Tim Wiederhake wrote:
>>> From: Collin Walling
>>>
>>> Before:
>>> $ uname -m
>>> s390x
>>> $ cat
On 9/23/20 5:01 PM, Jiri Denemark wrote:
> On Wed, Sep 23, 2020 at 16:17:04 -0400, Collin Walling wrote:
>> On 9/23/20 2:52 PM, Collin Walling wrote:
>>> On 9/23/20 10:18 AM, Jiri Denemark wrote:
>>>> On Wed, Sep 23, 2020 at 09:26:58 +0200, Tim Wiederhake wro
quot;, since the
API expects at least two CPU models.
Let's fix this by performing a CPU model expansion on the single CPU
definition and returning the result to the caller.
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 17 +
1 file changed, 9 insertions(+), 8 delet
after the CPU definition has been converted from
XML. If these conditions are matched, then the CPU definition's
model name will be set to "host".
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 41 +++--
1 file changed, 31 inserti
On 9/24/20 3:30 AM, Jiri Denemark wrote:
> On Wed, Sep 23, 2020 at 22:26:29 -0400, Collin Walling wrote:
>> When executing the hypervisor-cpu-baseline command and if there is only
>> a single CPU definition present in the XML file, then libvirt will
>> print an unhelpful mess
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 0b68b33af8..92684a9876 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -12470,7 +12470,7
quot;, since the
API expects at least two CPU models.
Let's fix this by performing a CPU model expansion on the single CPU
definition and returning the result to the caller. This will also
ensure the CPU model is sane.
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 9 ++---
1 f
odels known to the hypervisor prior to baselining / expanding
(which were retrieved at some point previously during libvirt init).
Collin Walling (5):
qemu: check for model-expansion cap before baselining
qemu: fix one instance of rc check styling in baseline
qemu: report error if missi
of a model name.
This code is copied from virCPUBaseline.
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 13 +
1 file changed, 13 insertions(+)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 92684a9876..1c5b1dcfee 100644
--- a/src/qemu/qemu_driver.c
Hypervisor-cpu-baseline requires the cpu-model-expansion
capability when expanding CPU model features if the
--features flag is provided.
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/qemu/qemu_driver.c b/src
Check the provided CPU models against the CPU models
known by the hypervisor before baselining and print
an error if an unrecognized model is found.
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 18 +++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a
er. This will also
ensure the CPU model's feature set is sane if any were provided in
the file.
Signed-off-by: Collin Walling
On 9/24/20 8:22 PM, Collin Walling wrote:
> When executing the hypervisor-cpu-baseline command and if there is
> only a single CPU definition present in the XM
tween a libvirt test and a QEMU
binary? I afraid to say that I am at a loss how to repair this or perhaps how
to use the API properly.
I appreciate anyone's help with looking into this.
Note: in case I am not clear, by "libvirt test" I am referring to a test
implemented in the test
Much appreciated to you both for the well-written explanations. I'll keep my
libvirt tests
to mock input/output responses and find an alternative test suite for using
libvirt with a
real QEMU instance.
Thank you for your time!
--
Respectfully,
- Collin Walling
Signed-off-by: Collin Walling
---
tests/qemumonitorjsontest.c | 77 +
1 file changed, 77 insertions(+)
diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c
index 5568af5..e9f95e3 100644
--- a/tests/qemumonitorjsontest.c
+++ b/tests
There are some architectures that support capabilities that others
do not (e.g. s390x supports cpu comparison and baseline via QEMU).
Let's make testQEMUSchemaLoad accept a string to specify the schema
to load based on the specified arch.
Signed-off-by: Collin Walling
---
tests/qemublockt
x86 capabilities were
loaded for the qemu_monitor_json tests. By accepting a string denoting
which architecture's QEMU capabilities we'd like to load, we can now
test the comparison and baseline code that is currently only supported
on s390.
Collin Walling (3):
qemumonitorjsontest: l
Signed-off-by: Collin Walling
---
tests/qemumonitorjsontest.c | 50 +
1 file changed, 50 insertions(+)
diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c
index cd7fa1f..5568af5 100644
--- a/tests/qemumonitorjsontest.c
+++ b/tests
tures.
An internal error will still appear for other messages originating from
QEMU e.g. if a newer feature is not available for an older CPU model.
Signed-off-by: Collin Walling
---
src/qemu/qemu_driver.c | 57 ++
1 file changed, 57 insertions(+)
uest used machine s390-ccw-virtio-4.2
Migrated between a weird mixed environment I'm chaotically working with :)
Perhaps the testing was a bit over-extensive, but it's good to make sure.
Tested-by: Collin Walling
--
Respectfully,
- Collin Walling
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
May I ask what the current status of this item is? Is this still
being worked on or has it been shelved?
On 1/12/19 7:49 PM, Chris Venteicher wrote:
Some architectures (S390) depend on QEMU to compute baseline CPU model and
expand a models feature set.
Interacting with QEMU requires starting th
Refactor some code in qemuMonitorJSONGetCPUModelExpansion to be
later used for the comparison and baseline functions.
This does not alter any functionality.
Signed-off-by: Collin Walling
Reviewed-by: Bjoern Walk
---
src/qemu/qemu_monitor_json.c | 166 ---
1
Implement an XML to virCPUDefPtr helper that handles
the ctxt prerequisite for virCPUDefParseXML.
This does not alter any functionality.
Signed-off-by: Collin Walling
Reviewed-by: Bjoern Walk
---
src/conf/cpu_conf.c | 30 ++
src/conf/cpu_conf.h | 6
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_MOD
This capability enables CPU model comparison between two CPU
definitions via QMP.
Signed-off-by: Collin Walling
---
src/qemu/qemu_capabilities.c | 2 ++
src/qemu/qemu_capabilities.h | 1 +
tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml | 1 +
tests
set of the second
(B). If A is the hypervisor CPU and a subset of B (the CPU contained
in the XML), then B would not be able to run on this machine and thus
we will report that CPU model B is incompatible.
Signed-off-by: Collin Walling
---
src/qemu/qemu_capabilities.c | 47 +++
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
On 4/17/19 4:19 PM, Daniel Henrique Barboza wrote:
On 4/15/19 5:59 PM, Collin Walling wrote:
Interfaces with QEMU to compare CPU models. The command takes two
CPU models, A and B, that are given a model name and an optional list
of CPU features. Through the query-cpu-model-comparison command
On 4/29/19 10:08 AM, Daniel Henrique Barboza wrote:
On 4/26/19 5:22 PM, wall...@linux.ibm.com wrote:
From: Collin Walling
Refactor some code in qemuMonitorJSONGetCPUModelExpansion to be
later used for the comparison and baseline functions.
This does not alter any functionality.
Signed-off
, superset, subset, incompatible) as well as a list
of properties (aka CPU features) responsible for the subset or
superset result.
Signed-off-by: Collin Walling
Reviewed-by: Daniel Henrique Barboza
---
src/qemu/qemu_monitor.c | 22 ++
src/qemu/qemu_monitor.h | 9 +
src/qemu
t files
- hook up monitor functions to virsh command
Patch 7 pulls out some code from the CPUDef XML parser to be
reused in the comparison hookup.
Thanks.
x86 and Power review by Daniel Henrique Barboza (thanks!)
Collin Walling (8):
qemu_monitor: helper functions for CPU models
qemu_mon
domcapabilities).
Signed-off-by: Collin Walling
Reviewed-by: Daniel Henrique Barboza
---
src/qemu/qemu_capabilities.c | 84
src/qemu/qemu_capabilities.h | 7
src/qemu/qemu_driver.c | 27 ++
3 files changed, 118 insertions
run on both A and B.
Signed-off-by: Collin Walling
Reviewed-by: Daniel Henrique Barboza
---
src/qemu/qemu_monitor.c | 22
src/qemu/qemu_monitor.h | 9 +++
src/qemu/qemu_monitor_json.c | 61
src/qemu/qemu_monitor_json.h
Refactor some code in qemuMonitorJSONGetCPUModelExpansion to be
later used for the comparison and baseline functions.
This does not alter any functionality.
Signed-off-by: Collin Walling
Reviewed-by: Bjoern Walk
---
src/qemu/qemu_monitor_json.c | 173
domcapabilities).
s390x can report that the first model (A) is a subset of the second
(B). If A is the hypervisor CPU and a subset of B (the CPU contained
in the XML), then B would not be able to run on this machine and thus
we will report that CPU model B is incompatible.
Signed-off-by: Collin Walling
This capability enables CPU model baselining between two CPU
definitions via QMP.
Signed-off-by: Collin Walling
Reviewed-by: Daniel Henrique Barboza
---
src/qemu/qemu_capabilities.c | 2 ++
src/qemu/qemu_capabilities.h | 1 +
tests/qemucapabilitiesdata
Implement an XML to virCPUDefPtr helper that handles
the ctxt prerequisite for virCPUDefParseXML.
This does not alter any functionality.
Signed-off-by: Collin Walling
Reviewed-by: Bjoern Walk
Reviewed-by: Daniel Henrique Barboza
---
src/conf/cpu_conf.c | 30
This capability enables CPU model comparison between two CPU
definitions via QMP.
Signed-off-by: Collin Walling
Reviewed-by: Daniel Henrique Barboza
---
src/qemu/qemu_capabilities.c | 4
src/qemu/qemu_capabilities.h | 3 +++
tests
Polite ping. I'd like to at least make sure these patches are on the
right track with what libvirt expects for these commands. :)
On 5/30/19 10:23 AM, Collin Walling wrote:
Changelog:
v2
- numerous cleanups
- removed "policy fix function" and now
On 3/15/22 15:08, David Hildenbrand wrote:
> On 15.03.22 18:40, Boris Fiuczynski wrote:
>> On 3/15/22 4:58 PM, David Hildenbrand wrote:
>>> On 11.03.22 13:44, Christian Borntraeger wrote:
>>>>
>>>>
>>>> Am 11.03.22 um 10:30 schrieb David Hild
On 3/18/22 14:33, David Hildenbrand wrote:
> On 18.03.22 18:23, Collin Walling wrote:
>> On 3/15/22 15:08, David Hildenbrand wrote:
>>> On 15.03.22 18:40, Boris Fiuczynski wrote:
>>>> On 3/15/22 4:58 PM, David Hildenbrand wrote:
>>>>> O
s supported
list = query_deprecated_features()
for each feat in list
set feat to disabled for host-model
Then, any new features that are flagged for deprecated in the future may
simply be added to this "deprecated features" list in QEMU alongside a
new CPU definition.
Please le
CPU models past gen16a will no longer support the csske feature. In
order to secure migration of guests running on machines that still
support this feature to machines that do not, let's disable csske
in the host-model.
Signed-off-by: Collin Walling
---
src/qemu/qemu_capabilit
On 5/26/23 7:35 AM, Daniel P. Berrangé wrote:
On Wed, May 17, 2023 at 05:34:46PM -0400, Collin Walling wrote:
Daniel, Tim, (and others on the upstream list that'd like to chime in)
Harken back to a few months ago when I presented a few patches to
introduce the virsh hypervisor-cpu-m
This will be used to load the host recommended CPU model, introduced in
a subsequent patch. Also move ctxt auto restore to end of variable
declarations to avoid a compiler warning.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/qemu/qemu_capabilities.c | 22
# virsh hypervisor-cpu-baseline host-model.xml
z14.2-base
Collin Walling (9):
qemu: monitor: enable query for static-recommended CPU model
qemu: capabilities: add static-recommended capability
qemu: capabilities: refactor virQEMUCapsLoadHostCPUModelInfo
mixed environment.
To circumvent this issue, a "host-recommended" CPU model has been
introduced, which is the host-model with delta changes that disable
features that have been flagged as deprecated.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/qemu/qemu_monitor.
):
...
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/conf/schemas/cputypes.rng | 1 +
src/qemu/qemu_capabilities.c | 108 +++---
src/qemu/qemu_capabilities.h | 3 +
src/qemu/qemu_capspriv.h | 6
In order for the CPU model expansion command to consider any deprecated
CPU features, s390x will need to use the special static recommended
expansion type after baselining.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/qemu/qemu_driver.c | 8 ++--
1 file changed, 6
CPU model definitions.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/cpu/cpu.c | 1 +
src/qemu/qemu_command.c | 4 +++
src/qemu/qemu_process.c | 9 --
src/qemu/qemu_validate.c
Check for the QEMU capability to query for a static-recommended CPU
model via CPU model expansion. Cache this capability for later.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/qemu/qemu_capabilities.c| 2 ++
src/qemu/qemu_capabilities.h
Report the host-recommended CPU definition in the domaincapabilities.
Currently, only s390x supports this model, but the formatting remains
open if other archs decide to support this as well.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/conf/domain_capabilities.c
Add VIR_CPU_MODE_HOST_RECOMMENDED for host-recommended CPU models and
satisfy all switch cases. For the most part, host-recommended will
follow similar paths as host-model, aside from touching any
architecture specifics.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/conf
VIR_CPU_TYPE_GUEST so that the XML
formatter will consider the feature policies.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/qemu/qemu_driver.c | 10 +++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
On 9/12/23 03:58, Peter Krempa wrote:
> On Mon, Sep 11, 2023 at 17:07:07 -0400, Collin Walling wrote:
>> Notes:
>> https://lists.gnu.org/archive/html/qemu-devel/2023-09/msg02518.html
>> - For information regarding the QEMU "static-recommended" (aka
>> host
On 9/12/23 03:13, Peter Krempa wrote:
> On Mon, Sep 11, 2023 at 17:07:09 -0400, Collin Walling wrote:
>> Check for the QEMU capability to query for a static-recommended CPU
>> model via CPU model expansion. Cache this capability for later.
>>
>> Signed-off-by: Collin Wal
The new API collects a list of CPU model names supported by the
specified hypervisor. This is a more useful version of
virConnectGetCPUNames, which does not consider any hypervisor
capabilities when querying model names.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
include
listing.
The models "qemu", "host", and "max" have been excluded from this list
since they are not architecture specific. The code can be easily modified
to include them if desired.
Collin Walling (4):
Introduce virConnectGetHypervisorCPUNames
This function is hooked into the virsh hypervisor-cpu-models command.
The CPU models are read directly from the QEMU capabilities file,
which contains a list of all models queried from the hypervisor.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/qemu/qemu_driver.c | 62
This command is a virsh wrapper for virConnectGetHypervisorCPUNames.
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
docs/manpages/virsh.rst | 20
tools/virsh-host.c | 70 +
2 files changed, 90 insertions(+)
diff --git
Signed-off-by: Collin Walling
Reviewed-by: Boris Fiuczynski
---
src/remote/remote_driver.c | 1 +
src/remote/remote_protocol.x | 20 +++-
src/remote_protocol-structs | 11 +++
3 files changed, 31 insertions(+), 1 deletion(-)
diff --git a/src/remote/remote_driver.c b
On 3/22/23 1:00 PM, Tim Wiederhake wrote:
On Wed, 2023-03-22 at 11:39 -0400, Collin Walling wrote:
Allows for the query of hypervisor-known CPU models via the simple
command: virsh hypervisor-cpu-models. For the QEMU driver, the models
are queried via the capabilities file. Each model is
On 3/22/23 2:11 PM, Collin Walling wrote:
On 3/22/23 1:00 PM, Tim Wiederhake wrote:
On Wed, 2023-03-22 at 11:39 -0400, Collin Walling wrote:
Allows for the query of hypervisor-known CPU models via the simple
command: virsh hypervisor-cpu-models. For the QEMU driver, the models
are queried via
Daniel, Tim, (and others on the upstream list that'd like to chime in)
Harken back to a few months ago when I presented a few patches to
introduce the virsh hypervisor-cpu-models command. The proposal was
turned down, and I was pointed to a patch-set/discussion that Tim
introduced almost a year a
101 - 164 of 164 matches
Mail list logo