On Thu, Mar 06, 2025 at 03:16:26PM +0900, Akihiko Odaki wrote: > This series was spun off from: > "[PATCH 0/3] virtio-net: Convert feature properties to OnOffAuto" > (https://patchew.org/QEMU/20240714-auto-v3-0-e27401aab...@daynix.com/) > > Some features are not always available with vhost. Legacy features are > not available with vp_vdpa in particular. virtio devices used to disable > them when not available even if the corresponding properties were > explicitly set to "on". > > QEMU already has OnOffAuto type, which includes the "auto" value to let > it automatically decide the effective value. Convert feature properties > to OnOffAuto and set them "auto" by default to utilize it. This allows > QEMU to report an error if they are set "on" and the corresponding > features are not available. > > Signed-off-by: Akihiko Odaki <akihiko.od...@daynix.com>
Marcus, Paolo, Daniel, Eduardo, any feedback on the QOM bits? > --- > Changes in v6: > - Rebased. > - Link to v5: > https://lore.kernel.org/qemu-devel/20250208-virtio-v5-0-4376cb218...@daynix.com > > Changes in v5: > - Covered QAPI more than just qdev. > - Expanded the description of patch > "qapi: Accept bool for OnOffAuto and OnOffSplit". > - Rebased. > - Link to v4: > https://lore.kernel.org/r/20250108-virtio-v4-0-cbf0aa04c...@daynix.com > > Changes in v4: > - Added patch "qapi: Do not consume a value if failed". > - Link to v3: > https://lore.kernel.org/r/20250104-virtio-v3-0-63ef70e9d...@daynix.com > > Changes in v3: > - Rebased. > - Link to v2: > https://lore.kernel.org/r/20241022-virtio-v2-0-b2394236e...@daynix.com > > Changes in v2: > - Expanded the message of patch "qdev-properties: Accept bool for > OnOffAuto". > - Link to v1: > https://lore.kernel.org/r/20241014-virtio-v1-0-e9ddf7a81...@daynix.com > > --- > Akihiko Odaki (4): > qapi: Do not consume a value if failed > qapi: Accept bool for OnOffAuto and OnOffSplit > qdev-properties: Add DEFINE_PROP_ON_OFF_AUTO_BIT64() > virtio: Convert feature properties to OnOffAuto > > include/hw/qdev-properties.h | 18 ++++++++ > include/hw/virtio/virtio.h | 38 +++++++++------- > hw/core/machine.c | 1 + > hw/core/qdev-properties.c | 83 +++++++++++++++++++++++++++++++++- > hw/virtio/virtio-bus.c | 14 +++++- > hw/virtio/virtio.c | 4 +- > qapi/qobject-input-visitor.c | 103 > +++++++++++++++++++++++++++++-------------- > scripts/qapi/visit.py | 24 ++++++++++ > 8 files changed, 229 insertions(+), 56 deletions(-) > --- > base-commit: b69801dd6b1eb4d107f7c2f643adf0a4e3ec9124 > change-id: 20241013-virtio-164ea3f295c3 > > Best regards, > -- > Akihiko Odaki <akihiko.od...@daynix.com>