From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460823096173.03486013535303; Wed, 6 Feb 2019 05:47:03 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id E18BC89AD8; Wed, 6 Feb 2019 13:47:00 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 94718100194A; Wed, 6 Feb 2019 13:47:00 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 21D153D39D; Wed, 6 Feb 2019 13:47:00 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dkw2k005070 for ; Wed, 6 Feb 2019 08:46:58 -0500 Received: by smtp.corp.redhat.com (Postfix) id D55C957B6; Wed, 6 Feb 2019 13:46:58 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 59007165EF for ; Wed, 6 Feb 2019 13:46:58 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:47 +0100 Message-Id: <20190206134655.10457-2-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 1/9] qemu: Remove redundant condition X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Wed, 06 Feb 2019 13:47:01 +0000 (UTC) Content-Type: text/plain; charset="utf-8" No need to check whether we're dealing with a pSeries guest twice within just a few lines. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_capabilities.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 81ef0357e7..7ccfcd054d 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5224,8 +5224,10 @@ virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCapsPtr q= emuCaps, VIR_DOMAIN_DISK_DEVICE_LUN); =20 /* PowerPC pseries based VMs do not support floppy device */ - if (!qemuDomainMachineIsPSeries(machine, qemuCaps->arch)) + if (!qemuDomainMachineIsPSeries(machine, qemuCaps->arch)) { VIR_DOMAIN_CAPS_ENUM_SET(disk->diskDevice, VIR_DOMAIN_DISK_DEVICE_= FLOPPY); + VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_FDC); + } =20 if (qemuDomainMachineHasBuiltinIDE(machine)) VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_IDE); @@ -5235,10 +5237,6 @@ virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCapsPtr q= emuCaps, VIR_DOMAIN_DISK_BUS_VIRTIO, /* VIR_DOMAIN_DISK_BUS_SD */); =20 - /* PowerPC pseries based VMs do not support floppy device */ - if (!qemuDomainMachineIsPSeries(machine, qemuCaps->arch)) - VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_FDC); - if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_USB_STORAGE)) VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_USB); =20 --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460827560144.32644303401855; Wed, 6 Feb 2019 05:47:07 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 43A21C08E282; Wed, 6 Feb 2019 13:47:05 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 6AB4D67611; Wed, 6 Feb 2019 13:47:04 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id F06671803399; Wed, 6 Feb 2019 13:47:03 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dkx05005085 for ; Wed, 6 Feb 2019 08:46:59 -0500 Received: by smtp.corp.redhat.com (Postfix) id B024F578C; Wed, 6 Feb 2019 13:46:59 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3091157A1 for ; Wed, 6 Feb 2019 13:46:59 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:48 +0100 Message-Id: <20190206134655.10457-3-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 2/9] qemu: Use more specific prefixes X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Wed, 06 Feb 2019 13:47:06 +0000 (UTC) Content-Type: text/plain; charset="utf-8" While the chances of the current checks resulting in false positives are basically zero, it's still nicer to check for the full prefix instead of the prefix's prefix. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_domain.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index b6c1a0e4e5..073f5cc86c 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -9880,7 +9880,7 @@ qemuDomainIsQ35(const virDomainDef *def) bool qemuDomainMachineIsQ35(const char *machine) { - return (STRPREFIX(machine, "pc-q35") || + return (STRPREFIX(machine, "pc-q35-") || STREQ(machine, "q35")); } =20 @@ -9898,7 +9898,7 @@ qemuDomainMachineIsI440FX(const char *machine) return (STREQ(machine, "pc") || STRPREFIX(machine, "pc-0.") || STRPREFIX(machine, "pc-1.") || - STRPREFIX(machine, "pc-i440") || + STRPREFIX(machine, "pc-i440fx-") || STRPREFIX(machine, "rhel")); } =20 --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460829924892.1029820907206; Wed, 6 Feb 2019 05:47:09 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id EBCA758E3E; Wed, 6 Feb 2019 13:47:06 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 4821E5798F; Wed, 6 Feb 2019 13:47:06 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id C7CF918033A3; Wed, 6 Feb 2019 13:47:05 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dl0rm005100 for ; Wed, 6 Feb 2019 08:47:00 -0500 Received: by smtp.corp.redhat.com (Postfix) id ABC0757AA; Wed, 6 Feb 2019 13:47:00 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 091B9578C for ; Wed, 6 Feb 2019 13:46:59 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:49 +0100 Message-Id: <20190206134655.10457-4-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 3/9] qemu: Move functions around X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Wed, 06 Feb 2019 13:47:08 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Make sure related functions, eg. all qemuDomainIs*(), are close together instead of being sprinkled throughout both the header and implementation file, and also that all qemuDomainMachine*() functions are declared first since we're going to make a bunch of them static later on. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_domain.c | 148 ++++++++++++++++++++--------------------- src/qemu/qemu_domain.h | 24 +++---- 2 files changed, 86 insertions(+), 86 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 073f5cc86c..bae49e97a4 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -9870,13 +9870,6 @@ qemuFindAgentConfig(virDomainDefPtr def) } =20 =20 -bool -qemuDomainIsQ35(const virDomainDef *def) -{ - return qemuDomainMachineIsQ35(def->os.machine); -} - - bool qemuDomainMachineIsQ35(const char *machine) { @@ -9885,13 +9878,6 @@ qemuDomainMachineIsQ35(const char *machine) } =20 =20 -bool -qemuDomainIsI440FX(const virDomainDef *def) -{ - return qemuDomainMachineIsI440FX(def->os.machine); -} - - bool qemuDomainMachineIsI440FX(const char *machine) { @@ -9904,14 +9890,23 @@ qemuDomainMachineIsI440FX(const char *machine) =20 =20 bool -qemuDomainHasPCIRoot(const virDomainDef *def) +qemuDomainMachineIsS390CCW(const char *machine) { - int root =3D virDomainControllerFind(def, VIR_DOMAIN_CONTROLLER_TYPE_P= CI, 0); + return STRPREFIX(machine, "s390-ccw"); +} =20 - if (root < 0) + +bool +qemuDomainMachineIsARMVirt(const char *machine, + const virArch arch) +{ + if (arch !=3D VIR_ARCH_ARMV6L && + arch !=3D VIR_ARCH_ARMV7L && + arch !=3D VIR_ARCH_AARCH64) return false; =20 - if (def->controllers[root]->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_PCI= _ROOT) + if (STRNEQ(machine, "virt") && + !STRPREFIX(machine, "virt-")) return false; =20 return true; @@ -9919,14 +9914,29 @@ qemuDomainHasPCIRoot(const virDomainDef *def) =20 =20 bool -qemuDomainHasPCIeRoot(const virDomainDef *def) +qemuDomainMachineIsRISCVVirt(const char *machine, + const virArch arch) { - int root =3D virDomainControllerFind(def, VIR_DOMAIN_CONTROLLER_TYPE_P= CI, 0); + if (!ARCH_IS_RISCV(arch)) + return false; =20 - if (root < 0) + if (STRNEQ(machine, "virt") && + !STRPREFIX(machine, "virt-")) return false; =20 - if (def->controllers[root]->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_PCI= E_ROOT) + return true; +} + + +bool +qemuDomainMachineIsPSeries(const char *machine, + const virArch arch) +{ + if (!ARCH_IS_PPC64(arch)) + return false; + + if (STRNEQ(machine, "pseries") && + !STRPREFIX(machine, "pseries-")) return false; =20 return true; @@ -9934,9 +9944,12 @@ qemuDomainHasPCIeRoot(const virDomainDef *def) =20 =20 bool -qemuDomainNeedsFDC(const virDomainDef *def) +qemuDomainMachineHasBuiltinIDE(const char *machine) { - return qemuDomainMachineNeedsFDC(def->os.machine); + return qemuDomainMachineIsI440FX(machine) || + STREQ(machine, "malta") || + STREQ(machine, "sun4u") || + STREQ(machine, "g3beige"); } =20 =20 @@ -9959,40 +9972,30 @@ qemuDomainMachineNeedsFDC(const char *machine) =20 =20 bool -qemuDomainIsS390CCW(const virDomainDef *def) +qemuDomainIsQ35(const virDomainDef *def) { - return qemuDomainMachineIsS390CCW(def->os.machine); + return qemuDomainMachineIsQ35(def->os.machine); } =20 =20 bool -qemuDomainMachineIsS390CCW(const char *machine) +qemuDomainIsI440FX(const virDomainDef *def) { - return STRPREFIX(machine, "s390-ccw"); + return qemuDomainMachineIsI440FX(def->os.machine); } =20 =20 bool -qemuDomainIsARMVirt(const virDomainDef *def) +qemuDomainIsS390CCW(const virDomainDef *def) { - return qemuDomainMachineIsARMVirt(def->os.machine, def->os.arch); + return qemuDomainMachineIsS390CCW(def->os.machine); } =20 =20 bool -qemuDomainMachineIsARMVirt(const char *machine, - const virArch arch) +qemuDomainIsARMVirt(const virDomainDef *def) { - if (arch !=3D VIR_ARCH_ARMV6L && - arch !=3D VIR_ARCH_ARMV7L && - arch !=3D VIR_ARCH_AARCH64) - return false; - - if (STRNEQ(machine, "virt") && - !STRPREFIX(machine, "virt-")) - return false; - - return true; + return qemuDomainMachineIsARMVirt(def->os.machine, def->os.arch); } =20 =20 @@ -10004,14 +10007,21 @@ qemuDomainIsRISCVVirt(const virDomainDef *def) =20 =20 bool -qemuDomainMachineIsRISCVVirt(const char *machine, - const virArch arch) +qemuDomainIsPSeries(const virDomainDef *def) { - if (!ARCH_IS_RISCV(arch)) + return qemuDomainMachineIsPSeries(def->os.machine, def->os.arch); +} + + +bool +qemuDomainHasPCIRoot(const virDomainDef *def) +{ + int root =3D virDomainControllerFind(def, VIR_DOMAIN_CONTROLLER_TYPE_P= CI, 0); + + if (root < 0) return false; =20 - if (STRNEQ(machine, "virt") && - !STRPREFIX(machine, "virt-")) + if (def->controllers[root]->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_PCI= _ROOT) return false; =20 return true; @@ -10019,24 +10029,31 @@ qemuDomainMachineIsRISCVVirt(const char *machine, =20 =20 bool -qemuDomainIsPSeries(const virDomainDef *def) +qemuDomainHasPCIeRoot(const virDomainDef *def) { - return qemuDomainMachineIsPSeries(def->os.machine, def->os.arch); + int root =3D virDomainControllerFind(def, VIR_DOMAIN_CONTROLLER_TYPE_P= CI, 0); + + if (root < 0) + return false; + + if (def->controllers[root]->model !=3D VIR_DOMAIN_CONTROLLER_MODEL_PCI= E_ROOT) + return false; + + return true; } =20 =20 bool -qemuDomainMachineIsPSeries(const char *machine, - const virArch arch) +qemuDomainHasBuiltinIDE(const virDomainDef *def) { - if (!ARCH_IS_PPC64(arch)) - return false; + return qemuDomainMachineHasBuiltinIDE(def->os.machine); +} =20 - if (STRNEQ(machine, "pseries") && - !STRPREFIX(machine, "pseries-")) - return false; =20 - return true; +bool +qemuDomainNeedsFDC(const virDomainDef *def) +{ + return qemuDomainMachineNeedsFDC(def->os.machine); } =20 =20 @@ -10234,23 +10251,6 @@ qemuDomainDefValidateMemoryHotplug(const virDomain= Def *def, } =20 =20 -bool -qemuDomainHasBuiltinIDE(const virDomainDef *def) -{ - return qemuDomainMachineHasBuiltinIDE(def->os.machine); -} - - -bool -qemuDomainMachineHasBuiltinIDE(const char *machine) -{ - return qemuDomainMachineIsI440FX(machine) || - STREQ(machine, "malta") || - STREQ(machine, "sun4u") || - STREQ(machine, "g3beige"); -} - - /** * qemuDomainUpdateCurrentMemorySize: * diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index fe474170dc..0bd4408f12 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -828,20 +828,8 @@ void qemuDomainMemoryDeviceAlignSize(virDomainDefPtr d= ef, =20 virDomainChrDefPtr qemuFindAgentConfig(virDomainDefPtr def); =20 -bool qemuDomainIsQ35(const virDomainDef *def); -bool qemuDomainIsI440FX(const virDomainDef *def); -bool qemuDomainHasPCIRoot(const virDomainDef *def); -bool qemuDomainHasPCIeRoot(const virDomainDef *def); -bool qemuDomainNeedsFDC(const virDomainDef *def); -bool qemuDomainIsS390CCW(const virDomainDef *def); -bool qemuDomainIsARMVirt(const virDomainDef *def); -bool qemuDomainIsRISCVVirt(const virDomainDef *def); -bool qemuDomainIsPSeries(const virDomainDef *def); -bool qemuDomainHasBuiltinIDE(const virDomainDef *def); - bool qemuDomainMachineIsQ35(const char *machine); bool qemuDomainMachineIsI440FX(const char *machine); -bool qemuDomainMachineNeedsFDC(const char *machine); bool qemuDomainMachineIsS390CCW(const char *machine); bool qemuDomainMachineIsARMVirt(const char *machine, const virArch arch); @@ -850,6 +838,18 @@ bool qemuDomainMachineIsRISCVVirt(const char *machine, bool qemuDomainMachineIsPSeries(const char *machine, const virArch arch); bool qemuDomainMachineHasBuiltinIDE(const char *machine); +bool qemuDomainMachineNeedsFDC(const char *machine); + +bool qemuDomainIsQ35(const virDomainDef *def); +bool qemuDomainIsI440FX(const virDomainDef *def); +bool qemuDomainIsS390CCW(const virDomainDef *def); +bool qemuDomainIsARMVirt(const virDomainDef *def); +bool qemuDomainIsRISCVVirt(const virDomainDef *def); +bool qemuDomainIsPSeries(const virDomainDef *def); +bool qemuDomainHasPCIRoot(const virDomainDef *def); +bool qemuDomainHasPCIeRoot(const virDomainDef *def); +bool qemuDomainHasBuiltinIDE(const virDomainDef *def); +bool qemuDomainNeedsFDC(const virDomainDef *def); =20 int qemuDomainUpdateCurrentMemorySize(virQEMUDriverPtr driver, virDomainObjPtr vm); --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460835350646.4764775127857; Wed, 6 Feb 2019 05:47:15 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 205025A1EB; Wed, 6 Feb 2019 13:47:13 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id D94566426E; Wed, 6 Feb 2019 13:47:12 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 6EF94180BAAC; Wed, 6 Feb 2019 13:47:12 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dl1Ll005118 for ; Wed, 6 Feb 2019 08:47:01 -0500 Received: by smtp.corp.redhat.com (Postfix) id 82C24165D9; Wed, 6 Feb 2019 13:47:01 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 06F9A57B6 for ; Wed, 6 Feb 2019 13:47:00 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:50 +0100 Message-Id: <20190206134655.10457-5-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 4/9] qemu: Add arch parameter to qemuDomainMachine*() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Wed, 06 Feb 2019 13:47:14 +0000 (UTC) Content-Type: text/plain; charset="utf-8" We want the signatures to be consistent, and also we're going to start using the additional parameter next. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_capabilities.c | 2 +- src/qemu/qemu_domain.c | 27 ++++++++++++++++----------- src/qemu/qemu_domain.h | 15 ++++++++++----- 3 files changed, 27 insertions(+), 17 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 7ccfcd054d..496fa94375 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5229,7 +5229,7 @@ virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCapsPtr qe= muCaps, VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_FDC); } =20 - if (qemuDomainMachineHasBuiltinIDE(machine)) + if (qemuDomainMachineHasBuiltinIDE(machine, qemuCaps->arch)) VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, VIR_DOMAIN_DISK_BUS_IDE); =20 VIR_DOMAIN_CAPS_ENUM_SET(disk->bus, diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index bae49e97a4..41996583fc 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -9871,7 +9871,8 @@ qemuFindAgentConfig(virDomainDefPtr def) =20 =20 bool -qemuDomainMachineIsQ35(const char *machine) +qemuDomainMachineIsQ35(const char *machine, + const virArch arch ATTRIBUTE_UNUSED) { return (STRPREFIX(machine, "pc-q35-") || STREQ(machine, "q35")); @@ -9879,7 +9880,8 @@ qemuDomainMachineIsQ35(const char *machine) =20 =20 bool -qemuDomainMachineIsI440FX(const char *machine) +qemuDomainMachineIsI440FX(const char *machine, + const virArch arch ATTRIBUTE_UNUSED) { return (STREQ(machine, "pc") || STRPREFIX(machine, "pc-0.") || @@ -9890,7 +9892,8 @@ qemuDomainMachineIsI440FX(const char *machine) =20 =20 bool -qemuDomainMachineIsS390CCW(const char *machine) +qemuDomainMachineIsS390CCW(const char *machine, + const virArch arch ATTRIBUTE_UNUSED) { return STRPREFIX(machine, "s390-ccw"); } @@ -9944,9 +9947,10 @@ qemuDomainMachineIsPSeries(const char *machine, =20 =20 bool -qemuDomainMachineHasBuiltinIDE(const char *machine) +qemuDomainMachineHasBuiltinIDE(const char *machine, + const virArch arch) { - return qemuDomainMachineIsI440FX(machine) || + return qemuDomainMachineIsI440FX(machine, arch) || STREQ(machine, "malta") || STREQ(machine, "sun4u") || STREQ(machine, "g3beige"); @@ -9954,7 +9958,8 @@ qemuDomainMachineHasBuiltinIDE(const char *machine) =20 =20 bool -qemuDomainMachineNeedsFDC(const char *machine) +qemuDomainMachineNeedsFDC(const char *machine, + const virArch arch ATTRIBUTE_UNUSED) { const char *p =3D STRSKIP(machine, "pc-q35-"); =20 @@ -9974,21 +9979,21 @@ qemuDomainMachineNeedsFDC(const char *machine) bool qemuDomainIsQ35(const virDomainDef *def) { - return qemuDomainMachineIsQ35(def->os.machine); + return qemuDomainMachineIsQ35(def->os.machine, def->os.arch); } =20 =20 bool qemuDomainIsI440FX(const virDomainDef *def) { - return qemuDomainMachineIsI440FX(def->os.machine); + return qemuDomainMachineIsI440FX(def->os.machine, def->os.arch); } =20 =20 bool qemuDomainIsS390CCW(const virDomainDef *def) { - return qemuDomainMachineIsS390CCW(def->os.machine); + return qemuDomainMachineIsS390CCW(def->os.machine, def->os.arch); } =20 =20 @@ -10046,14 +10051,14 @@ qemuDomainHasPCIeRoot(const virDomainDef *def) bool qemuDomainHasBuiltinIDE(const virDomainDef *def) { - return qemuDomainMachineHasBuiltinIDE(def->os.machine); + return qemuDomainMachineHasBuiltinIDE(def->os.machine, def->os.arch); } =20 =20 bool qemuDomainNeedsFDC(const virDomainDef *def) { - return qemuDomainMachineNeedsFDC(def->os.machine); + return qemuDomainMachineNeedsFDC(def->os.machine, def->os.arch); } =20 =20 diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index 0bd4408f12..e98999a026 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -828,17 +828,22 @@ void qemuDomainMemoryDeviceAlignSize(virDomainDefPtr = def, =20 virDomainChrDefPtr qemuFindAgentConfig(virDomainDefPtr def); =20 -bool qemuDomainMachineIsQ35(const char *machine); -bool qemuDomainMachineIsI440FX(const char *machine); -bool qemuDomainMachineIsS390CCW(const char *machine); +bool qemuDomainMachineIsQ35(const char *machine, + const virArch arch); +bool qemuDomainMachineIsI440FX(const char *machine, + const virArch arch); +bool qemuDomainMachineIsS390CCW(const char *machine, + const virArch arch); bool qemuDomainMachineIsARMVirt(const char *machine, const virArch arch); bool qemuDomainMachineIsRISCVVirt(const char *machine, const virArch arch); bool qemuDomainMachineIsPSeries(const char *machine, const virArch arch); -bool qemuDomainMachineHasBuiltinIDE(const char *machine); -bool qemuDomainMachineNeedsFDC(const char *machine); +bool qemuDomainMachineHasBuiltinIDE(const char *machine, + const virArch arch); +bool qemuDomainMachineNeedsFDC(const char *machine, + const virArch arch); =20 bool qemuDomainIsQ35(const virDomainDef *def); bool qemuDomainIsI440FX(const virDomainDef *def); --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460841799604.4041052552392; Wed, 6 Feb 2019 05:47:21 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A976336887; Wed, 6 Feb 2019 13:47:19 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2A3E95DD74; Wed, 6 Feb 2019 13:47:19 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id A43C03D39F; Wed, 6 Feb 2019 13:47:18 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dl2HC005135 for ; Wed, 6 Feb 2019 08:47:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id 5D49E57B9; Wed, 6 Feb 2019 13:47:02 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id D481B58A8 for ; Wed, 6 Feb 2019 13:47:01 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:51 +0100 Message-Id: <20190206134655.10457-6-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 5/9] qemu: Add arch checks to qemuDomainMachine*() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.30]); Wed, 06 Feb 2019 13:47:20 +0000 (UTC) Content-Type: text/plain; charset="utf-8" There is very little overlap in the machine types available on different architectures, so broadly speaking checking the machine type is usually enough; regardless, it's better to check the architecture as well. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_domain.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 41996583fc..5feb743ad1 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -9872,8 +9872,11 @@ qemuFindAgentConfig(virDomainDefPtr def) =20 bool qemuDomainMachineIsQ35(const char *machine, - const virArch arch ATTRIBUTE_UNUSED) + const virArch arch) { + if (!ARCH_IS_X86(arch)) + return false; + return (STRPREFIX(machine, "pc-q35-") || STREQ(machine, "q35")); } @@ -9881,8 +9884,11 @@ qemuDomainMachineIsQ35(const char *machine, =20 bool qemuDomainMachineIsI440FX(const char *machine, - const virArch arch ATTRIBUTE_UNUSED) + const virArch arch) { + if (!ARCH_IS_X86(arch)) + return false; + return (STREQ(machine, "pc") || STRPREFIX(machine, "pc-0.") || STRPREFIX(machine, "pc-1.") || @@ -9893,8 +9899,11 @@ qemuDomainMachineIsI440FX(const char *machine, =20 bool qemuDomainMachineIsS390CCW(const char *machine, - const virArch arch ATTRIBUTE_UNUSED) + const virArch arch) { + if (!ARCH_IS_S390(arch)) + return false; + return STRPREFIX(machine, "s390-ccw"); } =20 @@ -9959,10 +9968,13 @@ qemuDomainMachineHasBuiltinIDE(const char *machine, =20 bool qemuDomainMachineNeedsFDC(const char *machine, - const virArch arch ATTRIBUTE_UNUSED) + const virArch arch) { const char *p =3D STRSKIP(machine, "pc-q35-"); =20 + if (!ARCH_IS_X86(arch)) + return false; + if (p) { if (STRPREFIX(p, "1.") || STREQ(p, "2.0") || --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 154946083431092.0714276007593; Wed, 6 Feb 2019 05:47:14 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 6A9DAE6A65; Wed, 6 Feb 2019 13:47:11 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 608EF69180; Wed, 6 Feb 2019 13:47:10 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id BFE163D39D; Wed, 6 Feb 2019 13:47:09 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dl39K005143 for ; Wed, 6 Feb 2019 08:47:03 -0500 Received: by smtp.corp.redhat.com (Postfix) id 3509557BB; Wed, 6 Feb 2019 13:47:03 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id AC36D57A1 for ; Wed, 6 Feb 2019 13:47:02 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:52 +0100 Message-Id: <20190206134655.10457-7-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 6/9] qemu: Remove useless ARCH_IS_X86() call X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Wed, 06 Feb 2019 13:47:13 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Now that we have added architecture checks to all qemuDomainIs*() functions, we no longer need to perform the same checks separately. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_domain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 5feb743ad1..5820a4b515 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -7775,7 +7775,7 @@ qemuDomainDefFormatBufInternal(virQEMUDriverPtr drive= r, * because other architectures and machine types were introduced * when libvirt already supported . */ - if (ARCH_IS_X86(def->os.arch) && qemuDomainIsI440FX(def) && + if (qemuDomainIsI440FX(def) && usb && usb->idx =3D=3D 0 && (usb->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_USB_DEFAULT || usb->model =3D=3D VIR_DOMAIN_CONTROLLER_MODEL_USB_PIIX3_UHCI)= && --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460849685742.1595587926138; Wed, 6 Feb 2019 05:47:29 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B38CA3C2CD0; Wed, 6 Feb 2019 13:47:26 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 6F02757B6; Wed, 6 Feb 2019 13:47:26 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id CA92218033EC; Wed, 6 Feb 2019 13:47:25 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dl4Y5005159 for ; Wed, 6 Feb 2019 08:47:04 -0500 Received: by smtp.corp.redhat.com (Postfix) id 1BBB357BB; Wed, 6 Feb 2019 13:47:04 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 82196578C for ; Wed, 6 Feb 2019 13:47:03 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:53 +0100 Message-Id: <20190206134655.10457-8-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 7/9] qemu: Make most qemuDomainMachine*() functions static X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Wed, 06 Feb 2019 13:47:28 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Ideally we'd make all of them static, but there are a few cases where we don't have a virDomainDef instance handy and so they are the only option. For the few ones we're forced to keep exporting, document through comments that the alternative is preferred. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_domain.c | 16 +++++++++++----- src/qemu/qemu_domain.h | 12 ++---------- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 5820a4b515..8db02f7738 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -9870,7 +9870,7 @@ qemuFindAgentConfig(virDomainDefPtr def) } =20 =20 -bool +static bool qemuDomainMachineIsQ35(const char *machine, const virArch arch) { @@ -9882,7 +9882,7 @@ qemuDomainMachineIsQ35(const char *machine, } =20 =20 -bool +static bool qemuDomainMachineIsI440FX(const char *machine, const virArch arch) { @@ -9897,7 +9897,7 @@ qemuDomainMachineIsI440FX(const char *machine, } =20 =20 -bool +static bool qemuDomainMachineIsS390CCW(const char *machine, const virArch arch) { @@ -9908,6 +9908,8 @@ qemuDomainMachineIsS390CCW(const char *machine, } =20 =20 +/* You should normally avoid this function and use + * qemuDomainIsARMVirt() instead. */ bool qemuDomainMachineIsARMVirt(const char *machine, const virArch arch) @@ -9925,7 +9927,7 @@ qemuDomainMachineIsARMVirt(const char *machine, } =20 =20 -bool +static bool qemuDomainMachineIsRISCVVirt(const char *machine, const virArch arch) { @@ -9940,6 +9942,8 @@ qemuDomainMachineIsRISCVVirt(const char *machine, } =20 =20 +/* You should normally avoid this function and use + * qemuDomainIsPSeries() instead. */ bool qemuDomainMachineIsPSeries(const char *machine, const virArch arch) @@ -9955,6 +9959,8 @@ qemuDomainMachineIsPSeries(const char *machine, } =20 =20 +/* You should normally avoid this function and use + * qemuDomainHasBuiltinIDE() instead. */ bool qemuDomainMachineHasBuiltinIDE(const char *machine, const virArch arch) @@ -9966,7 +9972,7 @@ qemuDomainMachineHasBuiltinIDE(const char *machine, } =20 =20 -bool +static bool qemuDomainMachineNeedsFDC(const char *machine, const virArch arch) { diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index e98999a026..89f45aeb2c 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -828,22 +828,14 @@ void qemuDomainMemoryDeviceAlignSize(virDomainDefPtr = def, =20 virDomainChrDefPtr qemuFindAgentConfig(virDomainDefPtr def); =20 -bool qemuDomainMachineIsQ35(const char *machine, - const virArch arch); -bool qemuDomainMachineIsI440FX(const char *machine, - const virArch arch); -bool qemuDomainMachineIsS390CCW(const char *machine, - const virArch arch); +/* You should normally avoid these functions and use the variant that + * doesn't have "Machine" in the name instead. */ bool qemuDomainMachineIsARMVirt(const char *machine, const virArch arch); -bool qemuDomainMachineIsRISCVVirt(const char *machine, - const virArch arch); bool qemuDomainMachineIsPSeries(const char *machine, const virArch arch); bool qemuDomainMachineHasBuiltinIDE(const char *machine, const virArch arch); -bool qemuDomainMachineNeedsFDC(const char *machine, - const virArch arch); =20 bool qemuDomainIsQ35(const virDomainDef *def); bool qemuDomainIsI440FX(const virDomainDef *def); --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460857260614.2598577602844; Wed, 6 Feb 2019 05:47:37 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 36AF6C058CA8; Wed, 6 Feb 2019 13:47:35 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BE5A5660B5; Wed, 6 Feb 2019 13:47:34 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 4EFC83D39F; Wed, 6 Feb 2019 13:47:34 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dl4bA005179 for ; Wed, 6 Feb 2019 08:47:05 -0500 Received: by smtp.corp.redhat.com (Postfix) id E886957A1; Wed, 6 Feb 2019 13:47:04 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 6AF33578C for ; Wed, 6 Feb 2019 13:47:04 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:54 +0100 Message-Id: <20190206134655.10457-9-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 8/9] qemu: Move qemuDomainSupportsPCI() to qemu_domain X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Wed, 06 Feb 2019 13:47:36 +0000 (UTC) Content-Type: text/plain; charset="utf-8" The function operates on a virDomainDef and is not tied to device address assignment in any way, so it makes more sense for it to live along with qemuDomainIs*() and the like. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_domain.c | 22 ++++++++++++++++++++++ src/qemu/qemu_domain.h | 2 ++ src/qemu/qemu_domain_address.c | 22 ---------------------- 3 files changed, 24 insertions(+), 22 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 8db02f7738..f222f78654 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -10080,6 +10080,28 @@ qemuDomainNeedsFDC(const virDomainDef *def) } =20 =20 +bool +qemuDomainSupportsPCI(virDomainDefPtr def, + virQEMUCapsPtr qemuCaps) +{ + if ((def->os.arch !=3D VIR_ARCH_ARMV6L) && + (def->os.arch !=3D VIR_ARCH_ARMV7L) && + (def->os.arch !=3D VIR_ARCH_AARCH64) && + !ARCH_IS_RISCV(def->os.arch)) + return true; + + if (STREQ(def->os.machine, "versatilepb")) + return true; + + if ((qemuDomainIsARMVirt(def) || + qemuDomainIsRISCVVirt(def)) && + virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_GPEX)) + return true; + + return false; +} + + static bool qemuCheckMemoryDimmConflict(const virDomainDef *def, const virDomainMemoryDef *mem) diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index 89f45aeb2c..f6b124e8fd 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -847,6 +847,8 @@ bool qemuDomainHasPCIRoot(const virDomainDef *def); bool qemuDomainHasPCIeRoot(const virDomainDef *def); bool qemuDomainHasBuiltinIDE(const virDomainDef *def); bool qemuDomainNeedsFDC(const virDomainDef *def); +bool qemuDomainSupportsPCI(virDomainDefPtr def, + virQEMUCapsPtr qemuCaps); =20 int qemuDomainUpdateCurrentMemorySize(virQEMUDriverPtr driver, virDomainObjPtr vm); diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index c35ecd8585..32fdd59566 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -2356,28 +2356,6 @@ qemuDomainAssignDevicePCISlots(virDomainDefPtr def, } =20 =20 -static bool -qemuDomainSupportsPCI(virDomainDefPtr def, - virQEMUCapsPtr qemuCaps) -{ - if ((def->os.arch !=3D VIR_ARCH_ARMV6L) && - (def->os.arch !=3D VIR_ARCH_ARMV7L) && - (def->os.arch !=3D VIR_ARCH_AARCH64) && - !ARCH_IS_RISCV(def->os.arch)) - return true; - - if (STREQ(def->os.machine, "versatilepb")) - return true; - - if ((qemuDomainIsARMVirt(def) || - qemuDomainIsRISCVVirt(def)) && - virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_GPEX)) - return true; - - return false; -} - - static void qemuDomainPCIControllerSetDefaultModelName(virDomainControllerDefPtr cont, virDomainDefPtr def, --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list From nobody Fri Apr 19 19:02:56 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1549460864244623.3258967978485; Wed, 6 Feb 2019 05:47:44 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 1E2A33E2A4; Wed, 6 Feb 2019 13:47:42 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id A411610021B1; Wed, 6 Feb 2019 13:47:41 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 21BF218033A5; Wed, 6 Feb 2019 13:47:41 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x16Dl6Je005322 for ; Wed, 6 Feb 2019 08:47:06 -0500 Received: by smtp.corp.redhat.com (Postfix) id CEE7227065; Wed, 6 Feb 2019 13:47:05 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.212]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 45BF557AB for ; Wed, 6 Feb 2019 13:47:05 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 6 Feb 2019 14:46:55 +0100 Message-Id: <20190206134655.10457-10-abologna@redhat.com> In-Reply-To: <20190206134655.10457-1-abologna@redhat.com> References: <20190206134655.10457-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 9/9] qemu: Unify style for qemuDomain*() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.30]); Wed, 06 Feb 2019 13:47:43 +0000 (UTC) Content-Type: text/plain; charset="utf-8" These functions do mostly the same things, and it would be preferrable if they did them in mostly the same ways. This also fixes a few violations to our code style guidelines. Signed-off-by: Andrea Bolognani --- src/qemu/qemu_domain.c | 89 +++++++++++++++++++++++++----------------- 1 file changed, 54 insertions(+), 35 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index f222f78654..eb4de1e6bd 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -9877,8 +9877,12 @@ qemuDomainMachineIsQ35(const char *machine, if (!ARCH_IS_X86(arch)) return false; =20 - return (STRPREFIX(machine, "pc-q35-") || - STREQ(machine, "q35")); + if (STREQ(machine, "q35") || + STRPREFIX(machine, "pc-q35-")) { + return true; + } + + return false; } =20 =20 @@ -9889,11 +9893,15 @@ qemuDomainMachineIsI440FX(const char *machine, if (!ARCH_IS_X86(arch)) return false; =20 - return (STREQ(machine, "pc") || - STRPREFIX(machine, "pc-0.") || - STRPREFIX(machine, "pc-1.") || - STRPREFIX(machine, "pc-i440fx-") || - STRPREFIX(machine, "rhel")); + if (STREQ(machine, "pc") || + STRPREFIX(machine, "pc-0.") || + STRPREFIX(machine, "pc-1.") || + STRPREFIX(machine, "pc-i440fx-") || + STRPREFIX(machine, "rhel")) { + return true; + } + + return false; } =20 =20 @@ -9904,7 +9912,10 @@ qemuDomainMachineIsS390CCW(const char *machine, if (!ARCH_IS_S390(arch)) return false; =20 - return STRPREFIX(machine, "s390-ccw"); + if (STRPREFIX(machine, "s390-ccw")) + return true; + + return false; } =20 =20 @@ -9916,14 +9927,16 @@ qemuDomainMachineIsARMVirt(const char *machine, { if (arch !=3D VIR_ARCH_ARMV6L && arch !=3D VIR_ARCH_ARMV7L && - arch !=3D VIR_ARCH_AARCH64) + arch !=3D VIR_ARCH_AARCH64) { return false; + } =20 - if (STRNEQ(machine, "virt") && - !STRPREFIX(machine, "virt-")) - return false; + if (STREQ(machine, "virt") || + STRPREFIX(machine, "virt-")) { + return true; + } =20 - return true; + return false; } =20 =20 @@ -9934,11 +9947,12 @@ qemuDomainMachineIsRISCVVirt(const char *machine, if (!ARCH_IS_RISCV(arch)) return false; =20 - if (STRNEQ(machine, "virt") && - !STRPREFIX(machine, "virt-")) - return false; + if (STREQ(machine, "virt") || + STRPREFIX(machine, "virt-")) { + return true; + } =20 - return true; + return false; } =20 =20 @@ -9951,11 +9965,12 @@ qemuDomainMachineIsPSeries(const char *machine, if (!ARCH_IS_PPC64(arch)) return false; =20 - if (STRNEQ(machine, "pseries") && - !STRPREFIX(machine, "pseries-")) - return false; + if (STREQ(machine, "pseries") || + STRPREFIX(machine, "pseries-")) { + return true; + } =20 - return true; + return false; } =20 =20 @@ -9981,16 +9996,18 @@ qemuDomainMachineNeedsFDC(const char *machine, if (!ARCH_IS_X86(arch)) return false; =20 - if (p) { - if (STRPREFIX(p, "1.") || - STREQ(p, "2.0") || - STREQ(p, "2.1") || - STREQ(p, "2.2") || - STREQ(p, "2.3")) - return false; - return true; + if (!p) + return false; + + if (STRPREFIX(p, "1.") || + STREQ(p, "2.0") || + STREQ(p, "2.1") || + STREQ(p, "2.2") || + STREQ(p, "2.3")) { + return false; } - return false; + + return true; } =20 =20 @@ -10084,19 +10101,21 @@ bool qemuDomainSupportsPCI(virDomainDefPtr def, virQEMUCapsPtr qemuCaps) { - if ((def->os.arch !=3D VIR_ARCH_ARMV6L) && - (def->os.arch !=3D VIR_ARCH_ARMV7L) && - (def->os.arch !=3D VIR_ARCH_AARCH64) && - !ARCH_IS_RISCV(def->os.arch)) + if (def->os.arch !=3D VIR_ARCH_ARMV6L && + def->os.arch !=3D VIR_ARCH_ARMV7L && + def->os.arch !=3D VIR_ARCH_AARCH64 && + !ARCH_IS_RISCV(def->os.arch)) { return true; + } =20 if (STREQ(def->os.machine, "versatilepb")) return true; =20 if ((qemuDomainIsARMVirt(def) || qemuDomainIsRISCVVirt(def)) && - virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_GPEX)) + virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_GPEX)) { return true; + } =20 return false; } --=20 2.20.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list