All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/2] s390: mark features that depend on deprecated features as deprecated
@ 2026-10-08 21:59 Collin Walling
  2026-10-08 21:59 ` [PATCH v1 1/2] target/s390x: externalize feat dependency array Collin Walling
  2026-10-08 21:59 ` [PATCH v1 2/2] target/s390x: mark feats dependent on deprecated feats as deprecated Collin Walling
  0 siblings, 2 replies; 5+ messages in thread
From: Collin Walling @ 2026-10-08 21:59 UTC (permalink / raw)
  To: qemu-devel, qemu-s390x
  Cc: Hendrik Brueckner, David Hildenbrand, Richard Henderson,
	Ilya Leoshkevich, Cornelia Huck, Eric Farman, Matthew Rosato

When the CPU model deprecated-features work was completed in QEMU, features that
have a dependency on a deprecated feature were not themselves marked deprecated.
This patch series corrects that oversight.

Specifically, ineff_nc_tx depends on te, which has been deprecated. When a user
starts a VM with deprecated features disabled, QEMU currently emits:

    warning: 'ineff_nc_tx' requires 'te'

In most cases this is only a warning, but it can also cause the VM to fail to
start entirely. One observed instance is virt-install aborting due to this warning.

With these patches, query-cpu-model-expansion includes ineff_nc_tx in the
deprecated-props array alongside the other deprecated features:

{
  "return": {
    "deprecated-props": [
      "ineff_nc_tx",
      "bpb",
      "te",
      "cte",
      "csske"
    ],
    "model": {
      "name": "gen17a-base",
      "props": { ... }
    }
  }
}

libvirt uses this response to determine which features to disable when the
deprecated_features=on|off attribute is set. With these patches, ineff_nc_tx
will be disabled along with the other deprecated features. The result can be
verified with virsh domcapabilities:

$ virsh domcapabilities --disable-deprecated-features \
    --xpath "/domainCapabilities/cpu/mode[@name='host-model']/feature[@policy='disable']"
<feature policy="disable" name="bpb"/>
<feature policy="disable" name="csske"/>
<feature policy="disable" name="cte"/>
<feature policy="disable" name="ineff_nc_tx"/>
<feature policy="disable" name="te"/>

Collin L. Walling (2):
  target/s390x: externalize feat dependency array
  target/s390x: mark feats dependent on deprecated feats as deprecated

 target/s390x/cpu_features.c | 137 +++++++++++++++++++++++++++++++++++-
 target/s390x/cpu_features.h |   4 ++
 target/s390x/cpu_models.c   | 133 ++--------------------------------
 3 files changed, 145 insertions(+), 129 deletions(-)

-- 
2.55.0



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-10-09 14:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-08 21:59 [PATCH v1 0/2] s390: mark features that depend on deprecated features as deprecated Collin Walling
2026-10-08 21:59 ` [PATCH v1 1/2] target/s390x: externalize feat dependency array Collin Walling
2026-10-08 21:59 ` [PATCH v1 2/2] target/s390x: mark feats dependent on deprecated feats as deprecated Collin Walling
2026-10-08 22:53   ` Matthew Rosato
2026-10-09 14:15     ` Collin Walling

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.