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

Changelog:
  v2
    - updated loop structure to restart and check if previous dependencies
       need to be accounted for
    - added fixes tag to patch #2

Description:

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'

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 | 139 ++++++++++++++++++++++++++++++++++++
 target/s390x/cpu_features.h |   4 ++
 target/s390x/cpu_models.c   | 133 ++--------------------------------
 3 files changed, 148 insertions(+), 128 deletions(-)

-- 
2.55.0



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

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

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-09 18:55 [PATCH v2 0/2] s390: mark features that depend on deprecated features as deprecated Collin Walling
2026-10-09 18:55 ` [PATCH v2 1/2] target/s390x: externalize feat dependency array Collin Walling
2026-10-09 20:37   ` Matthew Rosato
2026-10-09 18:55 ` [PATCH v2 2/2] target/s390x: mark feats dependent on deprecated feats as deprecated Collin Walling
2026-10-09 20:41   ` Matthew Rosato
2026-10-09 21:07     ` Eric Farman
2026-10-09 20:37 ` [PATCH v2 0/2] s390: mark features that depend on deprecated features " Matthew Rosato
2026-10-09 21:09 ` Eric Farman

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.