qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: David Woodhouse <dwmw2@infradead.org>
To: Roger Pau Monne <roger.pau@citrix.com>, qemu-devel@nongnu.org
Cc: "Stefano Stabellini" <sstabellini@kernel.org>,
	"Anthony PERARD" <anthony@xenproject.org>,
	"Paul Durrant" <paul@xen.org>,
	"Edgar E . Iglesias" <edgar.iglesias@gmail.com>,
	"Kevin Wolf" <kwolf@redhat.com>,
	"Hanna Reitz" <hreitz@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	xen-devel@lists.xenproject.org, qemu-block@nongnu.org
Subject: [PATCH 3/4] hw/xen: Use xs_node_read() from xen_netdev_get_name()
Date: Fri, 10 Jan 2025 10:03:25 +0000	[thread overview]
Message-ID: <20250110100326.527101-3-dwmw2@infradead.org> (raw)
In-Reply-To: <20250110100326.527101-1-dwmw2@infradead.org>

From: David Woodhouse <dwmw@amazon.co.uk>

Now that xs_node_read() can construct a node path, no need to open-code it.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
 hw/net/xen_nic.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
index 97ebd9fa30..5410039490 100644
--- a/hw/net/xen_nic.c
+++ b/hw/net/xen_nic.c
@@ -510,23 +510,22 @@ static char *xen_netdev_get_name(XenDevice *xendev, Error **errp)
 
     if (netdev->dev == -1) {
         XenBus *xenbus = XEN_BUS(qdev_get_parent_bus(DEVICE(xendev)));
-        char fe_path[XENSTORE_ABS_PATH_MAX + 1];
         int idx = (xen_mode == XEN_EMULATE) ? 0 : 1;
+        Error *local_err = NULL;
         char *value;
 
         /* Theoretically we could go up to INT_MAX here but that's overkill */
         while (idx < 100) {
-            snprintf(fe_path, sizeof(fe_path),
-                     "/local/domain/%u/device/vif/%u",
-                     xendev->frontend_id, idx);
-            value = qemu_xen_xs_read(xenbus->xsh, XBT_NULL, fe_path, NULL);
+            value = xs_node_read(xenbus->xsh, XBT_NULL, NULL, &local_err,
+                                 "/local/domain/%u/device/vif/%u",
+                                 xendev->frontend_id, idx);
             if (!value) {
                 if (errno == ENOENT) {
                     netdev->dev = idx;
+                    error_free(local_err);
                     goto found;
                 }
-                error_setg(errp, "cannot read %s: %s", fe_path,
-                           strerror(errno));
+                error_propagate(errp, local_err);
                 return NULL;
             }
             free(value);
-- 
2.47.0



  parent reply	other threads:[~2025-01-10 10:03 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-10  9:35 [PATCH v2 0/2] xen: error handling and FreeBSD compatibility fixes Roger Pau Monne
2025-01-10  9:35 ` [PATCH v2 1/2] hw/xen: Add xs_node_read() helper function Roger Pau Monne
2025-01-10 10:01   ` Philippe Mathieu-Daudé
2025-01-15 14:07   ` Anthony PERARD
2025-01-10  9:35 ` [PATCH v2 2/2] xen: do not use '%ms' scanf specifier Roger Pau Monne
2025-01-10  9:55   ` David Woodhouse
2025-01-15 14:36   ` Anthony PERARD
2025-01-15 16:04     ` David Woodhouse
2025-01-10 10:02 ` [PATCH v2 0/2] xen: error handling and FreeBSD compatibility fixes David Woodhouse
2025-01-10 10:03   ` [PATCH 1/4] hw/xen: Use xs_node_read() from xs_node_vscanf() David Woodhouse
2025-01-10 10:03     ` [PATCH 2/4] hw/xen: Use xs_node_read() from xen_console_get_name() David Woodhouse
2025-01-15 14:56       ` Anthony PERARD
2025-01-10 10:03     ` David Woodhouse [this message]
2025-01-15 14:59       ` [PATCH 3/4] hw/xen: Use xs_node_read() from xen_netdev_get_name() Anthony PERARD
2025-01-10 10:03     ` [PATCH 4/4] hw/xen: Use xs_node_read() from xenstore_read_str() instead of open-coding it David Woodhouse
2025-01-15 15:05       ` Anthony PERARD
2025-01-15 14:56     ` [PATCH 1/4] hw/xen: Use xs_node_read() from xs_node_vscanf() Anthony PERARD
2025-01-15 14:34   ` [PATCH v2 0/2] xen: error handling and FreeBSD compatibility fixes Roger Pau Monné
2025-01-15 14:36     ` David Woodhouse

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=20250110100326.527101-3-dwmw2@infradead.org \
    --to=dwmw2@infradead.org \
    --cc=anthony@xenproject.org \
    --cc=edgar.iglesias@gmail.com \
    --cc=hreitz@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=paul@xen.org \
    --cc=pbonzini@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=roger.pau@citrix.com \
    --cc=sstabellini@kernel.org \
    --cc=xen-devel@lists.xenproject.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).