When -net nic fails, it first reports a specific error, then a generic one, like this:
$ qemu-system-x86_64 -net nic,netdev=nonexistant qemu-system-x86_64: -net nic,netdev=nonexistant: netdev 'nonexistant' not found qemu-system-x86_64: -net nic,netdev=nonexistant: Device 'nic' could not be initialized Convert net_init_nic() to Error to get rid of the unwanted second error message. Signed-off-by: Markus Armbruster <arm...@redhat.com> --- net/net.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/net/net.c b/net/net.c index 5808c58..70ec33a 100644 --- a/net/net.c +++ b/net/net.c @@ -735,7 +735,6 @@ int qemu_find_nic_model(NICInfo *nd, const char * const *models, static int net_init_nic(const NetClientOptions *opts, const char *name, NetClientState *peer, Error **errp) { - /* FIXME error_setg(errp, ...) on failure */ int idx; NICInfo *nd; const NetLegacyNicOptions *nic; @@ -745,7 +744,7 @@ static int net_init_nic(const NetClientOptions *opts, const char *name, idx = nic_get_free_idx(); if (idx == -1 || nb_nics >= MAX_NICS) { - error_report("Too Many NICs"); + error_setg(errp, "Too Many NICs"); return -1; } @@ -756,7 +755,7 @@ static int net_init_nic(const NetClientOptions *opts, const char *name, if (nic->has_netdev) { nd->netdev = qemu_find_netdev(nic->netdev); if (!nd->netdev) { - error_report("netdev '%s' not found", nic->netdev); + error_setg(errp, "netdev '%s' not found", nic->netdev); return -1; } } else { @@ -773,19 +772,20 @@ static int net_init_nic(const NetClientOptions *opts, const char *name, if (nic->has_macaddr && net_parse_macaddr(nd->macaddr.a, nic->macaddr) < 0) { - error_report("invalid syntax for ethernet address"); + error_setg(errp, "invalid syntax for ethernet address"); return -1; } if (nic->has_macaddr && is_multicast_ether_addr(nd->macaddr.a)) { - error_report("NIC cannot have multicast MAC address (odd 1st byte)"); + error_setg(errp, + "NIC cannot have multicast MAC address (odd 1st byte)"); return -1; } qemu_macaddr_default_if_unset(&nd->macaddr); if (nic->has_vectors) { if (nic->vectors > 0x7ffffff) { - error_report("invalid # of vectors: %"PRIu32, nic->vectors); + error_setg(errp, "invalid # of vectors: %"PRIu32, nic->vectors); return -1; } nd->nvectors = nic->vectors; -- 1.9.3