From: Andrea Bolognani Date: Fri, 19 Jan 2024 14:27:32 +0000 (+0100) Subject: qemu: Clean up qemuDomainDefaultNetModel() X-Git-Tag: v10.1.0-rc1~176 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d0087e65d8eb3e652d2f45268e0a1e333d701160;p=thirdparty%2Flibvirt.git qemu: Clean up qemuDomainDefaultNetModel() Group things together where it makes sense, avoid unnecessary uses of 'else if', plus other tweaks. Signed-off-by: Andrea Bolognani Reviewed-by: Peter Krempa --- diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index d56ac929ea..f62594e236 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -5396,12 +5396,14 @@ static int qemuDomainDefaultNetModel(const virDomainDef *def, virQEMUCaps *qemuCaps) { - if (ARCH_IS_S390(def->os.arch)) + /* When there are no backwards compatibility concerns getting in + * the way, virtio is a good default */ + if (ARCH_IS_S390(def->os.arch) || + qemuDomainIsRISCVVirt(def)) { return VIR_DOMAIN_NET_MODEL_VIRTIO; + } - if (def->os.arch == VIR_ARCH_ARMV6L || - def->os.arch == VIR_ARCH_ARMV7L || - def->os.arch == VIR_ARCH_AARCH64) { + if (ARCH_IS_ARM(def->os.arch)) { if (STREQ(def->os.machine, "versatilepb")) return VIR_DOMAIN_NET_MODEL_SMC91C111; @@ -5413,10 +5415,6 @@ qemuDomainDefaultNetModel(const virDomainDef *def, return VIR_DOMAIN_NET_MODEL_LAN9118; } - /* virtio is a sensible default for RISC-V virt guests */ - if (qemuDomainIsRISCVVirt(def)) - return VIR_DOMAIN_NET_MODEL_VIRTIO; - /* In all other cases the model depends on the capabilities. If they were * not provided don't report any default. */ if (!qemuCaps) @@ -5427,9 +5425,11 @@ qemuDomainDefaultNetModel(const virDomainDef *def, * system than the previous one */ if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_RTL8139)) return VIR_DOMAIN_NET_MODEL_RTL8139; - else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_E1000)) + + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_E1000)) return VIR_DOMAIN_NET_MODEL_E1000; - else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_VIRTIO_NET)) + + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_VIRTIO_NET)) return VIR_DOMAIN_NET_MODEL_VIRTIO; /* We've had no luck detecting support for any network device,