net/tap: net_init_tap_one(): add return value

Follow common recommendations in include/qapi/error.h of having
a return value together with errp. This allows to avoid error propagation.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
This commit is contained in:
Vladimir Sementsov-Ogievskiy
2026-03-18 14:31:32 +03:00
committed by Jason Wang
parent fb96c3e818
commit a44c32c1b9

View File

@@ -703,7 +703,7 @@ static int net_tap_init(const NetdevTapOptions *tap, int *vnet_hdr,
#define MAX_TAP_QUEUES 1024
static void net_init_tap_one(const NetdevTapOptions *tap, NetClientState *peer,
static bool net_init_tap_one(const NetdevTapOptions *tap, NetClientState *peer,
const char *model, const char *name,
const char *ifname, const char *script,
const char *downscript, const char *vhostfdname,
@@ -783,10 +783,11 @@ static void net_init_tap_one(const NetdevTapOptions *tap, NetClientState *peer,
}
}
return;
return true;
failed:
qemu_del_net_client(&s->nc);
return false;
}
static int get_fds(char *str, char *fds[], int max)
@@ -821,7 +822,6 @@ int net_init_tap(const Netdev *netdev, const char *name,
const NetdevTapOptions *tap;
int fd, vnet_hdr = 0, i = 0, queues;
/* for the no-fd, no-helper case */
Error *err = NULL;
const char *vhostfdname;
char ifname[128];
int ret = 0;
@@ -869,11 +869,9 @@ int net_init_tap(const Netdev *netdev, const char *name,
return -1;
}
net_init_tap_one(tap, peer, "tap", name, NULL,
NULL, NULL,
vhostfdname, vnet_hdr, fd, &err);
if (err) {
error_propagate(errp, err);
if (!net_init_tap_one(tap, peer, "tap", name, NULL,
NULL, NULL,
vhostfdname, vnet_hdr, fd, errp)) {
close(fd);
return -1;
}
@@ -930,12 +928,10 @@ int net_init_tap(const Netdev *netdev, const char *name,
goto free_fail;
}
net_init_tap_one(tap, peer, "tap", name, ifname,
NULL, NULL,
tap->vhostfds ? vhost_fds[i] : NULL,
vnet_hdr, fd, &err);
if (err) {
error_propagate(errp, err);
if (!net_init_tap_one(tap, peer, "tap", name, ifname,
NULL, NULL,
tap->vhostfds ? vhost_fds[i] : NULL,
vnet_hdr, fd, errp)) {
ret = -1;
goto free_fail;
}
@@ -975,11 +971,9 @@ free_fail:
return -1;
}
net_init_tap_one(tap, peer, "bridge", name, ifname,
NULL, NULL, vhostfdname,
vnet_hdr, fd, &err);
if (err) {
error_propagate(errp, err);
if (!net_init_tap_one(tap, peer, "bridge", name, ifname,
NULL, NULL, vhostfdname,
vnet_hdr, fd, errp)) {
close(fd);
return -1;
}
@@ -1015,12 +1009,10 @@ free_fail:
}
}
net_init_tap_one(tap, peer, "tap", name, ifname,
i >= 1 ? NULL : script,
i >= 1 ? NULL : downscript,
vhostfdname, vnet_hdr, fd, &err);
if (err) {
error_propagate(errp, err);
if (!net_init_tap_one(tap, peer, "tap", name, ifname,
i >= 1 ? NULL : script,
i >= 1 ? NULL : downscript,
vhostfdname, vnet_hdr, fd, errp)) {
close(fd);
return -1;
}