From b648d962894a52c444675f3c2022b97e97c246ae Mon Sep 17 00:00:00 2001 From: Pavel Mores Date: Mon, 25 Nov 2019 11:54:23 +0100 Subject: [PATCH] qemu: default video device type selection algoritm moved into its own function The default video device type selection algorithm we're about to deploy will increase the amount of code dedicated to the task by amount enough to warrant factoring the whole thing into its own function so as not to pollute the caller qemuDomainDeviceVideoDefPostParse(). Do it now so that the actual algorithm change later on is in a clean commit by itself and easy to review. Reviewed-by: Cole Robinson Signed-off-by: Pavel Mores --- src/qemu/qemu_domain.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 168e7464a9..4a6975e285 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -7880,20 +7880,26 @@ qemuDomainDeviceNetDefPostParse(virDomainNetDefPtr net, } +static int +qemuDomainDefaultVideoDevice(const virDomainDef *def) +{ + if (ARCH_IS_PPC64(def->os.arch)) + return VIR_DOMAIN_VIDEO_TYPE_VGA; + else if (qemuDomainIsARMVirt(def) || + qemuDomainIsRISCVVirt(def) || + ARCH_IS_S390(def->os.arch)) + return VIR_DOMAIN_VIDEO_TYPE_VIRTIO; + else + return VIR_DOMAIN_VIDEO_TYPE_CIRRUS; +} + + static int qemuDomainDeviceVideoDefPostParse(virDomainVideoDefPtr video, const virDomainDef *def) { - if (video->type == VIR_DOMAIN_VIDEO_TYPE_DEFAULT) { - if (ARCH_IS_PPC64(def->os.arch)) - video->type = VIR_DOMAIN_VIDEO_TYPE_VGA; - else if (qemuDomainIsARMVirt(def) || - qemuDomainIsRISCVVirt(def) || - ARCH_IS_S390(def->os.arch)) - video->type = VIR_DOMAIN_VIDEO_TYPE_VIRTIO; - else - video->type = VIR_DOMAIN_VIDEO_TYPE_CIRRUS; - } + if (video->type == VIR_DOMAIN_VIDEO_TYPE_DEFAULT) + video->type = qemuDomainDefaultVideoDevice(def); if (video->type == VIR_DOMAIN_VIDEO_TYPE_QXL && !video->vgamem) {