summaryrefslogtreecommitdiffstats
path: root/include/hw
diff options
context:
space:
mode:
authorKevin Wolf2021-10-08 15:34:39 +0200
committerKevin Wolf2021-10-15 16:11:22 +0200
commit259a10dbcb4f36a3489fb52f9f7a654761589448 (patch)
tree62e5d2bd1716b6d5c6ca4ff9b88f3c3d535893c1 /include/hw
parentqdev: Add Error parameter to hide_device() callbacks (diff)
downloadqemu-259a10dbcb4f36a3489fb52f9f7a654761589448.tar.gz
qemu-259a10dbcb4f36a3489fb52f9f7a654761589448.tar.xz
qemu-259a10dbcb4f36a3489fb52f9f7a654761589448.zip
virtio-net: Store failover primary opts pointer locally
Instead of accessing the global QemuOptsList, which really belong to the command line parser and shouldn't be accessed from devices, store a pointer to the QemuOpts in a new VirtIONet field. This is not the final state, but just an intermediate step to get rid of QemuOpts in devices. It will later be replaced with an options QDict. Before this patch, two "primary" devices could be hidden for the same standby device, but only one of them would actually be enabled and the other one would be kept hidden forever, so this doesn't make sense. After this patch, configuring a second primary device is an error. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Message-Id: <20211008133442.141332-13-kwolf@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Tested-by: Peter Krempa <pkrempa@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'include/hw')
-rw-r--r--include/hw/virtio/virtio-net.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h
index 824a69c23f..d118c95f69 100644
--- a/include/hw/virtio/virtio-net.h
+++ b/include/hw/virtio/virtio-net.h
@@ -209,6 +209,7 @@ struct VirtIONet {
bool failover_primary_hidden;
bool failover;
DeviceListener primary_listener;
+ QemuOpts *primary_opts;
Notifier migration_state;
VirtioNetRssData rss_data;
struct NetRxPkt *rx_pkt;