The net config space is already copied from the device so it can me modified by qemu. In particular, this is already done to fix cases where the NIC does not expose the right fields.
It's trivial to emulate _F_STATE with qemu if not supported by the device, sice a valid approach is to always show the link as up. If the feature is already supported by the device, no config space modification is needed. This is a pre requisite to use other features like _F_GUEST_ANNOUNCE, since _F_STATUS is needed for the guest to access the status. These patches are sent on top of [1] series, so trivial conflicts could arise if it is applied directly on master. Future versions can be not based on it is more convenient. Eugenio Pérez (3): virtio_net: Modify virtio_net_get_config to early return virtio_net: Handle _F_STATUS emulation in virtio_net_get_config vdpa: Expose VIRTIO_NET_F_STATUS unconditionally include/net/vhost-vdpa.h | 1 + hw/net/vhost_net.c | 16 ++++++++++++++-- hw/net/virtio-net.c | 39 ++++++++++++++++++++++++--------------- net/vhost-vdpa.c | 3 +++ 4 files changed, 42 insertions(+), 17 deletions(-) -- 2.31.1