From: Juan Quintela <quintela@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Daniel P. Berrangé" <berrange@redhat.com>,
"Eduardo Habkost" <ehabkost@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Jason Wang" <jasowang@redhat.com>,
"Juan Quintela" <quintela@redhat.com>,
"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>
Subject: [PATCH v2 10/27] failover: Remove primary_device_opts
Date: Wed, 18 Nov 2020 09:37:31 +0100 [thread overview]
Message-ID: <20201118083748.1328-11-quintela@redhat.com> (raw)
In-Reply-To: <20201118083748.1328-1-quintela@redhat.com>
It was really only used once, in failover_add_primary(). Just search
for it on global opts when it is needed.
Signed-off-by: Juan Quintela <quintela@redhat.com>
---
include/hw/virtio/virtio-net.h | 1 -
hw/net/virtio-net.c | 21 +++++----------------
2 files changed, 5 insertions(+), 17 deletions(-)
diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h
index ca68be759f..7159e6c0a0 100644
--- a/include/hw/virtio/virtio-net.h
+++ b/include/hw/virtio/virtio-net.h
@@ -202,7 +202,6 @@ struct VirtIONet {
AnnounceTimer announce_timer;
bool needs_vnet_hdr_swap;
bool mtu_bypass_backend;
- QemuOpts *primary_device_opts;
QDict *primary_device_dict;
DeviceState *primary_dev;
char *primary_device_id;
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
index e334f05352..2a99b0e0f6 100644
--- a/hw/net/virtio-net.c
+++ b/hw/net/virtio-net.c
@@ -791,17 +791,17 @@ static inline uint64_t virtio_net_supported_guest_offloads(VirtIONet *n)
static void failover_add_primary(VirtIONet *n, Error **errp)
{
Error *err = NULL;
+ QemuOpts *opts;
if (n->primary_dev) {
return;
}
- n->primary_device_opts = qemu_opts_find(qemu_find_opts("device"),
- n->primary_device_id);
- if (n->primary_device_opts) {
- n->primary_dev = qdev_device_add(n->primary_device_opts, &err);
+ opts = qemu_opts_find(qemu_find_opts("device"), n->primary_device_id);
+ if (opts) {
+ n->primary_dev = qdev_device_add(opts, &err);
if (err) {
- qemu_opts_del(n->primary_device_opts);
+ qemu_opts_del(opts);
}
} else {
error_setg(errp, "Primary device not found");
@@ -856,7 +856,6 @@ static DeviceState *virtio_connect_failover_devices(VirtIONet *n, Error **errp)
prim_dev = virtio_net_find_primary(n, &err);
if (prim_dev) {
n->primary_device_id = g_strdup(prim_dev->id);
- n->primary_device_opts = prim_dev->opts;
} else {
error_propagate(errp, err);
}
@@ -3113,14 +3112,6 @@ static bool failover_replug_primary(VirtIONet *n, Error **errp)
if (!pdev->partially_hotplugged) {
return true;
}
- if (!n->primary_device_opts) {
- n->primary_device_opts = qemu_opts_from_qdict(qemu_find_opts("device"),
- n->primary_device_dict,
- errp);
- if (!n->primary_device_opts) {
- return false;
- }
- }
primary_bus = n->primary_dev->parent_bus;
if (!primary_bus) {
error_setg(errp, "virtio_net: couldn't find primary bus");
@@ -3211,8 +3202,6 @@ static int virtio_net_primary_should_be_hidden(DeviceListener *listener,
goto out;
}
- n->primary_device_opts = device_opts;
-
/* failover_primary_hidden is set during feature negotiation */
hide = qatomic_read(&n->failover_primary_hidden);
--
2.26.2
next prev parent reply other threads:[~2020-11-18 8:54 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-18 8:37 [PATCH v2 00/27] Virtio net failover fixes Juan Quintela
2020-11-18 8:37 ` [PATCH v2 01/27] migration: Network Failover can't work with a paused guest Juan Quintela
2020-11-25 12:05 ` Dr. David Alan Gilbert
2020-12-02 10:13 ` Michael S. Tsirkin
2020-12-02 10:27 ` Daniel P. Berrangé
2020-12-02 10:31 ` Michael S. Tsirkin
2020-12-02 10:33 ` Michael S. Tsirkin
2020-12-02 10:51 ` Juan Quintela
2020-12-02 10:55 ` Daniel P. Berrangé
2020-12-02 11:19 ` Michael S. Tsirkin
2020-12-02 11:26 ` Daniel P. Berrangé
2020-12-02 11:37 ` Michael S. Tsirkin
2020-12-02 12:01 ` Daniel P. Berrangé
2020-12-03 11:21 ` Michael S. Tsirkin
2020-12-03 11:32 ` Daniel P. Berrangé
2020-12-03 11:40 ` Michael S. Tsirkin
2020-12-03 11:43 ` Dr. David Alan Gilbert
2020-12-03 12:02 ` Michael S. Tsirkin
2020-12-03 12:04 ` Dr. David Alan Gilbert
2020-12-03 12:11 ` Michael S. Tsirkin
2020-12-03 12:16 ` Daniel P. Berrangé
2020-12-08 18:48 ` Michael S. Tsirkin
2020-12-03 11:45 ` Daniel P. Berrangé
2020-12-03 12:01 ` Michael S. Tsirkin
2020-12-03 12:06 ` Daniel P. Berrangé
2020-12-03 12:13 ` Michael S. Tsirkin
2020-12-08 18:32 ` Michael S. Tsirkin
2020-12-02 10:34 ` Daniel P. Berrangé
2020-11-18 8:37 ` [PATCH v2 02/27] failover: fix indentantion Juan Quintela
2020-11-18 8:37 ` [PATCH v2 03/27] failover: Use always atomics for primary_should_be_hidden Juan Quintela
2020-11-18 8:37 ` [PATCH v2 04/27] failover: primary bus is only used once, and where it is set Juan Quintela
2020-11-18 8:37 ` [PATCH v2 05/27] failover: Remove unused parameter Juan Quintela
2020-11-18 8:37 ` [PATCH v2 06/27] failover: Remove external partially_hotplugged property Juan Quintela
2020-11-18 8:37 ` [PATCH v2 07/27] failover: qdev_device_add() returns err or dev set Juan Quintela
2020-11-18 8:37 ` [PATCH v2 08/27] failover: Rename bool to failover_primary_hidden Juan Quintela
2020-11-18 8:37 ` [PATCH v2 09/27] failover: g_strcmp0() knows how to handle NULL Juan Quintela
2020-11-18 8:37 ` Juan Quintela [this message]
2020-11-18 8:37 ` [PATCH v2 11/27] failover: remove standby_id variable Juan Quintela
2020-11-18 8:37 ` [PATCH v2 12/27] failover: Remove primary_device_dict Juan Quintela
2020-11-18 8:37 ` [PATCH v2 13/27] failover: Remove memory leak Juan Quintela
2020-11-18 8:37 ` [PATCH v2 14/27] failover: simplify virtio_net_find_primary() Juan Quintela
2020-11-18 8:37 ` [PATCH v2 15/27] failover: should_be_hidden() should take a bool Juan Quintela
2020-11-18 8:37 ` [PATCH v2 16/27] failover: Rename function to hide_device() Juan Quintela
2020-11-18 8:37 ` [PATCH v2 17/27] failover: virtio_net_connect_failover_devices() does nothing Juan Quintela
2020-11-18 8:37 ` [PATCH v2 18/27] failover: Rename to failover_find_primary_device() Juan Quintela
2020-11-18 8:37 ` [PATCH v2 19/27] failover: simplify qdev_device_add() failover case Juan Quintela
2020-11-18 8:37 ` [PATCH v2 20/27] failover: simplify qdev_device_add() Juan Quintela
2020-11-18 8:37 ` [PATCH v2 21/27] failover: make sure that id always exist Juan Quintela
2020-11-18 8:37 ` [PATCH v2 22/27] failover: remove failover_find_primary_device() error parameter Juan Quintela
2020-11-18 8:37 ` [PATCH v2 23/27] failover: split failover_find_primary_device_id() Juan Quintela
2020-11-18 8:37 ` [PATCH v2 24/27] failover: We don't need to cache primary_device_id anymore Juan Quintela
2020-11-18 8:37 ` [PATCH v2 25/27] failover: Caller of this two functions already have primary_dev Juan Quintela
2020-11-18 8:37 ` [PATCH v2 26/27] failover: simplify failover_unplug_primary Juan Quintela
2020-11-18 8:37 ` [PATCH v2 27/27] failover: Remove primary_dev member Juan Quintela
2020-11-18 8:53 ` [PATCH v2 00/27] Virtio net failover fixes Michael S. Tsirkin
2020-12-02 10:16 ` Juan Quintela
2020-12-02 10:30 ` Michael S. Tsirkin
2020-12-02 9:55 ` Michael S. Tsirkin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201118083748.1328-11-quintela@redhat.com \
--to=quintela@redhat.com \
--cc=berrange@redhat.com \
--cc=dgilbert@redhat.com \
--cc=ehabkost@redhat.com \
--cc=jasowang@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).