From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699888; cv=none; d=zohomail.com; s=zohoarc; b=eywguX9w43pi6t09fnHkUaKiD+qMBtB3q3RCzmIQFX4EUM9EMQvMHKMY4v9Q+0SeQO7YkkbdmO5654jT41rkLJMCsbA0d4EmcuhZpePIGhsbAPfVZlzl9xohCamhPVjExnJVbGLzvCWG4BMIxCL7loS+W6OFJ3Oi9a/VKSDjfEM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699888; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=cniuYjafWkZKBImJEYj01IvmZet1mE8zElckfFU481M=; b=Nl4hE2rz4heFT795WOi1Fld8l4yKYgSUAHOmbhGFEQ8yZcUaxDPqcZoQpBZdFysh1rEJBeyWyfrtfh3egHYSO/9xmw+/743QA5XxK8fZuvyq6X629tdzdtsvdNENPQWmtkiTrMJXnN3Uqxn2N+KVXpyPmtgBOfkXetekIxpWn/U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699888061372.7438735241026; Thu, 14 Sep 2023 06:58:08 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-581-ECwJGzz9Np-vUHtlxv1FxA-1; Thu, 14 Sep 2023 09:57:34 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 8152D1818E4B; Thu, 14 Sep 2023 13:57:31 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6A8929A; Thu, 14 Sep 2023 13:57:31 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id B806C19451CD; Thu, 14 Sep 2023 13:56:40 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id CE81B1946A76 for ; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id B886C40C6EA8; Thu, 14 Sep 2023 13:56:24 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 609A640C6EC0 for ; Thu, 14 Sep 2023 13:56:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699887; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=cniuYjafWkZKBImJEYj01IvmZet1mE8zElckfFU481M=; b=bDnxZAyTZfdko1WKsHMnkbPa6AHrFG1D7s1Wr7jU4UCvsKUA2Q3q2b0/7PUn0MDeBY4Ehs KYtntzsbyAn+jpMjVGQM14DjZSfiahb6Km5en8DNGvJNgJgX0amvqnYms9277KwXL628we WlARJV9EkjRrtvP+p8v0bkkxWmhnEdM= X-MC-Unique: ECwJGzz9Np-vUHtlxv1FxA-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 01/20] lxc_controller: Access correct union member in virLXCControllerSetupHostdevCaps() Date: Thu, 14 Sep 2023 15:56:02 +0200 Message-ID: <2c1bea3994c716d5aeed036e0da8cf6d985f12e3.1694699681.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699888985100003 Content-Type: text/plain; charset="utf-8"; x-default="true" The point of virLXCControllerSetupHostdevCaps() is to access .caps union member of given source. And it does so in the switch, but then, when reporting an error the .subsys member is accessed. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/lxc/lxc_controller.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lxc/lxc_controller.c b/src/lxc/lxc_controller.c index d79b8e1dd6..6c20429998 100644 --- a/src/lxc/lxc_controller.c +++ b/src/lxc/lxc_controller.c @@ -1807,7 +1807,7 @@ virLXCControllerSetupHostdevCaps(virDomainDef *vmDef, default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device mode %1$s"), - virDomainHostdevCapsTypeToString(def->source.subsys= .type)); + virDomainHostdevCapsTypeToString(def->source.caps.t= ype)); return -1; } } --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699849; cv=none; d=zohomail.com; s=zohoarc; b=bh3tlbgONcXfeKQ2+eLhl2qgxxJLIMQtfLS/nVsZiz0JucxU9pK05ZVSQmzjwLgRJvc3ktWWJk3oAwP/cDHlFM6/OQmKZXJyljuCkOUKs/w/FvAgYml608BnSptCbDzC++JhCI/y2BJpLA/MVnZKtZmfUpukrP1lQbmZexmUuhQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699849; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=qLzYpchZnDixM+vsdmYYQURpw1ymxTqaCD9gMmUQiWI=; b=I/Ao3ma1NqWynuIl+ZIAi4Dkf8hyed3qZStbGhNfwXInE/DpTdXMRveb+I9dyfTIYD708evPun1WQSSL9mzaEZLdfO5CeG28Z9Ccq30DRozTFLTOyL8DWtY8Og2dBYtsWyyb5WoidERTHd1p2+8xW+YAUePXoCIq7sLK3pMJiJ4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699849550169.27861678924376; Thu, 14 Sep 2023 06:57:29 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-638-N4FFIK1wPe-homiUyxmsFg-1; Thu, 14 Sep 2023 09:57:23 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id A82F5800045; Thu, 14 Sep 2023 13:57:20 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9392C40C6EC1; Thu, 14 Sep 2023 13:57:20 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id ED81A1946A43; Thu, 14 Sep 2023 13:56:37 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 6871A19465BB for ; Thu, 14 Sep 2023 13:56:31 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 53ECE40C6EC1; Thu, 14 Sep 2023 13:56:26 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id F042440C6EBF for ; Thu, 14 Sep 2023 13:56:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699848; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=qLzYpchZnDixM+vsdmYYQURpw1ymxTqaCD9gMmUQiWI=; b=Q5OrlyxAvYY8DvhLozCqEXaP+Di9OJG7Y8oMCxBUFqXrIl92cMDvxKjPe/2SZYRC38snd2 BxzDGS6w3r2i7XCVeEx1bGNGR8lB5Km3xjP1QQoiFvb8zDgVazmmqYKRbz/el8MoCxtZVO 45EAl0f50JOI3Rk1BU1HNoi3x399Ehc= X-MC-Unique: N4FFIK1wPe-homiUyxmsFg-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 02/20] src: Access hostdev->source.subsys iff VIR_DOMAIN_HOSTDEV_MODE_SUBSYS Date: Thu, 14 Sep 2023 15:56:03 +0200 Message-ID: <860ccc4428c1d7d10e71fbedbb0cbc0ecca78e43.1694699681.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699850569100001 Content-Type: text/plain; charset="utf-8"; x-default="true" There are few places where a virDomainHostdevDef->source.subsys is accessed without ->mode being checked. Mind you, virDomainHostdevDef can be also in VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES mode. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 3 ++- src/conf/domain_validate.c | 3 ++- src/security/virt-aa-helper.c | 4 ++++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 1f14ef6f23..9d819c3dab 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -5099,7 +5099,8 @@ virDomainDriveAddressIsUsedByHostdev(const virDomainD= ef *def, for (i =3D 0; i < def->nhostdevs; i++) { hostdev =3D def->hostdevs[i]; =20 - if (hostdev->source.subsys.type !=3D type || + if (hostdev->mode !=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS || + hostdev->source.subsys.type !=3D type || hostdev->info->type !=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_DRIVE) continue; =20 diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c index b050f21edb..53d920b2b3 100644 --- a/src/conf/domain_validate.c +++ b/src/conf/domain_validate.c @@ -1283,7 +1283,8 @@ virDomainDefHostdevValidate(const virDomainDef *def) } } =20 - if (dev->source.subsys.type =3D=3D VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_= MDEV && + if (dev->mode =3D=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS && + dev->source.subsys.type =3D=3D VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_= MDEV && dev->source.subsys.u.mdev.ramfb =3D=3D VIR_TRISTATE_SWITCH_ON)= { if (ramfbEnabled) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", diff --git a/src/security/virt-aa-helper.c b/src/security/virt-aa-helper.c index c50629d096..4638451183 100644 --- a/src/security/virt-aa-helper.c +++ b/src/security/virt-aa-helper.c @@ -1049,6 +1049,10 @@ get_files(vahControl * ctl) if (ctl->def->hostdevs[i]) { virDomainHostdevDef *dev =3D ctl->def->hostdevs[i]; virDomainHostdevSubsysUSB *usbsrc =3D &dev->source.subsys.u.us= b; + + if (dev->mode !=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) + continue; + switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: { virUSBDevice *usb =3D --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699810; cv=none; d=zohomail.com; s=zohoarc; b=bSGI1igoy0QnB/D6U7kGtpG5XcNw3AZKT2G3/5brTVsGjRPg2zquvPHBE17o5S971kdIdFqfwwK8A+869PSg091zAc9SGcZancTPu9ZeVeqN6xrqhxrWQhtAd/N/X0LtV4AgPaD635oju6sfCRl/H4I1zsXOC/+a+cJWVHv2a7k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699810; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=rv5nz+ymmBysxq9zrE+oVuWoYDKjmY3qZvekwAS05Wo=; b=Sq2jLe5+qqpsxKL7ZayCPOBUu5fdiiIlDXCMQDVTK79FwBrBc/+a/FQ/ouah8HlRHAXoVMVWn49EiFK7pD8J0WvNVybahvBFqQz8BpLGb+KtBQ0mqOjeCfdbKMUJ2kXN3aI+8znmffSwDMcd6ZQS7BqrzLPEqzarkdSo+dyAZT8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 1694699810876432.3200906488486; Thu, 14 Sep 2023 06:56:50 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-287-p6lIDQIkMqun3oegHbJw5A-1; Thu, 14 Sep 2023 09:56:46 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 752A21052246; Thu, 14 Sep 2023 13:56:37 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5F05640C200A; Thu, 14 Sep 2023 13:56:37 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 729BC19466EB; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id F16AE19465B8 for ; Thu, 14 Sep 2023 13:56:26 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id E398040C6ECA; Thu, 14 Sep 2023 13:56:26 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8C1CA40C6EBF for ; Thu, 14 Sep 2023 13:56:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699809; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=rv5nz+ymmBysxq9zrE+oVuWoYDKjmY3qZvekwAS05Wo=; b=OwTxJwxhY3gtbrNkzee01mOynpwmB1EsWOEvGkKHuU7Nja714OpUWUd0xsZnF3dLL4h1eZ F9gtL4Ju7yzGBhkMe7at1+uSULgzKZLg5gmmATAWm0iJUNjIhCouVThSYs9CirxgWevft9 i0VzdwrXpk1dIWbawDTsnwzbtaelcx8= X-MC-Unique: p6lIDQIkMqun3oegHbJw5A-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 03/20] qemu_domain_address: Drop needless typecast in qemuDomainDeviceCalculatePCIConnectFlags() Date: Thu, 14 Sep 2023 15:56:04 +0200 Message-ID: <0264a4fa3e7e11ceaef87e8a872639f76cb8d602.1694699681.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699811573100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Inside of qemuDomainDeviceCalculatePCIConnectFlags() there's a switch() which typecasts a variable of virDomainHostdevSubsysSCSIVHostModelType type to the very same type. This is useless. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/qemu/qemu_domain_address.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index e26dc38f76..e5f0a9e883 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -864,7 +864,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, * are the same as virtio-scsi, so they should follow virtio logic */ if (hostdev->source.subsys.type =3D=3D VIR_DOMAIN_HOSTDEV_SUBSYS_T= YPE_SCSI_HOST) { - switch ((virDomainHostdevSubsysSCSIVHostModelType) hostdev->so= urce.subsys.u.scsi_host.model) { + switch (hostdev->source.subsys.u.scsi_host.model) { case VIR_DOMAIN_HOSTDEV_SUBSYS_SCSI_VHOST_MODEL_TYPE_VIRTIO_TR= ANSITIONAL: /* Transitional devices only work in conventional PCI slot= s */ return pciFlags; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699990; cv=none; d=zohomail.com; s=zohoarc; b=TQb2cxjoFj7qh6q+LoLLpqpS8cv6WtV8epFzBjbo5nL9t9HVKSNSrA3ts0BbEihZsm1UplAXJtNcnY1SL7aVTOfwsvymkO2JMwVdgL3IOw5beP3xCQK2y0VLj4hbuJbz7bRyL3q/T+i62tm6HA09Sqa3SBkPVSTt+JFqTn4O8LA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699990; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=b+UITTKA0hOlYSHPd0E396/sZUhYhdZUjoAglBC+rz0=; b=D2rst8+t6R83IA1Akua3lVDw9Y3k8RSihqXvScMFVZzBFSGUWD9pqI/Lr6201HZ3l4H+loUK+wGepK4Yva+cEemfcg0lxqAkUUevUHBybXl5EmNBNDEm3fMPggUSL/OUZvxz0zYXG+HVKB8sGL3w636L8cO49Eyy738bvTvsA2I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 169469999080392.97123588418413; Thu, 14 Sep 2023 06:59:50 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-606-wq-Y8sSBNzCmuKGv92wGiQ-1; Thu, 14 Sep 2023 09:56:42 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id EB7391052224; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id D541421CAC7A; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id A72E319466F8; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 8F19719465B8 for ; Thu, 14 Sep 2023 13:56:27 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 7F33D40C6EC0; Thu, 14 Sep 2023 13:56:27 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2718640C6ECA for ; Thu, 14 Sep 2023 13:56:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699989; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=b+UITTKA0hOlYSHPd0E396/sZUhYhdZUjoAglBC+rz0=; b=Itjts1qsPIHyEfWW06jVzGt9fQcatrhEoSNHV9iiFvX166Q/bxd0Mim4zbKngGaZN6F8oE ZwCIEQ2HUUUlUTB3j9ZCef5fZ/t1c7dNwTVZXGNOlEowN3kKupTD9cnWzfpEJBt8NorSys 9nMBdtXnXTlBcYxNCeIM8mWOcCuMtWE= X-MC-Unique: wq-Y8sSBNzCmuKGv92wGiQ-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 04/20] qemu: Drop needless typecast to virDomainFSDriverType Date: Thu, 14 Sep 2023 15:56:05 +0200 Message-ID: <79200ca30499c9dd2ea2f2d3db42349563ff5491.1694699681.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699991034100001 Content-Type: text/plain; charset="utf-8"; x-default="true" The 'fsdriver' member of _virDomainFSDef is already declared of virDomainFSDriverType type. Hence, there is no need to typecast the variable when passing to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/qemu/qemu_command.c | 4 ++-- src/qemu/qemu_domain_address.c | 2 +- src/qemu/qemu_validate.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index e84374b4cf..f9e4de9bd7 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -831,7 +831,7 @@ qemuBuildVirtioDevGetConfigDev(const virDomainDeviceDef= *device, break; =20 case VIR_DOMAIN_DEVICE_FS: - switch ((virDomainFSDriverType) device->data.fs->fsdriver) { + switch (device->data.fs->fsdriver) { case VIR_DOMAIN_FS_DRIVER_TYPE_DEFAULT: case VIR_DOMAIN_FS_DRIVER_TYPE_PATH: case VIR_DOMAIN_FS_DRIVER_TYPE_HANDLE: @@ -2434,7 +2434,7 @@ qemuBuildFilesystemCommandLine(virCommand *cmd, size_t i; =20 for (i =3D 0; i < def->nfss; i++) { - switch ((virDomainFSDriverType) def->fss[i]->fsdriver) { + switch (def->fss[i]->fsdriver) { case VIR_DOMAIN_FS_DRIVER_TYPE_DEFAULT: case VIR_DOMAIN_FS_DRIVER_TYPE_PATH: case VIR_DOMAIN_FS_DRIVER_TYPE_HANDLE: diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index e5f0a9e883..01f44a4991 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -707,7 +707,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, break; =20 case VIR_DOMAIN_DEVICE_FS: - switch ((virDomainFSDriverType) dev->data.fs->fsdriver) { + switch (dev->data.fs->fsdriver) { case VIR_DOMAIN_FS_DRIVER_TYPE_DEFAULT: case VIR_DOMAIN_FS_DRIVER_TYPE_PATH: case VIR_DOMAIN_FS_DRIVER_TYPE_HANDLE: diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 5bae56b00f..c7deac6251 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -4286,7 +4286,7 @@ qemuValidateDomainDeviceDefFS(virDomainFSDef *fs, return -1; } =20 - switch ((virDomainFSDriverType) fs->fsdriver) { + switch (fs->fsdriver) { case VIR_DOMAIN_FS_DRIVER_TYPE_DEFAULT: case VIR_DOMAIN_FS_DRIVER_TYPE_PATH: break; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699812; cv=none; d=zohomail.com; s=zohoarc; b=M79Z6tWIoaVrIj0eJXiQAcPNzb4n2bZeoSLb/k1ctd8902+gUmCAN4fTEhmWmUMEyiGwGrOd0KNorN7v1dI9jXckjR89E6huE+GfHFBlgrTeUyBvrvi4t9SaryWoP7zfqwEpJ3PwFCNeP9hvBjqyI0qFbgGfyYCcluJtxlq/yhE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699812; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=VlmSgMIgkoYpjTErHJwoYi28JQI9BnMgB4nJcnjcE2w=; b=XzGnaBmf+3uHNDYEbIkSCfXzf/EEzBvmWgPJYOtT7gsES+B4sy/lZB1+aXgyCKHZBtCWIati9b957oJQBw6PqyEWNLZsm2Gt6MhUvGDBgli86XCd+KeeAlnlwEsUhI2iPgmWqHb6t1EA5PH5Fvo2dWj+pVJm1rgWdW0Fc0zwUwc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699812016460.47130922228257; Thu, 14 Sep 2023 06:56:52 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-142-qpQ48JLWP_mwJleQfml48Q-1; Thu, 14 Sep 2023 09:56:48 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 141B5185A78E; Thu, 14 Sep 2023 13:56:43 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id EF9D61054FC2; Thu, 14 Sep 2023 13:56:42 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id DB8DC1946A48; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 20AD819465B8 for ; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 1BFBB40C6EC0; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id B7D4040C6EBF for ; Thu, 14 Sep 2023 13:56:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699810; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=VlmSgMIgkoYpjTErHJwoYi28JQI9BnMgB4nJcnjcE2w=; b=MUIzMRhcB2C2DUmDl1rfQU+siS0A0YqN+HCk6YUfmfJlziOncqSR5b1XxT1uW0AGQ+WPq+ oShg0QxAmXnnvrFs/rjqu6XHeILE5Iyk+LYFsykxcGJDZ9Sfp+zGqdoeKCTyf2FoqULU2C KoyWeWUK2N99xNYFGrd/KgjcHkLsPhY= X-MC-Unique: qpQ48JLWP_mwJleQfml48Q-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 05/20] src: Drop needless typecast to virDomainDeviceType Date: Thu, 14 Sep 2023 15:56:06 +0200 Message-ID: <4904007f4b8b6d8236d3bf0caccf6246ecf08877.1694699682.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699813599100003 Content-Type: text/plain; charset="utf-8"; x-default="true" The 'type' member of _virDomainDeviceDef is already declared of virDomainDeviceType type. Hence, there is no need to typecast the variable when passing to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/ch/ch_domain.c | 2 +- src/conf/domain_conf.c | 8 ++++---- src/conf/domain_postparse.c | 2 +- src/conf/domain_validate.c | 2 +- src/qemu/qemu_command.c | 2 +- src/qemu/qemu_domain.c | 6 +++--- src/qemu/qemu_domain_address.c | 4 ++-- src/qemu/qemu_driver.c | 6 +++--- src/qemu/qemu_hotplug.c | 10 +++++----- src/qemu/qemu_validate.c | 2 +- 10 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/ch/ch_domain.c b/src/ch/ch_domain.c index d6b64b6c59..866f0d899a 100644 --- a/src/ch/ch_domain.c +++ b/src/ch/ch_domain.c @@ -146,7 +146,7 @@ chValidateDomainDeviceDef(const virDomainDeviceDef *dev, void *opaque G_GNUC_UNUSED, void *parseOpaque G_GNUC_UNUSED) { - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: case VIR_DOMAIN_DEVICE_NET: case VIR_DOMAIN_DEVICE_MEMORY: diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 9d819c3dab..306547e798 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -3520,7 +3520,7 @@ void virDomainDeviceDefFree(virDomainDeviceDef *def) if (!def) return; =20 - switch ((virDomainDeviceType) def->type) { + switch (def->type) { case VIR_DOMAIN_DEVICE_DISK: virDomainDiskDefFree(def->data.disk); break; @@ -4468,7 +4468,7 @@ virDomainObjGetOneDef(virDomainObj *vm, virDomainDeviceInfo * virDomainDeviceGetInfo(const virDomainDeviceDef *device) { - switch ((virDomainDeviceType) device->type) { + switch (device->type) { case VIR_DOMAIN_DEVICE_DISK: return &device->data.disk->info; case VIR_DOMAIN_DEVICE_FS: @@ -4541,7 +4541,7 @@ void virDomainDeviceSetData(virDomainDeviceDef *device, void *devicedata) { - switch ((virDomainDeviceType) device->type) { + switch (device->type) { case VIR_DOMAIN_DEVICE_DISK: device->data.disk =3D devicedata; break; @@ -13777,7 +13777,7 @@ virDomainDeviceDefParse(const char *xmlStr, if (virDomainDeviceDefParseType((const char *)node->name, &dev->type) = < 0) return NULL; =20 - switch ((virDomainDeviceType) dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: if (!(dev->data.disk =3D virDomainDiskDefParseXML(xmlopt, node, ct= xt, flags))) diff --git a/src/conf/domain_postparse.c b/src/conf/domain_postparse.c index b76e8dcc5c..e79913b73f 100644 --- a/src/conf/domain_postparse.c +++ b/src/conf/domain_postparse.c @@ -684,7 +684,7 @@ virDomainDeviceDefPostParseCommon(virDomainDeviceDef *d= ev, { int ret =3D -1; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_CHR: ret =3D virDomainChrDefPostParse(dev->data.chr, def); break; diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c index 53d920b2b3..a8f90af3aa 100644 --- a/src/conf/domain_validate.c +++ b/src/conf/domain_validate.c @@ -2847,7 +2847,7 @@ virDomainDeviceDefValidateInternal(const virDomainDev= iceDef *dev, if (virDomainDeviceInfoValidate(dev) < 0) return -1; =20 - switch ((virDomainDeviceType) dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: return virDomainDiskDefValidate(def, dev->data.disk); =20 diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index f9e4de9bd7..6de0bdf977 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -796,7 +796,7 @@ qemuBuildVirtioDevGetConfigDev(const virDomainDeviceDef= *device, bool *has_ntmodel, bool *useBusSuffix) { - switch ((virDomainDeviceType) device->type) { + switch (device->type) { case VIR_DOMAIN_DEVICE_DISK: if (virStorageSourceGetActualType(device->data.disk->src) =3D= =3D VIR_STORAGE_TYPE_VHOST_USER) *baseName =3D "vhost-user-blk"; diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 52ea8f649d..e578df624b 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -6175,7 +6175,7 @@ qemuDomainDeviceDefPostParse(virDomainDeviceDef *dev, virQEMUCaps *qemuCaps =3D parseOpaque; int ret =3D -1; =20 - switch ((virDomainDeviceType) dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_NET: ret =3D qemuDomainDeviceNetDefPostParse(dev->data.net, def, qemuCa= ps); break; @@ -10297,7 +10297,7 @@ qemuDomainPrepareChardevSourceOne(virDomainDeviceDe= f *dev, struct qemuDomainPrepareChardevSourceData *data =3D opaque; qemuDomainChrSourcePrivate *charpriv =3D QEMU_DOMAIN_CHR_SOURCE_PRIVAT= E(charsrc); =20 - switch ((virDomainDeviceType) dev->type) { + switch (dev->type) { =20 case VIR_DOMAIN_DEVICE_CHR: case VIR_DOMAIN_DEVICE_RNG: @@ -12148,7 +12148,7 @@ qemuDomainDeviceBackendChardevForeachOne(virDomainD= eviceDef *dev, qemuDomainDeviceBackendChardevFor= eachCallback cb, void *opaque) { - switch ((virDomainDeviceType) dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: if (virStorageSourceGetActualType(dev->data.disk->src) !=3D VIR_ST= ORAGE_TYPE_VHOST_USER) return 0; diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 01f44a4991..38411b4872 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -522,7 +522,7 @@ qemuDomainAssignVirtioMMIOAddresses(virDomainDef *def, static bool qemuDomainDeviceSupportZPCI(virDomainDeviceDef *device) { - switch ((virDomainDeviceType)device->type) { + switch (device->type) { case VIR_DOMAIN_DEVICE_CHR: return false; =20 @@ -604,7 +604,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, virDomainPCIConnectFlags pciFlags =3D (VIR_PCI_CONNECT_TYPE_PCI_DEVICE= | VIR_PCI_CONNECT_AUTOASSIGN); =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_CONTROLLER: { virDomainControllerDef *cont =3D dev->data.controller; =20 diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 0d4da937b0..28ec40e351 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -6624,7 +6624,7 @@ qemuDomainAttachDeviceConfig(virDomainDef *vmdef, virDomainRedirdevDef *redirdev; virDomainShmemDef *shmem; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: disk =3D dev->data.disk; if (virDomainDiskIndexByName(vmdef, disk->dst, true) >=3D 0) { @@ -6843,7 +6843,7 @@ qemuDomainDetachDeviceConfig(virDomainDef *vmdef, virDomainMemoryDef *mem; int idx; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: disk =3D dev->data.disk; if (!(det_disk =3D virDomainDiskRemoveByName(vmdef, disk->dst))) { @@ -7041,7 +7041,7 @@ qemuDomainUpdateDeviceConfig(virDomainDef *vmdef, virDomainDeviceDef oldDev =3D { .type =3D dev->type }; int pos; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: newDisk =3D dev->data.disk; if ((pos =3D virDomainDiskIndexByName(vmdef, newDisk->dst, false))= < 0) { diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index 177ca87d11..0d5f253bb9 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -3307,7 +3307,7 @@ qemuDomainAttachDeviceLive(virDomainObj *vm, &chardevBackendData) < 0) return -1; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: qemuDomainObjCheckDiskTaint(driver, vm, dev->data.disk, NULL); ret =3D qemuDomainAttachDeviceDiskLive(driver, vm, dev); @@ -5150,7 +5150,7 @@ qemuDomainRemoveAuditDevice(virDomainObj *vm, virDomainDeviceDef *detach, bool success) { - switch ((virDomainDeviceType)detach->type) { + switch (detach->type) { case VIR_DOMAIN_DEVICE_DISK: virDomainAuditDisk(vm, detach->data.disk->src, NULL, "detach", suc= cess); break; @@ -5231,7 +5231,7 @@ qemuDomainRemoveDevice(virQEMUDriver *driver, alias =3D g_strdup(info->alias); info =3D NULL; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_CHR: /* We must return directly after calling * qemuDomainRemoveChrDevice because it is called directly @@ -6058,7 +6058,7 @@ qemuDomainDetachDeviceLive(virDomainObj *vm, int ret =3D -1; int rc; =20 - switch ((virDomainDeviceType)match->type) { + switch (match->type) { /* * lease and chr devices don't follow the standard pattern of * the others, so they must have their own self-contained @@ -7100,7 +7100,7 @@ qemuDomainUpdateDeviceLive(virDomainObj *vm, virDomainDeviceDef oldDev =3D { .type =3D dev->type }; int idx; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_DISK: qemuDomainObjCheckDiskTaint(driver, vm, dev->data.disk, NULL); return qemuDomainChangeDiskLive(vm, dev, driver, force); diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index c7deac6251..3b57fa3c21 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -5068,7 +5068,7 @@ qemuValidateDomainDeviceDef(const virDomainDeviceDef = *dev, if (qemuValidateDomainDeviceInfo(dev, def, qemuCaps) < 0) return -1; =20 - switch ((virDomainDeviceType)dev->type) { + switch (dev->type) { case VIR_DOMAIN_DEVICE_NET: return qemuValidateDomainDeviceDefNetwork(dev->data.net, qemuCaps); =20 --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699815; cv=none; d=zohomail.com; s=zohoarc; b=SK4GxP9oehhRWy8C+q6KKOW6Ngr4OFEHz7iDIB7iWTOxHhIkMxpPodS26hoQlmyKWlAGC6HHUe5sxOyD1jiB7rkgZjlYfwMZjcwAXpF+W+iEumwmWPKyuHWXwwGM6pk52SUL0dvTqFKlH8hysNVH50vsP8gsu1fb/bppyip0+HM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699815; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=VzT/jaKBXr1hO782wM9Qcok5E0ikjCoxO4gHYJNQOmI=; b=cIYvnumkrcP5pahWYu5FSJPW5E7GroqT6siH/0r4rn/xrTDfzHHhJDInNU4mtoD2QigXUsHWBqW2RNpIOd5t9lukGBlQtldrdI5sWX3jgJx3O6O0fOQBY4URsVChYCF9hSIKtX95zkAA/OsdrqdGMI9CXge91mXJavrRlhDR12Q= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699815751964.4905814151249; Thu, 14 Sep 2023 06:56:55 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-224-awAntMJaP_OBrc8wOdDUqg-1; Thu, 14 Sep 2023 09:56:52 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 8E323917DC3; Thu, 14 Sep 2023 13:56:48 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7823640C6ECE; Thu, 14 Sep 2023 13:56:48 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 881631946A6A; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id AFFF019466FB for ; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id ABBA940C6EBF; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 53C5540C6EC0 for ; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699814; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=VzT/jaKBXr1hO782wM9Qcok5E0ikjCoxO4gHYJNQOmI=; b=Z7BT8RyqM27WoajYydnXDyUPoC/EFvPM4NEmORens/lKyVccM/sTnnvnT3q/y9x+U8qq2e x0CSmdSvk7UBigGp0/ahzoYUr9i5LHcvTjn0HAg7KqX18+Gl+NG0OmWutTCa6vJJBrca6Z m0RqCUd3EPbKd5VKmC5vwD/8M5l0kAg= X-MC-Unique: awAntMJaP_OBrc8wOdDUqg-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 06/20] qemu_domain_address: Drop needless typecast to virDomainDiskModel Date: Thu, 14 Sep 2023 15:56:07 +0200 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699817941100001 Content-Type: text/plain; charset="utf-8"; x-default="true" The 'mode' member of _virDomainDiskDef is already declared of virDomainDiskModel type. Hence, there is no need to typecast the variable when passing to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/qemu/qemu_domain_address.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 38411b4872..0875ed0401 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -793,7 +793,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, switch ((virDomainDiskBus) dev->data.disk->bus) { case VIR_DOMAIN_DISK_BUS_VIRTIO: /* only virtio disks use PCI */ - switch ((virDomainDiskModel) dev->data.disk->model) { + switch (dev->data.disk->model) { case VIR_DOMAIN_DISK_MODEL_VIRTIO_TRANSITIONAL: /* Transitional devices only work in conventional PCI slot= s */ return pciFlags; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699835; cv=none; d=zohomail.com; s=zohoarc; b=KEH6Ign6lOxYECn291VxALOLjQiokaD2PbdIg6tVyt5zYkZlfHPuLuTHqwBOAG4KLViA6HxSKsoH3CbSaxaZibVMQB/KGhzhUYjfBEmU9gx3UJQpUiSvCeboHYaF3bAhMsv6pB4FH+2MCH5D9mRAA5xJyn5qqhubonABbb4ZOHk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699835; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=RxZBiLTkG4GtRX6dWhqm2o5RZ5fUQT711eP6RkXXzPI=; b=ZbNG7WYwXIYPLduqAQeZtl4JA6aNrTrm5tXIRbwwRn2xcdpiBmN3+ZccRUjMU1C+WWjM0EEamVIN8bajC+u2h3QVNITl/xii6q5kdFVfnVF9JG2gssg2y1w5VbZjRHEPgHvhtp9ksXgbdkkNNWY3ulQkzhJLrnZdpVoIzwPdyPE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699835043270.7195621269602; Thu, 14 Sep 2023 06:57:15 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-628-CxUBrQUPNtKNSI0VMHNvAw-1; Thu, 14 Sep 2023 09:57:07 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 65661935D44; Thu, 14 Sep 2023 13:57:04 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4FBBF20268CB; Thu, 14 Sep 2023 13:57:04 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id BF64219452CA; Thu, 14 Sep 2023 13:56:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 4EDB01946A62 for ; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 478FF40C6EC0; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id E3E3340C6EBF for ; Thu, 14 Sep 2023 13:56:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699834; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=RxZBiLTkG4GtRX6dWhqm2o5RZ5fUQT711eP6RkXXzPI=; b=XxbHIQz2zTntj7i/uhilzMDrgoFEbIjbQ5Nxq2w5PgyOtF9mD0SHlQbNHVhFvCn+i7r9RK L9geUYcD9zssNtu1qgQ22azci4pGfPaMNlJjAO/4uvrs8rhskxwbsfAkOyq6Qoy9D/Jrh2 /Nm6zCHbAuFKTOfvipNAg5IChz2MePs= X-MC-Unique: CxUBrQUPNtKNSI0VMHNvAw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 07/20] src: Drop needless typecast to virDomainDiskBus Date: Thu, 14 Sep 2023 15:56:08 +0200 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699836264100001 Content-Type: text/plain; charset="utf-8"; x-default="true" The 'bus' member of _virDomainDiskDef is already declared of virDomainDiskModel type. Hence, there is no need to typecast the variable when passing to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/qemu/qemu_alias.c | 2 +- src/qemu/qemu_command.c | 4 ++-- src/qemu/qemu_domain_address.c | 2 +- src/qemu/qemu_hotplug.c | 4 ++-- src/qemu/qemu_validate.c | 4 ++-- src/vbox/vbox_common.c | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/qemu/qemu_alias.c b/src/qemu/qemu_alias.c index 161d30cf72..e58c488f8a 100644 --- a/src/qemu/qemu_alias.c +++ b/src/qemu/qemu_alias.c @@ -244,7 +244,7 @@ qemuAssignDeviceDiskAlias(virDomainDef *def, * need the full path into /machine/peripheral as a historical artifac= t. */ if (!diskPriv->qomName) { - switch ((virDomainDiskBus) disk->bus) { + switch (disk->bus) { case VIR_DOMAIN_DISK_BUS_FDC: case VIR_DOMAIN_DISK_BUS_IDE: case VIR_DOMAIN_DISK_BUS_SATA: diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 6de0bdf977..be5814663c 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -409,7 +409,7 @@ qemuBuildDeviceAddresDriveProps(virJSONValue *props, virDomainControllerDef *controller =3D NULL; const char *controllerAlias =3D NULL; =20 - switch ((virDomainDiskBus) info->addr.drive.diskbus) { + switch (info->addr.drive.diskbus) { case VIR_DOMAIN_DISK_BUS_IDE: /* When domain has builtin IDE controller we don't put it onto cmd * line. Therefore we can't set its alias. In that case, use the @@ -1770,7 +1770,7 @@ qemuBuildDiskDeviceProps(const virDomainDef *def, const char *wpolicy =3D NULL; const char *rpolicy =3D NULL; =20 - switch ((virDomainDiskBus) disk->bus) { + switch (disk->bus) { case VIR_DOMAIN_DISK_BUS_IDE: case VIR_DOMAIN_DISK_BUS_SATA: if (disk->device =3D=3D VIR_DOMAIN_DISK_DEVICE_CDROM) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 0875ed0401..00742d3c0e 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -790,7 +790,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, break; =20 case VIR_DOMAIN_DEVICE_DISK: - switch ((virDomainDiskBus) dev->data.disk->bus) { + switch (dev->data.disk->bus) { case VIR_DOMAIN_DISK_BUS_VIRTIO: /* only virtio disks use PCI */ switch (dev->data.disk->model) { diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index 0d5f253bb9..d4f01cfd93 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -926,7 +926,7 @@ qemuDomainAttachDeviceDiskLiveInternal(virQEMUDriver *d= river, goto cleanup; } =20 - switch ((virDomainDiskBus) disk->bus) { + switch (disk->bus) { case VIR_DOMAIN_DISK_BUS_USB: if (disk->device =3D=3D VIR_DOMAIN_DISK_DEVICE_LUN) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", @@ -5468,7 +5468,7 @@ qemuDomainDetachPrepDisk(virDomainObj *vm, case VIR_DOMAIN_DISK_DEVICE_DISK: case VIR_DOMAIN_DISK_DEVICE_LUN: =20 - switch ((virDomainDiskBus) disk->bus) { + switch (disk->bus) { case VIR_DOMAIN_DISK_BUS_VIRTIO: case VIR_DOMAIN_DISK_BUS_USB: case VIR_DOMAIN_DISK_BUS_SCSI: diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 3b57fa3c21..18d34e7f59 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -1371,7 +1371,7 @@ qemuValidateDomainDeviceDefAddressDrive(virDomainDevi= ceInfo *info, { virDomainControllerDef *controller =3D NULL; =20 - switch ((virDomainDiskBus) info->addr.drive.diskbus) { + switch (info->addr.drive.diskbus) { case VIR_DOMAIN_DISK_BUS_SCSI: /* Setting bus=3D attr for SCSI drives, causes a controller * to be created. Yes this is slightly odd. It is not possible @@ -2673,7 +2673,7 @@ static bool qemuValidateDomainDeviceDefDiskIOThreads(const virDomainDef *def, const virDomainDiskDef *disk) { - switch ((virDomainDiskBus)disk->bus) { + switch (disk->bus) { case VIR_DOMAIN_DISK_BUS_VIRTIO: break; =20 diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c index dba4af1a44..490f337a56 100644 --- a/src/vbox/vbox_common.c +++ b/src/vbox/vbox_common.c @@ -1206,7 +1206,7 @@ vboxAttachDrives(virDomainDef *def, struct _vboxDrive= r *data, IMachine *machine) goto cleanup; } =20 - switch ((virDomainDiskBus) disk->bus) { + switch (disk->bus) { case VIR_DOMAIN_DISK_BUS_IDE: VBOX_UTF8_TO_UTF16(VBOX_CONTROLLER_IDE_NAME, &storageCtlName); devicePort =3D def->disks[i]->info.addr.drive.bus; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699982; cv=none; d=zohomail.com; s=zohoarc; b=Gn1CmEJnLG6vRvgk89rn24xu000MUs7cC2sPNlkHL4K6QmWVUkpg3p9fzGAawt1jm8SF9yqo5htwFpHvazID3ZHyt79m89kTyxVcslQV98w+gqBecoP6hhHRTck0mCcVOjJ8l8Fc2+KKm/ubHNFKWHE/WBgAiXB2L2PyL1hLAq8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699982; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=fttVHoSIVCUzNnKe1lE9utrMu+BM+v78wLGF1MTQds0=; b=JvdR2DBAL0LCdAkk0Q7+vxDNfH3A0VQ64r3kATOPxV8R4TFnT/1WRLG6LjoDlzBgNtq8k0+egulMCxXYg1kA+jHM+8Jf/x9o5q0+ix7mJBPv8QCiryUtq4UIyhca/mbWeWt82DwMrCUSGRFVzUpbCG8NrGxqhBI3n78ztM01Evc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699981987542.891405275605; Thu, 14 Sep 2023 06:59:41 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-319-qggd5THfOXCsfqMZ45ZbFQ-1; Thu, 14 Sep 2023 09:56:59 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B9F04801779; Thu, 14 Sep 2023 13:56:56 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id A5CCB2026D4B; Thu, 14 Sep 2023 13:56:56 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 25F2819465BC; Thu, 14 Sep 2023 13:56:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id DC88B1946A77 for ; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id D816240C6ECA; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8009040C6EBF for ; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699981; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=fttVHoSIVCUzNnKe1lE9utrMu+BM+v78wLGF1MTQds0=; b=AqmJx40ZFwpXufjptuzQzI7cYTIE/LkCDczzS66o/L2WqriKLqn3XWw3jWR22ESrETroul h4P8xtE1vkArTq/zV7iRQorzcwvemU8ZTtDN9RDC8DlWxVgyZ/LmMT04ZRuhJd1XRQ1Br5 eAri/Vh7gozZLWdWx6vRo32C1jXArD8= X-MC-Unique: qggd5THfOXCsfqMZ45ZbFQ-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 08/20] virDomainHostdevSubsysSCSI: Convert 'protocol' field to proper enum type Date: Thu, 14 Sep 2023 15:56:09 +0200 Message-ID: <6c77cb3be62de6b522620c38f9b42391410b36a5.1694699682.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699983720100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and adjust the XML parser to use virXMLPropEnum(). Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 18 ++++++------------ src/conf/domain_conf.h | 2 +- src/qemu/qemu_command.c | 4 ++-- src/qemu/qemu_domain.c | 4 ++-- 4 files changed, 11 insertions(+), 17 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 306547e798..ef5f02a23b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -6065,20 +6065,14 @@ virDomainHostdevSubsysSCSIDefParseXML(xmlNodePtr so= urcenode, unsigned int flags, virDomainXMLOption *xmlopt) { - g_autofree char *protocol =3D NULL; - - if ((protocol =3D virXMLPropString(sourcenode, "protocol"))) { - scsisrc->protocol =3D - virDomainHostdevSubsysSCSIProtocolTypeFromString(protocol); - if (scsisrc->protocol < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Unknown SCSI subsystem protocol '%1$s'"), - protocol); - return -1; - } + if (virXMLPropEnum(sourcenode, "protocol", + virDomainHostdevSubsysSCSIProtocolTypeFromString, + VIR_XML_PROP_NONE, + &scsisrc->protocol) < 0) { + return -1; } =20 - switch ((virDomainHostdevSCSIProtocolType) scsisrc->protocol) { + switch (scsisrc->protocol) { case VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_NONE: return virDomainHostdevSubsysSCSIHostDefParseXML(sourcenode, ctxt,= scsisrc, flags, xmlopt); diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index ca195a52d2..5cce60420f 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -273,7 +273,7 @@ typedef enum { } virDomainDeviceSGIO; =20 struct _virDomainHostdevSubsysSCSI { - int protocol; /* enum virDomainHostdevSCSIProtocolType */ + virDomainHostdevSCSIProtocolType protocol; virDomainDeviceSGIO sgio; virTristateBool rawio; union { diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index be5814663c..ccbf41a0f7 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -5033,7 +5033,7 @@ qemuBuildHostdevSCSIDetachPrepare(virDomainHostdevDef= *hostdev, virStorageSource *src; qemuDomainStorageSourcePrivate *srcpriv; =20 - switch ((virDomainHostdevSCSIProtocolType) scsisrc->protocol) { + switch (scsisrc->protocol) { case VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_NONE: src =3D scsisrc->u.host.src; break; @@ -5068,7 +5068,7 @@ qemuBuildHostdevSCSIAttachPrepare(virDomainHostdevDef= *hostdev, g_autoptr(qemuBlockStorageSourceAttachData) ret =3D g_new0(qemuBlockSt= orageSourceAttachData, 1); virStorageSource *src =3D NULL; =20 - switch ((virDomainHostdevSCSIProtocolType) scsisrc->protocol) { + switch (scsisrc->protocol) { case VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_NONE: src =3D scsisrc->u.host.src; break; diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index e578df624b..069f145d26 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -6008,7 +6008,7 @@ qemuDomainDeviceHostdevDefPostParseRestoreBackendAlia= s(virDomainHostdevDef *host hostdev->source.subsys.type !=3D VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SC= SI) return 0; =20 - switch ((virDomainHostdevSCSIProtocolType) scsisrc->protocol) { + switch (scsisrc->protocol) { case VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_NONE: if (!scsisrc->u.host.src) scsisrc->u.host.src =3D virStorageSourceNew(); @@ -11373,7 +11373,7 @@ qemuDomainPrepareHostdevSCSI(virDomainHostdevDef *h= ostdev, virStorageSource *src =3D NULL; g_autofree char *devstr =3D NULL; =20 - switch ((virDomainHostdevSCSIProtocolType) scsisrc->protocol) { + switch (scsisrc->protocol) { case VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_NONE: virObjectUnref(scsisrc->u.host.src); scsisrc->u.host.src =3D virStorageSourceNew(); --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699825; cv=none; d=zohomail.com; s=zohoarc; b=KTmJsFb63QDAWY2/I9EoaN0UXDtKn7Cc4O5/gHpH0T1UwfqQFApBMzjuYitRtQnfH5xWcHgljmmf8v++UrGAaaZP6UEAAo05v9BA5f8gr498/+Sjak4o5WWPO+o4a+Uk8wVT9Q/TdKoBMF4GJfIJvnOWsFZTChv4bJVGO9dKDqY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699825; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=T1IUBK9GBjDcXqWEM0P0iHJnQR9e/PamDxmigDL6uGk=; b=YsebABEepGWihglURJPTU+vF8779g/uST/p+TdgRMl/IE9bhEM2IiJg61MWGWaqBbb3I8Svc9qEK553vupYcyY92YOhQVdlfJP1GxCa9PuVs7qcp+ZmNtMb5SBa9EXFPAtFSV8ZQof6/nHEOOLKy9AfF4ZahR37mrLswhGAe3IY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 1694699825942429.8963434317717; Thu, 14 Sep 2023 06:57:05 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-455-xqwW2GfpP7-18Yz8sLgZKg-1; Thu, 14 Sep 2023 09:57:02 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 0D840857A9E; Thu, 14 Sep 2023 13:56:59 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id EBF441054FC0; Thu, 14 Sep 2023 13:56:58 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 5B62119459E6; Thu, 14 Sep 2023 13:56:32 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 786181946A76 for ; Thu, 14 Sep 2023 13:56:30 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 740DD40C6EBF; Thu, 14 Sep 2023 13:56:30 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 1BF1740C6EA8 for ; Thu, 14 Sep 2023 13:56:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699825; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=T1IUBK9GBjDcXqWEM0P0iHJnQR9e/PamDxmigDL6uGk=; b=gMu6gJncoAsmXUe6e98kfCJXweYaEIWayVFBe+iSGtS5b+k2DrSXj1Gl8wb4W5V4V5r4cQ AjL+PH9IA2dRWhZFtV1Q2U009ZDb2vydp4rHxAHNbqhBohQuR+j+bpSaxqNdgfm/+G2DcE UIC8DHOXrgC+llIx27cdl7Ssqo3V7tk= X-MC-Unique: xqwW2GfpP7-18Yz8sLgZKg-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 09/20] virDomainHostdevSubsysSCSIVHost: Convert 'protocol' field to proper enum type Date: Thu, 14 Sep 2023 15:56:10 +0200 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699826353100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and adjust the XML parser to use virXMLPropEnum(). Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 17 +++++------------ src/conf/domain_conf.h | 4 ++-- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index ef5f02a23b..65b7b44ccb 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -6095,24 +6095,17 @@ virDomainHostdevSubsysSCSIVHostDefParseXML(xmlNodeP= tr sourcenode, virDomainHostdevDef *def) { virDomainHostdevSubsysSCSIVHost *hostsrc =3D &def->source.subsys.u.scs= i_host; - g_autofree char *protocol =3D NULL; g_autofree char *wwpn =3D NULL; =20 - if (!(protocol =3D virXMLPropString(sourcenode, "protocol"))) { - virReportError(VIR_ERR_XML_ERROR, "%s", - _("Missing scsi_host subsystem protocol")); - return -1; - } =20 - if ((hostsrc->protocol =3D - virDomainHostdevSubsysSCSIHostProtocolTypeFromString(protocol)) <= =3D 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("Unknown scsi_host subsystem protocol '%1$s'"), - protocol); + if (virXMLPropEnum(sourcenode, "protocol", + virDomainHostdevSubsysSCSIHostProtocolTypeFromStrin= g, + VIR_XML_PROP_REQUIRED | VIR_XML_PROP_NONZERO, + &hostsrc->protocol) < 0) { return -1; } =20 - switch ((virDomainHostdevSubsysSCSIHostProtocolType) hostsrc->protocol= ) { + switch (hostsrc->protocol) { case VIR_DOMAIN_HOSTDEV_SUBSYS_SCSI_HOST_PROTOCOL_TYPE_VHOST: if (!(wwpn =3D virXMLPropString(sourcenode, "wwpn"))) { virReportError(VIR_ERR_XML_ERROR, "%s", diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 5cce60420f..d6d0799f63 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -290,7 +290,7 @@ struct _virDomainHostdevSubsysMediatedDev { }; =20 typedef enum { - VIR_DOMAIN_HOSTDEV_SUBSYS_SCSI_HOST_PROTOCOL_TYPE_NONE, + VIR_DOMAIN_HOSTDEV_SUBSYS_SCSI_HOST_PROTOCOL_TYPE_NONE =3D 0, VIR_DOMAIN_HOSTDEV_SUBSYS_SCSI_HOST_PROTOCOL_TYPE_VHOST, =20 VIR_DOMAIN_HOSTDEV_SUBSYS_SCSI_HOST_PROTOCOL_TYPE_LAST, @@ -310,7 +310,7 @@ typedef enum { VIR_ENUM_DECL(virDomainHostdevSubsysSCSIVHostModel); =20 struct _virDomainHostdevSubsysSCSIVHost { - int protocol; /* enum virDomainHostdevSubsysSCSIHostProtocolType */ + virDomainHostdevSubsysSCSIHostProtocolType protocol; char *wwpn; virDomainHostdevSubsysSCSIVHostModelType model; }; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699843; cv=none; d=zohomail.com; s=zohoarc; b=NhKg2XVyNCrcWAUIz5jFTAj60/yJtmmeTRFHp6XPOi0uGRoGj4G16thVNL0wh/J3ab87mXGb2sTNp6fUAOGlbr+e9+aTQ99aloEp4tcj+6Dlm6bp5PWRU0WITgTSe29204l/oSl779j4xtSdQevZ9DfMoYYWtAU3PgwSJUBCVMs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699843; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=DKB3uMwLg0Z/enHfcdFkxISEE41u5hkPBrwX9OJYDwQ=; b=CUObqiN08VVfRZ6oO4jOo9NIlQjGcKBo9NITaB15lutmpjW1sn14kRn99n+ztH6yzgjDF1T9H56VHmSa5ke0+OCSoFlJmHSoNRMbTNNftprY/L7mmeQ2HEvymYd15ZKicR6hNwZxbCGRcpLgJ7ZxEZb9i2eDM/GrdIzwlbfQJwE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 1694699843951111.3979778618193; Thu, 14 Sep 2023 06:57:23 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-175-IO5lY8cFM7ylJNqFqnOy4Q-1; Thu, 14 Sep 2023 09:57:19 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id E09AB182463D; Thu, 14 Sep 2023 13:57:15 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id CB9F51054FC3; Thu, 14 Sep 2023 13:57:15 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 9AA5419465B9; Thu, 14 Sep 2023 13:56:37 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 14D0D1946A76 for ; Thu, 14 Sep 2023 13:56:31 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 1062C40C6EBF; Thu, 14 Sep 2023 13:56:31 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id AB93D40C6EA8 for ; Thu, 14 Sep 2023 13:56:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699843; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=DKB3uMwLg0Z/enHfcdFkxISEE41u5hkPBrwX9OJYDwQ=; b=QIajmhyqo+JFt3d7KYu/qklEXEjF9wdj0yp+byBBfR5gM2jlINGjRTEFP+cAyS80yhlY1R MJ+PuhSiNu5VyNnjx0rUOZVTF1ZpmTQR8HHPl8wleB6QTwEiAyJxs/K3uV9CW3YpQASSs3 IGYA5HOrv6/xUgMeBeCPBJEkc+iIv8U= X-MC-Unique: IO5lY8cFM7ylJNqFqnOy4Q-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 10/20] virDomainHostdevDef: Convert 'mode' field to proper enum type Date: Thu, 14 Sep 2023 15:56:11 +0200 Message-ID: <359a8b182fa1be83eeb1e99b2b0e98ba19d1283d.1694699682.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699844843100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field, adjust the XML parser to use virXMLPropEnumDefault() and fill in missing cases to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_audit.c | 2 +- src/conf/domain_conf.c | 23 +++++++++++++---------- src/conf/domain_conf.h | 2 +- src/lxc/lxc_cgroup.c | 1 + src/lxc/lxc_controller.c | 1 + src/lxc/lxc_driver.c | 2 ++ src/lxc/lxc_hostdev.c | 1 + src/qemu/qemu_domain.c | 2 +- src/qemu/qemu_migration.c | 2 +- src/security/security_selinux.c | 2 ++ 10 files changed, 24 insertions(+), 14 deletions(-) diff --git a/src/conf/domain_audit.c b/src/conf/domain_audit.c index ae875188bd..d4d303a214 100644 --- a/src/conf/domain_audit.c +++ b/src/conf/domain_audit.c @@ -351,7 +351,7 @@ virDomainAuditHostdev(virDomainObj *vm, virDomainHostde= vDef *hostdev, return; } =20 - switch ((virDomainHostdevMode) hostdev->mode) { + switch (hostdev->mode) { case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: switch ((virDomainHostdevSubsysType) hostdev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 65b7b44ccb..c93f89ced6 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2648,6 +2648,8 @@ virDomainHostdevDefClear(virDomainHostdevDef *def) break; } break; + case VIR_DOMAIN_HOSTDEV_MODE_LAST: + break; } } =20 @@ -12917,7 +12919,6 @@ virDomainHostdevDefParseXML(virDomainXMLOption *xml= opt, { virDomainHostdevDef *def; VIR_XPATH_NODE_AUTORESTORE(ctxt) - g_autofree char *mode =3D virXMLPropString(node, "mode"); g_autofree char *type =3D virXMLPropString(node, "type"); =20 ctxt->node =3D node; @@ -12925,15 +12926,11 @@ virDomainHostdevDefParseXML(virDomainXMLOption *x= mlopt, if (!(def =3D virDomainHostdevDefNew())) goto error; =20 - if (mode) { - if ((def->mode =3D virDomainHostdevModeTypeFromString(mode)) < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown hostdev mode '%1$s'"), mode); - goto error; - } - } else { - def->mode =3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS; - } + if (virXMLPropEnumDefault(node, "mode", virDomainHostdevModeTypeFromSt= ring, + VIR_XML_PROP_NONE, + &def->mode, + VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) < 0) + goto error; =20 switch (def->mode) { case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: @@ -12947,6 +12944,7 @@ virDomainHostdevDefParseXML(virDomainXMLOption *xml= opt, goto error; break; default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: virReportError(VIR_ERR_INTERNAL_ERROR, _("Unexpected hostdev mode %1$d"), def->mode); goto error; @@ -14182,6 +14180,8 @@ virDomainHostdevMatch(virDomainHostdevDef *a, return virDomainHostdevMatchSubsys(a, b); case VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES: return virDomainHostdevMatchCaps(a, b); + case VIR_DOMAIN_HOSTDEV_MODE_LAST: + break; } return 0; } @@ -26087,6 +26087,7 @@ virDomainHostdevDefFormat(virBuffer *buf, } break; default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: virReportError(VIR_ERR_INTERNAL_ERROR, _("unexpected hostdev mode %1$d"), def->mode); return -1; @@ -26139,6 +26140,8 @@ virDomainHostdevDefFormat(virBuffer *buf, if (virDomainHostdevDefFormatCaps(buf, def) < 0) return -1; break; + case VIR_DOMAIN_HOSTDEV_MODE_LAST: + break; } =20 virDomainNetTeamingInfoFormat(def->teaming, buf); diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index d6d0799f63..1f977ef1c8 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -371,7 +371,7 @@ struct _virDomainHostdevDef { */ virDomainNetDef *parentnet; =20 - int mode; /* enum virDomainHostdevMode */ + virDomainHostdevMode mode; virDomainStartupPolicy startupPolicy; bool managed; bool missing; diff --git a/src/lxc/lxc_cgroup.c b/src/lxc/lxc_cgroup.c index bc39b16928..21d9b456e8 100644 --- a/src/lxc/lxc_cgroup.c +++ b/src/lxc/lxc_cgroup.c @@ -313,6 +313,7 @@ static int virLXCCgroupSetupDeviceACL(virDomainDef *def, break; } default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: break; } } diff --git a/src/lxc/lxc_controller.c b/src/lxc/lxc_controller.c index 6c20429998..e2d67d504d 100644 --- a/src/lxc/lxc_controller.c +++ b/src/lxc/lxc_controller.c @@ -1837,6 +1837,7 @@ virLXCControllerSetupAllHostdevs(virLXCController *ct= rl) return -1; break; default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device mode %1$s"), virDomainHostdevModeTypeToString(def->mode)); diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c index f3d3e4eb50..fb0301b811 100644 --- a/src/lxc/lxc_driver.c +++ b/src/lxc/lxc_driver.c @@ -3905,6 +3905,7 @@ lxcDomainAttachDeviceHostdevLive(virLXCDriver *driver, return lxcDomainAttachDeviceHostdevCapsLive(driver, vm, dev); =20 default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device mode %1$s"), virDomainHostdevModeTypeToString(dev->data.hostdev-= >mode)); @@ -4328,6 +4329,7 @@ lxcDomainDetachDeviceHostdevLive(virLXCDriver *driver, return lxcDomainDetachDeviceHostdevCapsLive(vm, dev); =20 default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device mode %1$s"), virDomainHostdevModeTypeToString(dev->data.hostdev-= >mode)); diff --git a/src/lxc/lxc_hostdev.c b/src/lxc/lxc_hostdev.c index 8fe02a4276..af3ce3e0ac 100644 --- a/src/lxc/lxc_hostdev.c +++ b/src/lxc/lxc_hostdev.c @@ -100,6 +100,7 @@ int virLXCPrepareHostDevices(virLXCDriver *driver, =20 =20 default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported hostdev mode %1$s"), virDomainHostdevModeTypeToString(dev->mode)); diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 069f145d26..818e3822d0 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -10678,7 +10678,7 @@ qemuDomainGetHostdevPath(virDomainHostdevDef *dev, g_autofree char *tmpPath =3D NULL; int perm =3D 0; =20 - switch ((virDomainHostdevMode) dev->mode) { + switch (dev->mode) { case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: switch ((virDomainHostdevSubsysType)dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index 801b904a73..9ed5c6e94b 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -1280,7 +1280,7 @@ qemuMigrationSrcIsAllowedHostdev(const virDomainDef *= def) * forbidden. */ for (i =3D 0; i < def->nhostdevs; i++) { virDomainHostdevDef *hostdev =3D def->hostdevs[i]; - switch ((virDomainHostdevMode)hostdev->mode) { + switch (hostdev->mode) { case VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES: virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", _("cannot migrate a domain with ")); diff --git a/src/security/security_selinux.c b/src/security/security_selinu= x.c index 7914aba84d..c3c92f3538 100644 --- a/src/security/security_selinux.c +++ b/src/security/security_selinux.c @@ -2345,6 +2345,7 @@ virSecuritySELinuxSetHostdevLabel(virSecurityManager = *mgr, return virSecuritySELinuxSetHostdevCapsLabel(mgr, def, dev, vroot); =20 default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: return 0; } } @@ -2567,6 +2568,7 @@ virSecuritySELinuxRestoreHostdevLabel(virSecurityMana= ger *mgr, return virSecuritySELinuxRestoreHostdevCapsLabel(mgr, dev, vroot); =20 default: + case VIR_DOMAIN_HOSTDEV_MODE_LAST: return 0; } } --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699844; cv=none; d=zohomail.com; s=zohoarc; b=NWnLnmR2XaPcd7F281M1LJ6CYfdGtDSFC6IQLrgde6Qn97ZYgjF9oE8BWDbM91zBLO7ctzH7Fd1MGwlj9GQR1BzsOjT8wsHijtOr65xCB0pIqCcrKQ/uhkf/6vXFk61GLZS0vjn6LZXmkJbIMTGuG9FwgMJBHNOKhSl59o0RtB0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699844; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=dEeJJpaqNLZTIZR3QZZqV/FI1/YWUfsuNmoYrg0jm08=; b=G1m8enqwCwuWF04XPR2FOm53ofoLF/RSRS0xfERLjNzCkbLzFxau/9V/GABymi/vD7PnZ0mxK9skcJNZH0vpLB7ecFec1tRp11FpdPpHxo3MRqi2JcVP8KBLmEB+9F3CT/ovq8lFUWHEtiXKjYRQuxBFCt3tYZ2QJS39O5U8li0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 169469984413985.60612576145627; Thu, 14 Sep 2023 06:57:24 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-639-cSTiuJ2iNM24IM2LtQWdRw-1; Thu, 14 Sep 2023 09:57:18 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B2890800B23; Thu, 14 Sep 2023 13:57:14 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9C27940C2070; Thu, 14 Sep 2023 13:57:14 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id F241319452D9; Thu, 14 Sep 2023 13:56:34 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id BCF1619465BB for ; Thu, 14 Sep 2023 13:56:31 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id A044740C6EC0; Thu, 14 Sep 2023 13:56:31 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 47F8D40C6ECA for ; Thu, 14 Sep 2023 13:56:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699843; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=dEeJJpaqNLZTIZR3QZZqV/FI1/YWUfsuNmoYrg0jm08=; b=YRbXhkpaA4P4NEOW73H6lebtPNmTAdENfe7uOd0QVTmMtGTGOMhpL2uP3NubgMm6CFyJ/z j0GbgayIPeQc5BsKfPerRLfrwTF4k9rFVXiSwqDO695y6oSrQc2yIvteGo8C33s548NlIx ZsHjnXoXXXo+4wlZivE6d/HBB8x7TyI= X-MC-Unique: cSTiuJ2iNM24IM2LtQWdRw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 11/20] virDomainHostdevCaps: Convert 'type' field to proper enum type Date: Thu, 14 Sep 2023 15:56:12 +0200 Message-ID: <23758d993bd7b5749607023e990b80b0edc8684b.1694699682.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699846226100005 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field, adjust the XML parsers to use virXMLPropEnum() and fill in missing cases to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_audit.c | 2 ++ src/conf/domain_conf.c | 29 ++++++++++++++--------------- src/conf/domain_conf.h | 2 +- src/lxc/lxc_cgroup.c | 2 ++ src/lxc/lxc_controller.c | 1 + src/lxc/lxc_driver.c | 4 ++++ src/lxc/lxc_hostdev.c | 1 + src/security/security_selinux.c | 4 ++++ 8 files changed, 29 insertions(+), 16 deletions(-) diff --git a/src/conf/domain_audit.c b/src/conf/domain_audit.c index d4d303a214..0bf1768acd 100644 --- a/src/conf/domain_audit.c +++ b/src/conf/domain_audit.c @@ -428,6 +428,8 @@ virDomainAuditHostdev(virDomainObj *vm, virDomainHostde= vDef *hostdev, virt, reason, vmname, uuidstr, device); break; =20 + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: VIR_WARN("Unexpected hostdev type while encoding audit message= : %d", hostdev->source.caps.type); diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index c93f89ced6..cf1bd4df74 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2616,7 +2616,7 @@ virDomainHostdevDefClear(virDomainHostdevDef *def) =20 switch (def->mode) { case VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES: - switch ((virDomainHostdevCapsType) def->source.caps.type) { + switch (def->source.caps.type) { case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_STORAGE: VIR_FREE(def->source.caps.u.storage.block); break; @@ -6502,7 +6502,7 @@ virDomainNetDefCoalesceFormatXML(virBuffer *buf, static int virDomainHostdevDefParseXMLCaps(xmlNodePtr node G_GNUC_UNUSED, xmlXPathContextPtr ctxt, - const char *type, + virDomainHostdevCapsType type, virDomainHostdevDef *def) { /* @type is passed in from the caller rather than read from the @@ -6513,18 +6513,7 @@ virDomainHostdevDefParseXMLCaps(xmlNodePtr node G_GN= UC_UNUSED, * . (the functions we're going to call expect address * type to already be known). */ - if (!type) { - virReportError(VIR_ERR_XML_ERROR, - "%s", _("missing source address type")); - return -1; - } - - if ((def->source.caps.type =3D virDomainHostdevCapsTypeFromString(type= )) < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown host device source address type '%1$s'"), - type); - return -1; - } + def->source.caps.type =3D type; =20 if (!virXPathNode("./source", ctxt)) { virReportError(VIR_ERR_XML_ERROR, "%s", @@ -6560,6 +6549,7 @@ virDomainHostdevDefParseXMLCaps(xmlNodePtr node G_GNU= C_UNUSED, ctxt, &def->source.caps.u.net.ip) <= 0) return -1; break; + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("address type=3D'%1$s' not supported in hostdev i= nterfaces"), @@ -12920,6 +12910,7 @@ virDomainHostdevDefParseXML(virDomainXMLOption *xml= opt, virDomainHostdevDef *def; VIR_XPATH_NODE_AUTORESTORE(ctxt) g_autofree char *type =3D virXMLPropString(node, "type"); + unsigned int typeU; =20 ctxt->node =3D node; =20 @@ -12940,7 +12931,12 @@ virDomainHostdevDefParseXML(virDomainXMLOption *xm= lopt, break; case VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES: /* parse managed/mode/type, and the element */ - if (virDomainHostdevDefParseXMLCaps(node, ctxt, type, def) < 0) + if (virXMLPropEnum(node, "type", + virDomainHostdevCapsTypeFromString, + VIR_XML_PROP_REQUIRED, &typeU) < 0) + goto error; + + if (virDomainHostdevDefParseXMLCaps(node, ctxt, typeU, def) < 0) goto error; break; default: @@ -14163,6 +14159,8 @@ virDomainHostdevMatchCaps(virDomainHostdevDef *a, return virDomainHostdevMatchCapsMisc(a, b); case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: return virDomainHostdevMatchCapsNet(a, b); + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: + break; } return 0; } @@ -23486,6 +23484,7 @@ virDomainHostdevDefFormatCaps(virBuffer *buf, virBufferEscapeString(buf, "%s\n", def->source.caps.u.net.ifname); break; + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: virReportError(VIR_ERR_INTERNAL_ERROR, _("unexpected hostdev type %1$d"), diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 1f977ef1c8..0e76ff71ac 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -336,7 +336,7 @@ typedef enum { } virDomainHostdevCapsType; =20 struct _virDomainHostdevCaps { - int type; /* enum virDOmainHostdevCapsType */ + virDomainHostdevCapsType type; union { struct { char *block; diff --git a/src/lxc/lxc_cgroup.c b/src/lxc/lxc_cgroup.c index 21d9b456e8..7c889667ba 100644 --- a/src/lxc/lxc_cgroup.c +++ b/src/lxc/lxc_cgroup.c @@ -309,6 +309,8 @@ static int virLXCCgroupSetupDeviceACL(virDomainDef *def, VIR_CGROUP_DEVICE_MKNOD, fals= e) < 0) return -1; break; + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: break; } diff --git a/src/lxc/lxc_controller.c b/src/lxc/lxc_controller.c index e2d67d504d..7e486d0f78 100644 --- a/src/lxc/lxc_controller.c +++ b/src/lxc/lxc_controller.c @@ -1804,6 +1804,7 @@ virLXCControllerSetupHostdevCaps(virDomainDef *vmDef, case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: return 0; /* case is handled in virLXCControllerMoveInterfaces */ =20 + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device mode %1$s"), diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c index fb0301b811..a9bdeba36d 100644 --- a/src/lxc/lxc_driver.c +++ b/src/lxc/lxc_driver.c @@ -3869,6 +3869,8 @@ lxcDomainAttachDeviceHostdevCapsLive(virLXCDriver *dr= iver, case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_MISC: return lxcDomainAttachDeviceHostdevMiscLive(driver, vm, dev); =20 + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device type %1$s"), @@ -4299,6 +4301,8 @@ lxcDomainDetachDeviceHostdevCapsLive(virDomainObj *vm, case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_MISC: return lxcDomainDetachDeviceHostdevMiscLive(vm, dev); =20 + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device type %1$s"), diff --git a/src/lxc/lxc_hostdev.c b/src/lxc/lxc_hostdev.c index af3ce3e0ac..2e06b516d4 100644 --- a/src/lxc/lxc_hostdev.c +++ b/src/lxc/lxc_hostdev.c @@ -90,6 +90,7 @@ int virLXCPrepareHostDevices(virLXCDriver *driver, case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_MISC: case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: break; + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported hostdev type %1$s"), diff --git a/src/security/security_selinux.c b/src/security/security_selinu= x.c index c3c92f3538..1fa5303495 100644 --- a/src/security/security_selinux.c +++ b/src/security/security_selinux.c @@ -2315,6 +2315,8 @@ virSecuritySELinuxSetHostdevCapsLabel(virSecurityMana= ger *mgr, break; } =20 + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: ret =3D 0; break; @@ -2538,6 +2540,8 @@ virSecuritySELinuxRestoreHostdevCapsLabel(virSecurity= Manager *mgr, break; } =20 + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_NET: + case VIR_DOMAIN_HOSTDEV_CAPS_TYPE_LAST: default: ret =3D 0; break; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699889; cv=none; d=zohomail.com; s=zohoarc; b=V2uurHx9eyID5lI1K8p89G5i/aC45lCYhsgsZcEGGNpbhPzUij5Kjhsa2rbV67lYqNYrr6iQQVVJNZz9TDqtbsNMwACjGArzrDkeeWU4Gc9QJRW70rtdRItV1pleYMq6FIGAXvD5CNcwfDyKJnFbGbKmAQ6ePLShiam23sHcNK4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699889; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=DdwhY+kZCBzTE/NmFnm9E1ly1plFVcawNyAR5zbkRE0=; b=RMr3QngBPautZUh1PEouexZIwsen1A2ZSerPdKBk2Vbq8gs+vhUMRWfU7SOdLD3yAO9gf4oNY1Ajl/1C+MNJSnZlAPbsGKFX8RP+mVFHRrG9zACnOQJUwF2DgHbV8NnphbeNaTlVHVs2TFBWIByvnNWoQH8W5H9nmycIR8Dhdzs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 1694699889310789.987662596945; Thu, 14 Sep 2023 06:58:09 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-583-wgMNzviDOjGX2Sb8HFv_mw-1; Thu, 14 Sep 2023 09:58:05 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 02F5388B7A8; Thu, 14 Sep 2023 13:58:01 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id DCEF140C6EA8; Thu, 14 Sep 2023 13:58:00 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 4881B19451FE; Thu, 14 Sep 2023 13:56:49 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 7162019465B8 for ; Thu, 14 Sep 2023 13:56:37 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 59B8540C6EC1; Thu, 14 Sep 2023 13:56:32 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id D8E0D40C6ECE for ; Thu, 14 Sep 2023 13:56:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699888; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=DdwhY+kZCBzTE/NmFnm9E1ly1plFVcawNyAR5zbkRE0=; b=EAwyctIYEEz/5f7ZRZt4jfaZ5d3LmpcsCzjGK3YKLFovu+5rfLdMqhpLmhIWrpn198lWiz n2NJgX+hR54j2uPm4ZWfNUoUf4g+cXNWKNkySmseMIr9QU7T5WMAxjLeE4DY62WUde3dF7 +/MrePIpQN/xFP9WUAt2+x3xlI3Poc8= X-MC-Unique: wgMNzviDOjGX2Sb8HFv_mw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 12/20] virDomainHostdevSubsys: Convert 'type' field to proper enum type Date: Thu, 14 Sep 2023 15:56:13 +0200 Message-ID: <74983764b05e165b20552d063f20adbfd620038b.1694699682.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699889721100005 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field, and fill in missing cases to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_audit.c | 2 +- src/conf/domain_conf.c | 57 +++++++++++++++++++------------- src/conf/domain_conf.h | 2 +- src/conf/domain_validate.c | 2 +- src/libxl/libxl_driver.c | 12 +++++++ src/lxc/lxc_controller.c | 5 +++ src/lxc/lxc_driver.c | 10 ++++++ src/lxc/lxc_hostdev.c | 5 +++ src/qemu/qemu_command.c | 2 +- src/qemu/qemu_domain.c | 4 +-- src/qemu/qemu_hotplug.c | 4 ++- src/qemu/qemu_migration.c | 2 +- src/qemu/qemu_validate.c | 2 +- src/security/security_apparmor.c | 2 +- src/security/security_dac.c | 4 +-- src/security/security_selinux.c | 4 +-- src/security/virt-aa-helper.c | 3 ++ 17 files changed, 85 insertions(+), 37 deletions(-) diff --git a/src/conf/domain_audit.c b/src/conf/domain_audit.c index 0bf1768acd..4294b50c3a 100644 --- a/src/conf/domain_audit.c +++ b/src/conf/domain_audit.c @@ -353,7 +353,7 @@ virDomainAuditHostdev(virDomainObj *vm, virDomainHostde= vDef *hostdev, =20 switch (hostdev->mode) { case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: - switch ((virDomainHostdevSubsysType) hostdev->source.subsys.type) { + switch (hostdev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: address =3D virPCIDeviceAddressAsString(&pcisrc->addr); break; diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index cf1bd4df74..35cb14b986 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2632,7 +2632,7 @@ virDomainHostdevDefClear(virDomainHostdevDef *def) } break; case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: - switch ((virDomainHostdevSubsysType) def->source.subsys.type) { + switch (def->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: virDomainHostdevSubsysSCSIClear(&def->source.subsys.u.scsi); break; @@ -6168,7 +6168,7 @@ virDomainHostdevSubsysMediatedDevDefParseXML(virDomai= nHostdevDef *def, static int virDomainHostdevDefParseXMLSubsys(xmlNodePtr node, xmlXPathContextPtr ctxt, - const char *type, + virDomainHostdevSubsysType type, virDomainHostdevDef *def, unsigned int flags, virDomainXMLOption *xmlopt) @@ -6202,18 +6202,7 @@ virDomainHostdevDefParseXMLSubsys(xmlNodePtr node, * . (the functions we're going to call expect address * type to already be known). */ - if (!type) { - virReportError(VIR_ERR_XML_ERROR, - "%s", _("missing source address type")); - return -1; - } - - if ((def->source.subsys.type =3D virDomainHostdevSubsysTypeFromString(= type)) < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown host device source address type '%1$s'"), - type); - return -1; - } + def->source.subsys.type =3D type; =20 if (!(sourcenode =3D virXPathNode("./source", ctxt))) { virReportError(VIR_ERR_XML_ERROR, "%s", @@ -6322,6 +6311,7 @@ virDomainHostdevDefParseXMLSubsys(xmlNodePtr node, return -1; break; =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("address type=3D'%1$s' not supported in hostdev i= nterfaces"), @@ -8868,6 +8858,7 @@ virDomainActualNetDefParseXML(xmlNodePtr node, } } else if (actual->type =3D=3D VIR_DOMAIN_NET_TYPE_HOSTDEV) { virDomainHostdevDef *hostdev =3D &actual->data.hostdev.def; + int type; =20 hostdev->parentnet =3D parent; hostdev->info =3D &parent->info; @@ -8879,8 +8870,16 @@ virDomainActualNetDefParseXML(xmlNodePtr node, /* if not explicitly stated, source/vendor implies usb device */ if (!addrtype && virXPathNode("./source/vendor", ctxt)) addrtype =3D g_strdup("usb"); + + if ((type =3D virDomainHostdevSubsysTypeFromString(addrtype)) < 0)= { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("unknown host device source address type '%1$= s'"), + addrtype); + goto error; + } + hostdev->mode =3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS; - if (virDomainHostdevDefParseXMLSubsys(node, ctxt, addrtype, + if (virDomainHostdevDefParseXMLSubsys(node, ctxt, type, hostdev, flags, xmlopt) < 0)= { goto error; } @@ -9544,6 +9543,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt, =20 case VIR_DOMAIN_NET_TYPE_HOSTDEV: { g_autofree char *addrtype =3D virXPathString("string(./source/addr= ess/@type)", ctxt); + int type; =20 def->data.hostdev.def.parentnet =3D def; def->data.hostdev.def.info =3D &def->info; @@ -9556,7 +9556,15 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt, /* The helper function expects type to already be found and * passed in as a string, since it is in a different place in * NetDef vs HostdevDef. */ - if (virDomainHostdevDefParseXMLSubsys(node, ctxt, addrtype, + + if ((type =3D virDomainHostdevSubsysTypeFromString(addrtype)) < 0)= { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("unknown host device source address type '%1$= s'"), + addrtype); + return NULL; + } + + if (virDomainHostdevDefParseXMLSubsys(node, ctxt, type, &def->data.hostdev.def, flags, xmlopt) < 0) return NULL; @@ -12909,8 +12917,7 @@ virDomainHostdevDefParseXML(virDomainXMLOption *xml= opt, { virDomainHostdevDef *def; VIR_XPATH_NODE_AUTORESTORE(ctxt) - g_autofree char *type =3D virXMLPropString(node, "type"); - unsigned int typeU; + unsigned int type; =20 ctxt->node =3D node; =20 @@ -12926,6 +12933,10 @@ virDomainHostdevDefParseXML(virDomainXMLOption *xm= lopt, switch (def->mode) { case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: /* parse managed/mode/type, and the element */ + if (virXMLPropEnum(node, "type", + virDomainHostdevSubsysTypeFromString, + VIR_XML_PROP_REQUIRED, &type) < 0) + goto error; if (virDomainHostdevDefParseXMLSubsys(node, ctxt, type, def, flags= , xmlopt) < 0) goto error; break; @@ -12933,10 +12944,10 @@ virDomainHostdevDefParseXML(virDomainXMLOption *x= mlopt, /* parse managed/mode/type, and the element */ if (virXMLPropEnum(node, "type", virDomainHostdevCapsTypeFromString, - VIR_XML_PROP_REQUIRED, &typeU) < 0) + VIR_XML_PROP_REQUIRED, &type) < 0) goto error; =20 - if (virDomainHostdevDefParseXMLCaps(node, ctxt, typeU, def) < 0) + if (virDomainHostdevDefParseXMLCaps(node, ctxt, type, def) < 0) goto error; break; default: @@ -12953,7 +12964,7 @@ virDomainHostdevDefParseXML(virDomainXMLOption *xml= opt, goto error; } if (def->mode =3D=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) { - switch ((virDomainHostdevSubsysType) def->source.subsys.type) { + switch (def->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: if (virXPathBoolean("boolean(./readonly)", ctxt)) def->readonly =3D true; @@ -14087,7 +14098,7 @@ virDomainHostdevMatchSubsys(virDomainHostdevDef *a, if (a->source.subsys.type !=3D b->source.subsys.type) return 0; =20 - switch ((virDomainHostdevSubsysType) a->source.subsys.type) { + switch (a->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: return virDomainHostdevMatchSubsysPCI(a, b); case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: @@ -23436,7 +23447,7 @@ virDomainHostdevDefFormatSubsys(virBuffer *buf, bool includeTypeInAddr, virDomainXMLOption *xmlopt) { - switch ((virDomainHostdevSubsysType) def->source.subsys.type) { + switch (def->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: virDomainHostdevDefFormatSubsysUSB(buf, def, flags, includeTypeInA= ddr); return 0; diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 0e76ff71ac..fc612f3adb 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -316,7 +316,7 @@ struct _virDomainHostdevSubsysSCSIVHost { }; =20 struct _virDomainHostdevSubsys { - int type; /* enum virDomainHostdevSubsysType */ + virDomainHostdevSubsysType type; union { virDomainHostdevSubsysUSB usb; virDomainHostdevSubsysPCI pci; diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c index a8f90af3aa..1d25aa32c2 100644 --- a/src/conf/domain_validate.c +++ b/src/conf/domain_validate.c @@ -2149,7 +2149,7 @@ static int virDomainHostdevDefValidate(const virDomainHostdevDef *hostdev) { if (hostdev->mode =3D=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) { - switch ((virDomainHostdevSubsysType) hostdev->source.subsys.type) { + switch (hostdev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: if (hostdev->info->type !=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NO= NE && hostdev->info->type !=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_UN= ASSIGNED && diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index c8ca903050..c98d2d737a 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -3271,6 +3271,10 @@ libxlDomainAttachHostDevice(libxlDriverPrivate *driv= er, return -1; break; =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("hostdev subsys type '%1$s' not supported"), @@ -3561,6 +3565,10 @@ libxlDomainAttachDeviceConfig(virDomainDef *vmdef, v= irDomainDeviceDef *dev) case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: return -1; + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV: + break; } =20 if (virDomainHostdevFind(vmdef, hostdev, &found) >=3D 0) { @@ -3835,6 +3843,10 @@ libxlDomainDetachHostDevice(libxlDriverPrivate *driv= er, case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: return libxlDomainDetachHostUSBDevice(driver, vm, hostdev); =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_INTERNAL_ERROR, _("unexpected hostdev type %1$d"), subsys->type= ); diff --git a/src/lxc/lxc_controller.c b/src/lxc/lxc_controller.c index 7e486d0f78..48f5c73fce 100644 --- a/src/lxc/lxc_controller.c +++ b/src/lxc/lxc_controller.c @@ -1776,6 +1776,11 @@ virLXCControllerSetupHostdevSubsys(virDomainDef *vmD= ef, def, securityDriver); =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device mode %1$s"), diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c index a9bdeba36d..25cbfc57c9 100644 --- a/src/lxc/lxc_driver.c +++ b/src/lxc/lxc_driver.c @@ -3848,6 +3848,11 @@ lxcDomainAttachDeviceHostdevSubsysLive(virLXCDriver = *driver, case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: return lxcDomainAttachDeviceHostdevSubsysUSBLive(driver, vm, dev); =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device type %1$s"), @@ -4281,6 +4286,11 @@ lxcDomainDetachDeviceHostdevSubsysLive(virLXCDriver = *driver, case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: return lxcDomainDetachDeviceHostdevUSBLive(driver, vm, dev); =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported host device type %1$s"), diff --git a/src/lxc/lxc_hostdev.c b/src/lxc/lxc_hostdev.c index 2e06b516d4..0c4f0b8cac 100644 --- a/src/lxc/lxc_hostdev.c +++ b/src/lxc/lxc_hostdev.c @@ -76,6 +76,11 @@ int virLXCPrepareHostDevices(virLXCDriver *driver, switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: break; + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_MDEV: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("Unsupported hostdev type %1$s"), diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index ccbf41a0f7..701efd46b4 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -5141,7 +5141,7 @@ qemuBuildHostdevCommandLine(virCommand *cmd, if (hostdev->mode !=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) continue; =20 - switch ((virDomainHostdevSubsysType) subsys->type) { + switch (subsys->type) { /* USB */ case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: if (!(devprops =3D qemuBuildUSBHostdevDevProps(def, hostdev, q= emuCaps))) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 818e3822d0..47c3d69bda 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -10680,7 +10680,7 @@ qemuDomainGetHostdevPath(virDomainHostdevDef *dev, =20 switch (dev->mode) { case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: - switch ((virDomainHostdevSubsysType)dev->source.subsys.type) { + switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: if (pcisrc->backend =3D=3D VIR_DOMAIN_HOSTDEV_PCI_BACKEND_VFIO= ) { if (!(tmpPath =3D virPCIDeviceAddressGetIOMMUGroupDev(&pci= src->addr))) @@ -11488,7 +11488,7 @@ qemuDomainPrepareHostdev(virDomainHostdevDef *hostd= ev, if (hostdev->mode !=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) return 0; =20 - switch ((virDomainHostdevSubsysType)hostdev->source.subsys.type) { + switch (hostdev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: return qemuDomainPrepareHostdevSCSI(hostdev, priv); case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index d4f01cfd93..21154892ae 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -2791,6 +2791,7 @@ qemuDomainAttachHostDevice(virQEMUDriver *driver, return -1; break; =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("hotplug is not supported for hostdev subsys type= '%1$s'"), @@ -4680,7 +4681,7 @@ qemuDomainRemoveHostDevice(virQEMUDriver *driver, if (qemuDomainNamespaceTeardownHostdev(vm, hostdev) < 0) VIR_WARN("Unable to remove host device from /dev"); =20 - switch ((virDomainHostdevSubsysType)hostdev->source.subsys.type) { + switch (hostdev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: qemuDomainRemovePCIHostDevice(driver, vm, hostdev); /* QEMU might no longer need to lock as much memory, eg. we just @@ -5726,6 +5727,7 @@ qemuDomainDetachPrepHostdev(virDomainObj *vm, break; case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: break; + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: virReportError(VIR_ERR_INTERNAL_ERROR, _("unexpected hostdev type %1$d"), subsys->type= ); diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index 9ed5c6e94b..011482c2b5 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -1287,7 +1287,7 @@ qemuMigrationSrcIsAllowedHostdev(const virDomainDef *= def) return false; =20 case VIR_DOMAIN_HOSTDEV_MODE_SUBSYS: - switch ((virDomainHostdevSubsysType)hostdev->source.subsys.typ= e) { + switch (hostdev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: /* USB devices can be "migrated" */ continue; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 18d34e7f59..315fc676f2 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -2448,7 +2448,7 @@ qemuValidateDomainDeviceDefHostdev(const virDomainHos= tdevDef *hostdev, } =20 if (hostdev->mode =3D=3D VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) { - switch ((virDomainHostdevSubsysType) hostdev->source.subsys.type) { + switch (hostdev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: if (hostdev->source.subsys.u.usb.guestReset && !virQEMUCapsGet(qemuCaps, QEMU_CAPS_USB_HOST_GUESTS_RESETS= _ALL)) { diff --git a/src/security/security_apparmor.c b/src/security/security_appar= mor.c index 27d64a23bb..bce797de7c 100644 --- a/src/security/security_apparmor.c +++ b/src/security/security_apparmor.c @@ -846,7 +846,7 @@ AppArmorSetSecurityHostdevLabel(virSecurityManager *mgr, ptr->mgr =3D mgr; ptr->def =3D def; =20 - switch ((virDomainHostdevSubsysType)dev->source.subsys.type) { + switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: { virUSBDevice *usb =3D virUSBDeviceNew(usbsrc->bus, usbsrc->device, vroot); diff --git a/src/security/security_dac.c b/src/security/security_dac.c index 4667328b26..c07e488db7 100644 --- a/src/security/security_dac.c +++ b/src/security/security_dac.c @@ -1230,7 +1230,7 @@ virSecurityDACSetHostdevLabel(virSecurityManager *mgr, if (cbdata.secdef && !cbdata.secdef->relabel) return 0; =20 - switch ((virDomainHostdevSubsysType)dev->source.subsys.type) { + switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: { g_autoptr(virUSBDevice) usb =3D NULL; =20 @@ -1393,7 +1393,7 @@ virSecurityDACRestoreHostdevLabel(virSecurityManager = *mgr, scsisrc->protocol =3D=3D VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISC= SI) return 0; =20 - switch ((virDomainHostdevSubsysType)dev->source.subsys.type) { + switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: { g_autoptr(virUSBDevice) usb =3D NULL; =20 diff --git a/src/security/security_selinux.c b/src/security/security_selinu= x.c index 1fa5303495..07d779a947 100644 --- a/src/security/security_selinux.c +++ b/src/security/security_selinux.c @@ -2184,7 +2184,7 @@ virSecuritySELinuxSetHostdevSubsysLabel(virSecurityMa= nager *mgr, scsisrc->protocol =3D=3D VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISC= SI) return 0; =20 - switch ((virDomainHostdevSubsysType)dev->source.subsys.type) { + switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: { g_autoptr(virUSBDevice) usb =3D NULL; =20 @@ -2420,7 +2420,7 @@ virSecuritySELinuxRestoreHostdevSubsysLabel(virSecuri= tyManager *mgr, scsisrc->protocol =3D=3D VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISC= SI) return 0; =20 - switch ((virDomainHostdevSubsysType)dev->source.subsys.type) { + switch (dev->source.subsys.type) { case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: { g_autoptr(virUSBDevice) usb =3D NULL; =20 diff --git a/src/security/virt-aa-helper.c b/src/security/virt-aa-helper.c index 4638451183..0855eb68ca 100644 --- a/src/security/virt-aa-helper.c +++ b/src/security/virt-aa-helper.c @@ -1106,6 +1106,9 @@ get_files(vahControl * ctl) break; } =20 + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_SCSI_HOST: + case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_LAST: default: rc =3D 0; break; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699946; cv=none; d=zohomail.com; s=zohoarc; b=HsSrGUytSAMxtimk+V4xqLESaLJZCGLVQEE+EKfnT5Yjdazuo+6YGF+Kx8QK2+y1PkHlowccJxCqUQlBfzJaft5T+XyrrQc6fxPNVLn55Gz2BiqnYCw8i/H1AYAquWHFmf0frzIRnAXHdtbSU7yiCIp0SZPVMZrZOTfz+VFcX+o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699946; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=UgskHHsCkHrBtUTeFa1dhsmkFw7R26B6RFHCbv29bIo=; b=XQUlr8idVi33KWqmQx0Xo5oFkXGX265+qcEqP0f2QvyhZ9v83vLuibzQTVXYW+2xMNd9koKOKQOr/9zdzLm2ijYLpTg6FAf7wSYXreSjONEW4EFdpN36JWRmdTAdEQSBqQa36/hxU9HXTBZGNgBmntRl30J/+3lT22XE8ijtbyA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699946403589.2218599675647; Thu, 14 Sep 2023 06:59:06 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-681-uEMLp0GRMm2zcwKoyM_I6g-1; Thu, 14 Sep 2023 09:58:09 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C20A41818E4C; Thu, 14 Sep 2023 13:58:06 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id ACA7C2026D68; Thu, 14 Sep 2023 13:58:06 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 595DE1949758; Thu, 14 Sep 2023 13:56:51 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 146E219451C1 for ; Thu, 14 Sep 2023 13:56:38 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id EA15E40C6ECA; Thu, 14 Sep 2023 13:56:32 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 91F9740C6ECD for ; Thu, 14 Sep 2023 13:56:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699945; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=UgskHHsCkHrBtUTeFa1dhsmkFw7R26B6RFHCbv29bIo=; b=g4ct/sUEx5ZKC6bgrlWe3eLwZirDIh5Ne1eVrSVTkqx0WGH35tr6pefbLjlhha9rQwdInm AhuKp60RfwQr/7DFSVRt/60RukX5cFlByu9+4rHHjdUL+Mz0M8t2BqfImnzVSHEccf10ri t8K4FOJgYaIG7yp2NRBB5C+Wj/6hboU= X-MC-Unique: uEMLp0GRMm2zcwKoyM_I6g-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 13/20] virDomainControllerDef: Convert 'type' field to proper enum type Date: Thu, 14 Sep 2023 15:56:14 +0200 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699946997100003 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and fill in missing cases to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 26 ++++++++++++++++++-------- src/conf/domain_conf.h | 9 ++++++--- src/qemu/qemu_command.c | 2 +- src/qemu/qemu_domain.c | 2 +- src/qemu/qemu_domain_address.c | 12 +++++++++++- src/qemu/qemu_hotplug.c | 4 ++-- src/qemu/qemu_validate.c | 2 +- src/vbox/vbox_common.c | 2 +- 8 files changed, 41 insertions(+), 18 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 35cb14b986..95a71b204f 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -2473,7 +2473,7 @@ virDomainControllerDefNew(virDomainControllerType typ= e) def->model =3D -1; def->idx =3D -1; =20 - switch ((virDomainControllerType) def->type) { + switch (def->type) { case VIR_DOMAIN_CONTROLLER_TYPE_VIRTIO_SERIAL: def->opts.vioserial.ports =3D -1; def->opts.vioserial.vectors =3D -1; @@ -8265,7 +8265,7 @@ static int virDomainControllerModelTypeFromString(const virDomainControllerDef *def, const char *model) { - switch ((virDomainControllerType)def->type) { + switch (def->type) { case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: return virDomainControllerModelSCSITypeFromString(model); case VIR_DOMAIN_CONTROLLER_TYPE_USB: @@ -8293,7 +8293,7 @@ static const char * virDomainControllerModelTypeToString(virDomainControllerDef *def, int model) { - switch ((virDomainControllerType)def->type) { + switch (def->type) { case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: return virDomainControllerModelSCSITypeToString(model); case VIR_DOMAIN_CONTROLLER_TYPE_USB: @@ -8324,7 +8324,7 @@ virDomainControllerDefParseXML(virDomainXMLOption *xm= lopt, unsigned int flags) { g_autoptr(virDomainControllerDef) def =3D NULL; - virDomainControllerType type =3D 0; + virDomainControllerType type =3D VIR_DOMAIN_CONTROLLER_TYPE_IDE; xmlNodePtr driver =3D NULL; g_autofree xmlNodePtr *targetNodes =3D NULL; int ntargetNodes =3D 0; @@ -8539,6 +8539,13 @@ virDomainControllerDefParseXML(virDomainXMLOption *x= mlopt, break; } =20 + case VIR_DOMAIN_CONTROLLER_TYPE_IDE: + case VIR_DOMAIN_CONTROLLER_TYPE_FDC: + case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: + case VIR_DOMAIN_CONTROLLER_TYPE_SATA: + case VIR_DOMAIN_CONTROLLER_TYPE_CCID: + case VIR_DOMAIN_CONTROLLER_TYPE_ISA: + case VIR_DOMAIN_CONTROLLER_TYPE_LAST: default: break; } @@ -16031,7 +16038,10 @@ virDomainEmulatorPinDefParseXML(xmlNodePtr node) =20 =20 virDomainControllerDef * -virDomainDefAddController(virDomainDef *def, int type, int idx, int model) +virDomainDefAddController(virDomainDef *def, + virDomainControllerType type, + int idx, + int model) { virDomainControllerDef *cont; =20 @@ -16106,7 +16116,7 @@ virDomainDefAddUSBController(virDomainDef *def, int= idx, int model) =20 int virDomainDefMaybeAddController(virDomainDef *def, - int type, + virDomainControllerType type, int idx, int model) { @@ -21719,7 +21729,7 @@ virDomainDefCheckABIStability(virDomainDef *src, =20 static int virDomainDefAddDiskControllersForType(virDomainDef *def, - int controllerType, + virDomainControllerType controllerTy= pe, int diskBus) { size_t i; @@ -22981,7 +22991,7 @@ virDomainControllerDefFormat(virBuffer *buf, if (model) virBufferEscapeString(&attrBuf, " model=3D'%s'", model); =20 - switch ((virDomainControllerType) def->type) { + switch (def->type) { case VIR_DOMAIN_CONTROLLER_TYPE_VIRTIO_SERIAL: if (def->opts.vioserial.ports !=3D -1) { virBufferAsprintf(&attrBuf, " ports=3D'%d'", diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index fc612f3adb..9dadda2d1d 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -784,7 +784,7 @@ struct _virDomainXenbusControllerOpts { =20 /* Stores the virtual disk controller configuration */ struct _virDomainControllerDef { - int type; + virDomainControllerType type; int idx; int model; /* -1 =3D=3D undef */ unsigned int queues; @@ -4280,12 +4280,15 @@ VIR_ENUM_DECL(virDomainCpuPlacementMode); VIR_ENUM_DECL(virDomainStartupPolicy); =20 virDomainControllerDef * -virDomainDefAddController(virDomainDef *def, int type, int idx, int model); +virDomainDefAddController(virDomainDef *def, + virDomainControllerType type, + int idx, + int model); int virDomainDefAddUSBController(virDomainDef *def, int idx, int model); int virDomainDefMaybeAddController(virDomainDef *def, - int type, + virDomainControllerType type, int idx, int model); int diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 701efd46b4..17d7bfcfd3 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -2802,7 +2802,7 @@ qemuBuildControllerDevProps(const virDomainDef *domai= nDef, =20 *devprops =3D NULL; =20 - switch ((virDomainControllerType)def->type) { + switch (def->type) { case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: if (!(props =3D qemuBuildControllerSCSIDevProps(def, qemuCaps))) return -1; diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 47c3d69bda..16a8267726 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -5540,7 +5540,7 @@ qemuDomainControllerDefPostParse(virDomainControllerD= ef *cont, virQEMUCaps *qemuCaps, unsigned int parseFlags) { - switch ((virDomainControllerType)cont->type) { + switch (cont->type) { case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: /* Set the default SCSI controller model if not already set */ if (qemuDomainSetSCSIControllerModel(def, cont, qemuCaps) < 0) diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 00742d3c0e..2e58930eec 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -608,7 +608,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, case VIR_DOMAIN_DEVICE_CONTROLLER: { virDomainControllerDef *cont =3D dev->data.controller; =20 - switch ((virDomainControllerType)cont->type) { + switch (cont->type) { case VIR_DOMAIN_CONTROLLER_TYPE_PCI: return virDomainPCIControllerModelToConnectType(cont->model); =20 @@ -1984,6 +1984,16 @@ qemuDomainValidateDevicePCISlotsQ35(virDomainDef *de= f, } } break; + + case VIR_DOMAIN_CONTROLLER_TYPE_IDE: + case VIR_DOMAIN_CONTROLLER_TYPE_FDC: + case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: + case VIR_DOMAIN_CONTROLLER_TYPE_VIRTIO_SERIAL: + case VIR_DOMAIN_CONTROLLER_TYPE_CCID: + case VIR_DOMAIN_CONTROLLER_TYPE_XENBUS: + case VIR_DOMAIN_CONTROLLER_TYPE_ISA: + case VIR_DOMAIN_CONTROLLER_TYPE_LAST: + break; } } =20 diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index 21154892ae..2fbd46325f 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -5534,7 +5534,7 @@ qemuDomainDiskControllerIsBusy(virDomainObj *vm, continue; =20 /* check whether the disk uses this type controller */ - switch ((virDomainControllerType) detach->type) { + switch (detach->type) { case VIR_DOMAIN_CONTROLLER_TYPE_IDE: if (disk->bus !=3D VIR_DOMAIN_DISK_BUS_IDE) continue; @@ -5599,7 +5599,7 @@ static bool qemuDomainControllerIsBusy(virDomainObj *vm, virDomainControllerDef *detach) { - switch ((virDomainControllerType) detach->type) { + switch (detach->type) { case VIR_DOMAIN_CONTROLLER_TYPE_IDE: case VIR_DOMAIN_CONTROLLER_TYPE_FDC: case VIR_DOMAIN_CONTROLLER_TYPE_SCSI: diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 315fc676f2..2fcc86bb22 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -4036,7 +4036,7 @@ qemuValidateDomainDeviceDefController(const virDomain= ControllerDef *controller, if (qemuValidateDomainDeviceDefControllerAttributes(controller) < 0) return -1; =20 - switch ((virDomainControllerType)controller->type) { + switch (controller->type) { case VIR_DOMAIN_CONTROLLER_TYPE_IDE: ret =3D qemuValidateDomainDeviceDefControllerIDE(controller, def); break; diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c index 490f337a56..de3c9989a5 100644 --- a/src/vbox/vbox_common.c +++ b/src/vbox/vbox_common.c @@ -467,7 +467,7 @@ vboxSetStorageController(virDomainControllerDef *contro= ller, int ret =3D -1; =20 /* libvirt controller type =3D> vbox bus type */ - switch ((virDomainControllerType) controller->type) { + switch (controller->type) { case VIR_DOMAIN_CONTROLLER_TYPE_FDC: VBOX_UTF8_TO_UTF16(VBOX_CONTROLLER_FLOPPY_NAME, &controllerName); vboxBusType =3D StorageBus_Floppy; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699843; cv=none; d=zohomail.com; s=zohoarc; b=mp8CYuFfSs5CWKIwXlFXpWmrfNv9TeelLSwQbTRPm/8eRxOfc7nAbryl2de+J29xDMJrGI0EwrBZT2D72dhQdYX0asWKFb+1QlPmzSap+StfGDvvPYhNAPup2D4NVkVC3qw04+z8AnVjWoWWk+jgbnKzvH1oEG8UCeShvKrqsgA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699843; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=4XC754ouJTXTN3f7QNC7CSY/SvsCLOS8bbmdwVfX6JM=; b=ASt3+uIlKF9xj71ixKMxfbpsRsOSc3GMbmr4Poj6LEDnIdaCirkkUs4v+XW1i5mdpQrIX575is07g1O5IKZO4SUUpJ2N6q/hgrtQyjBjYU6d5dp7aHMqcTpGGQfg4wXsuBzzBurLKpOwri556MyC+juK9rLmabzxB0A6LzMNtNc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 169469984384934.477770703652595; Thu, 14 Sep 2023 06:57:23 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-693-_sSLgFGcPPqE_uRtiO65Zw-1; Thu, 14 Sep 2023 09:57:14 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B04F418312C2; Thu, 14 Sep 2023 13:57:12 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 98E8B2026D4B; Thu, 14 Sep 2023 13:57:12 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 3323019452E6; Thu, 14 Sep 2023 13:56:35 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id A343E19452D8 for ; Thu, 14 Sep 2023 13:56:33 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 855B440C6E70; Thu, 14 Sep 2023 13:56:33 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2D49040C6ECE for ; Thu, 14 Sep 2023 13:56:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699842; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=4XC754ouJTXTN3f7QNC7CSY/SvsCLOS8bbmdwVfX6JM=; b=ejAubR0HrlGW8hubTAgJMsL9wWUU5kMaZI+TFZ0vK2wCrhsDRBC0OVhEnQcRjZrXBDXQjp dAo/9sACmzV6A3ssy/HU+yq8I+sPgNWzMP5/yN4qr9gHZV7M2rPfsU/O+FVD69AVt/Smn2 1HNFShNaPmDlrnwNCnvTbnOn495rhzw= X-MC-Unique: _sSLgFGcPPqE_uRtiO65Zw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 14/20] virDomainRNGDef: Convert 'model' field to proper enum type Date: Thu, 14 Sep 2023 15:56:15 +0200 Message-ID: <997ea33fbf3afc079395081521476670f2a0d408.1694699682.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699844845100002 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and adjust the XML parser to use virXMLPropEnum(). Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 13 ++++--------- src/conf/domain_conf.h | 2 +- src/qemu/qemu_domain_address.c | 2 +- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 95a71b204f..3b24d0218d 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -12116,21 +12116,16 @@ virDomainRNGDefParseXML(virDomainXMLOption *xmlop= t, VIR_XPATH_NODE_AUTORESTORE(ctxt) int nbackends; g_autofree xmlNodePtr *backends =3D NULL; - g_autofree char *model =3D NULL; g_autofree char *backend =3D NULL; g_autofree char *type =3D NULL; =20 def =3D g_new0(virDomainRNGDef, 1); =20 - if (!(model =3D virXMLPropString(node, "model"))) { - virReportError(VIR_ERR_XML_ERROR, "%s", _("missing RNG device mode= l")); + if (virXMLPropEnum(node, "model", + virDomainRNGModelTypeFromString, + VIR_XML_PROP_REQUIRED, + &def->model) < 0) goto error; - } - - if ((def->model =3D virDomainRNGModelTypeFromString(model)) < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("unknown RNG model '%= 1$s'"), model); - goto error; - } =20 ctxt->node =3D node; =20 diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 9dadda2d1d..f56c04ce36 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2609,7 +2609,7 @@ typedef enum { } virDomainRNGBackend; =20 struct _virDomainRNGDef { - int model; + virDomainRNGModel model; int backend; unsigned int rate; /* bytes per period */ unsigned int period; /* milliseconds */ diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 2e58930eec..0ed70e5b86 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -912,7 +912,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, break; =20 case VIR_DOMAIN_DEVICE_RNG: - switch ((virDomainRNGModel) dev->data.rng->model) { + switch (dev->data.rng->model) { case VIR_DOMAIN_RNG_MODEL_VIRTIO_TRANSITIONAL: /* Transitional devices only work in conventional PCI slots */ return pciFlags; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699844; cv=none; d=zohomail.com; s=zohoarc; b=QdYnFGSvN9rzpdMoXNnHR3GJqF5miWBpHIzvTid9m+TDsD4b2PaKLaH9UAxhNAGPxgfote56e98CaPJnFNHPE8ozOgD29z3S3tZAjEdYuu4Lfe8EVw6m4HSgbXDOHJoLX9WK3xGjaCEDp8kzujKCea16WBTQGJd9RCjQQwVjClU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699844; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ZIxjOqyGTOjyGl5f1e/nz4+JvGB8VA0ioRl/Yp+JyHQ=; b=CoghIwhfQgdJaOVButLhdf4q5KsaLvQ7R9g03J0HK/P47957Bu3d+3MII6GT/O7b6iJz/vFF32UZzjHiLwV6uXwwARqxqnU+s8bNLpIvmNI80V/JwBivoDccd6V6DmBy72trgoZDC3KGAufR7EobL3KQ6zzI7qB/5BBTTvxpLXE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 1694699844969413.5811621367561; Thu, 14 Sep 2023 06:57:24 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-19-Eb-eOn1cNLW2RcbcD-uHow-1; Thu, 14 Sep 2023 09:57:18 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C0B9188B7AB; Thu, 14 Sep 2023 13:57:14 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9CF2C1054FCB; Thu, 14 Sep 2023 13:57:14 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 67FDD19452F3; Thu, 14 Sep 2023 13:56:35 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 3D6ED19452D8 for ; Thu, 14 Sep 2023 13:56:34 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 20E5840C6EC0; Thu, 14 Sep 2023 13:56:34 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id BD3FC40C6ECE for ; Thu, 14 Sep 2023 13:56:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699844; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=ZIxjOqyGTOjyGl5f1e/nz4+JvGB8VA0ioRl/Yp+JyHQ=; b=GQMDA2+FQI4BQf7wpsL53Jebuuij/KtvSZT05YJc6IeRJuTexWSInVMnwRd1JC4aZY0cZM VSwcThVk0K/4HKSS6Vo+E4Lb7UKnCUay9bUS9oTf+Nlm/mJq7x2D4hFKJXQ2b7L5D9y9n0 +qaD7Ylsbd2wHKXfRijCNKU0X6ZXSAI= X-MC-Unique: Eb-eOn1cNLW2RcbcD-uHow-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 15/20] virDomainRNGDef: Convert 'backend' field to proper enum type Date: Thu, 14 Sep 2023 15:56:16 +0200 Message-ID: <2193eb5ca00ba83c456342478c2c5320ebfe107d.1694699683.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699846479100007 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and adjust the XML parser to use virXMLPropEnum(). Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_audit.c | 4 ++-- src/conf/domain_conf.c | 22 ++++++++-------------- src/conf/domain_conf.h | 2 +- src/qemu/qemu_command.c | 4 ++-- src/qemu/qemu_namespace.c | 2 +- src/qemu/qemu_validate.c | 2 +- 6 files changed, 15 insertions(+), 21 deletions(-) diff --git a/src/conf/domain_audit.c b/src/conf/domain_audit.c index 4294b50c3a..7a6bb02203 100644 --- a/src/conf/domain_audit.c +++ b/src/conf/domain_audit.c @@ -215,7 +215,7 @@ virDomainAuditRNG(virDomainObj *vm, const char *oldsrcpath =3D NULL; =20 if (newDef) { - switch ((virDomainRNGBackend) newDef->backend) { + switch (newDef->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: newsrcpath =3D newDef->source.file; break; @@ -231,7 +231,7 @@ virDomainAuditRNG(virDomainObj *vm, } =20 if (oldDef) { - switch ((virDomainRNGBackend) oldDef->backend) { + switch (oldDef->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: oldsrcpath =3D oldDef->source.file; break; diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 3b24d0218d..47c4170f29 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -12116,7 +12116,6 @@ virDomainRNGDefParseXML(virDomainXMLOption *xmlopt, VIR_XPATH_NODE_AUTORESTORE(ctxt) int nbackends; g_autofree xmlNodePtr *backends =3D NULL; - g_autofree char *backend =3D NULL; g_autofree char *type =3D NULL; =20 def =3D g_new0(virDomainRNGDef, 1); @@ -12151,19 +12150,14 @@ virDomainRNGDefParseXML(virDomainXMLOption *xmlop= t, goto error; } =20 - if (!(backend =3D virXMLPropString(backends[0], "model"))) { - virReportError(VIR_ERR_XML_ERROR, "%s", - _("missing RNG device backend model")); + if (virXMLPropEnum(backends[0], "model", + virDomainRNGBackendTypeFromString, + VIR_XML_PROP_REQUIRED, + &def->backend) < 0) { goto error; } =20 - if ((def->backend =3D virDomainRNGBackendTypeFromString(backend)) < 0)= { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown RNG backend model '%1$s'"), backend); - goto error; - } - - switch ((virDomainRNGBackend) def->backend) { + switch (def->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: def->source.file =3D virXPathString("string(./backend)", ctxt); break; @@ -15197,7 +15191,7 @@ virDomainRNGFind(virDomainDef *def, if (rng->rate !=3D tmp->rate || rng->period !=3D tmp->period) continue; =20 - switch ((virDomainRNGBackend) rng->backend) { + switch (rng->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: if (STRNEQ_NULLABLE(rng->source.file, tmp->source.file)) continue; @@ -25076,7 +25070,7 @@ virDomainRNGDefFormat(virBuffer *buf, } virBufferAsprintf(buf, "backend) { + switch (def->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: virBufferEscapeString(buf, ">%s\n", def->source.file); break; @@ -25117,7 +25111,7 @@ virDomainRNGDefFree(virDomainRNGDef *def) if (!def) return; =20 - switch ((virDomainRNGBackend) def->backend) { + switch (def->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: g_free(def->source.file); break; diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index f56c04ce36..c9b9fbabd3 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2610,7 +2610,7 @@ typedef enum { =20 struct _virDomainRNGDef { virDomainRNGModel model; - int backend; + virDomainRNGBackend backend; unsigned int rate; /* bytes per period */ unsigned int period; /* milliseconds */ =20 diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 17d7bfcfd3..11ede25c0b 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -5361,7 +5361,7 @@ qemuBuildRNGBackendChrdev(virCommand *cmd, { g_autofree char *charAlias =3D qemuAliasChardevFromDevAlias(rng->info.= alias); =20 - switch ((virDomainRNGBackend) rng->backend) { + switch (rng->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: case VIR_DOMAIN_RNG_BACKEND_BUILTIN: case VIR_DOMAIN_RNG_BACKEND_LAST: @@ -5390,7 +5390,7 @@ qemuBuildRNGBackendProps(virDomainRNGDef *rng, =20 objAlias =3D g_strdup_printf("obj%s", rng->info.alias); =20 - switch ((virDomainRNGBackend) rng->backend) { + switch (rng->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: if (qemuMonitorCreateObjectProps(props, "rng-random", objAlias, "s:filename", rng->source.file, diff --git a/src/qemu/qemu_namespace.c b/src/qemu/qemu_namespace.c index f245712f9a..915d44310f 100644 --- a/src/qemu/qemu_namespace.c +++ b/src/qemu/qemu_namespace.c @@ -574,7 +574,7 @@ static int qemuDomainSetupRNG(virDomainRNGDef *rng, GSList **paths) { - switch ((virDomainRNGBackend) rng->backend) { + switch (rng->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: *paths =3D g_slist_prepend(*paths, g_strdup(rng->source.file)); break; diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 2fcc86bb22..fc61c489e9 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -2154,7 +2154,7 @@ qemuValidateDomainRNGDef(const virDomainRNGDef *def, { virDomainCapsDeviceRNG rngCaps =3D { 0 }; =20 - switch ((virDomainRNGBackend) def->backend) { + switch (def->backend) { case VIR_DOMAIN_RNG_BACKEND_RANDOM: if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_RNG_RANDOM)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699857; cv=none; d=zohomail.com; s=zohoarc; b=c3HqEL472aP6UtVwTozXA+pkw7inpIa8F3IA6aURTBo+Bg/QTK6/RPxV/4oajlzOSOtdovnXEdmFymybVlKTh/0phkZcu7ZmHmY77Jd5SVdvoMmSZNDBPr1l2wQH1gZwF1YlQWd/kXthTBcuFZE/2pUMZ+0d1Z2rXII8cwGFxNE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699857; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=CNGriYCe4YKA5CPLsnlUnhOhcwdqdj6M9EQ6i2tqg/E=; b=isJSabF4ZBGVUevdKxkBWH0n6qw97kVabLgsnTuIV8g//NY2Dod3jIZqajqV2RGUWlae1ewVw8o4fe3R7OTk3SDUIhOwf8+I9n1Wuvc0Uz8gAFvkxKve/WPtbHn98U3uaVCCgzfpQG/+nMcFIxwvLf54lu3kRLCCyFo4p+qpfJA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699857929897.3596502925459; Thu, 14 Sep 2023 06:57:37 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-164-FLTBOtC6OD2aF7S9vhgtSA-1; Thu, 14 Sep 2023 09:57:33 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 12543101FAA6; Thu, 14 Sep 2023 13:57:31 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id F05C6200A35C; Thu, 14 Sep 2023 13:57:30 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id F118D19451DA; Thu, 14 Sep 2023 13:56:40 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id CC77819452D8 for ; Thu, 14 Sep 2023 13:56:34 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id C85B740C6EC0; Thu, 14 Sep 2023 13:56:34 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7089540C6ECD for ; Thu, 14 Sep 2023 13:56:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699855; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=CNGriYCe4YKA5CPLsnlUnhOhcwdqdj6M9EQ6i2tqg/E=; b=RgKPAwgz9jQnWIlQPKlE8fzTMPkyZlmTpg06Rvcei7JKB0HgqF3tsqkQXLnW2O/4G6B0BL bm59V5/VAQWwuNhGh/+DB/q2oc9s4Z4PS2uLYpuOkCZrPvPSfIqAIqSf/GTVFWuJM1jVv2 PKWH+FV0v4J/I6r35bTWQmxjGH+foRU= X-MC-Unique: FLTBOtC6OD2aF7S9vhgtSA-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 16/20] virDomainWatchdogDef: Convert 'model' field to proper enum type Date: Thu, 14 Sep 2023 15:56:17 +0200 Message-ID: <1f3cb6006c0e07849a58f13fff97ed6d5d92e8a6.1694699683.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699859152100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and adjust the XML parsers to use virXMLPropEnum(). Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 15 ++++----------- src/conf/domain_conf.h | 2 +- src/qemu/qemu_domain_address.c | 2 +- src/qemu/qemu_validate.c | 2 +- 4 files changed, 7 insertions(+), 14 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 47c4170f29..5c1712cb46 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -12065,21 +12065,14 @@ virDomainWatchdogDefParseXML(virDomainXMLOption *= xmlopt, unsigned int flags) { virDomainWatchdogDef *def; - g_autofree char *model =3D NULL; g_autofree char *action =3D NULL; =20 def =3D g_new0(virDomainWatchdogDef, 1); =20 - model =3D virXMLPropString(node, "model"); - if (model =3D=3D NULL) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("watchdog must contain model name")); - goto error; - } - def->model =3D virDomainWatchdogModelTypeFromString(model); - if (def->model < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown watchdog model '%1$s'"), model); + if (virXMLPropEnum(node, "model", + virDomainWatchdogModelTypeFromString, + VIR_XML_PROP_REQUIRED, + &def->model) < 0) { goto error; } =20 diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index c9b9fbabd3..e7c663b0e9 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -1759,7 +1759,7 @@ typedef enum { } virDomainWatchdogAction; =20 struct _virDomainWatchdogDef { - int model; + virDomainWatchdogModel model; int action; virDomainDeviceInfo info; }; diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 0ed70e5b86..099778b2a8 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -927,7 +927,7 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDevic= eDef *dev, =20 case VIR_DOMAIN_DEVICE_WATCHDOG: /* only one model connects using PCI */ - switch ((virDomainWatchdogModel) dev->data.watchdog->model) { + switch (dev->data.watchdog->model) { case VIR_DOMAIN_WATCHDOG_MODEL_I6300ESB: return pciFlags; =20 diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index fc61c489e9..27fd5b9a99 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -2251,7 +2251,7 @@ qemuValidateDomainWatchdogDef(const virDomainWatchdog= Def *dev, return -1; } =20 - switch ((virDomainWatchdogModel) dev->model) { + switch (dev->model) { case VIR_DOMAIN_WATCHDOG_MODEL_I6300ESB: if (dev->info.type !=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE && dev->info.type !=3D VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI) { --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699863; cv=none; d=zohomail.com; s=zohoarc; b=AazGIxf5HotIFZLc1W29+AZVym8ZUfc0x7pQhFih1GOqwzA17EEScFAYsXkI/FKBGOgamSronHvw2tRFgdpp795SKAITtU8M73eeK5l9FAc0vZiktfmEUzV/YCTS+ZnorxhsfkxUpQ23JoQD45onMlIq3uxvK0um5Tkc3N1eW/g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699863; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=NV0VJJp1zM8Gvt5VAdI16evdi3lSWqKFlpQBIeqB80U=; b=E8VMaaN32+RhV3xEv/LDvHtZYMmfD7QgcuLMOs5dlE2gijiC8PPnqBtuGrJPaC26lFZP0uDlbxzHhOoexk3JDgP6HF1NcBdwW3Zo/VjP5MQ2yDEE7ZeJDopJYe+Wm6geLPreQjzDYNhLGamrmuZ6DSMfjyTt4DSgSN4uV4aTmI0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699863749393.5545335791097; Thu, 14 Sep 2023 06:57:43 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-678-AKl-wLFVOXqmaiGZqQgu9g-1; Thu, 14 Sep 2023 09:57:39 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 69E3F1818E4B; Thu, 14 Sep 2023 13:57:37 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 535B71054FC0; Thu, 14 Sep 2023 13:57:37 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 4073719466FE; Thu, 14 Sep 2023 13:56:43 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 6B5C819452F4 for ; Thu, 14 Sep 2023 13:56:35 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 6496140C6ECE; Thu, 14 Sep 2023 13:56:35 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 0C0F540C6EC0 for ; Thu, 14 Sep 2023 13:56:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699862; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=NV0VJJp1zM8Gvt5VAdI16evdi3lSWqKFlpQBIeqB80U=; b=Io67yM2At/12tbQa8Wk1JeMg8gC1NQdT4UM7qLRq1ABr8Y5VrwrH5IbpaYc5QmZGioiPwE 7vJz9qjkRkc/wifD5ZBQaO9lPP8rHYROdSyu4WOOypv+RQF7phWCQCHgCPXWYELhW9o2mN 3bt1LW4TLT5N3uUQPWDSNK+Y9fZ7wik= X-MC-Unique: AKl-wLFVOXqmaiGZqQgu9g-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 17/20] virDomainWatchdogDef: Convert 'action' field to proper enum type Date: Thu, 14 Sep 2023 15:56:18 +0200 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.3 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699865180100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and adjust the XML parser to use virXMLPropEnumDefault(). Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 17 ++++++----------- src/conf/domain_conf.h | 2 +- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 5c1712cb46..f48020f893 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -12065,7 +12065,6 @@ virDomainWatchdogDefParseXML(virDomainXMLOption *xm= lopt, unsigned int flags) { virDomainWatchdogDef *def; - g_autofree char *action =3D NULL; =20 def =3D g_new0(virDomainWatchdogDef, 1); =20 @@ -12076,16 +12075,12 @@ virDomainWatchdogDefParseXML(virDomainXMLOption *= xmlopt, goto error; } =20 - action =3D virXMLPropString(node, "action"); - if (action =3D=3D NULL) { - def->action =3D VIR_DOMAIN_WATCHDOG_ACTION_RESET; - } else { - def->action =3D virDomainWatchdogActionTypeFromString(action); - if (def->action < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown watchdog action '%1$s'"), action); - goto error; - } + if (virXMLPropEnumDefault(node, "action", + virDomainWatchdogActionTypeFromString, + VIR_XML_PROP_NONE, + &def->action, + VIR_DOMAIN_WATCHDOG_ACTION_RESET) < 0) { + goto error; } =20 if (virDomainDeviceInfoParseXML(xmlopt, node, ctxt, &def->info, flags)= < 0) diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index e7c663b0e9..77e5b26957 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -1760,7 +1760,7 @@ typedef enum { =20 struct _virDomainWatchdogDef { virDomainWatchdogModel model; - int action; + virDomainWatchdogAction action; virDomainDeviceInfo info; }; =20 --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699870; cv=none; d=zohomail.com; s=zohoarc; b=iz1u8wJ4GTbrw2w6A2c2WKJDOxBrMWY/gBt7FLbRoO3olqi//O834kIhGCjOYgQU+vnsQ9tbRohBOAMU00/PpXd9CtORxSePF10GElov3YCAcI/5y9YzSq2xhCu+EWZibfOOIrfgUjDrmUfWghK7t4yRwCezVrNvl5pAPl/G/fA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699870; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+1nQGJWa/zx2G/V+zYQYOwuIfSPCV5VqE4uIM/i/UDI=; b=d7QImNKuBeBxVK/G3S2O8xM6M5Y98a8lYVgOd0f0rMZ94R8lx+5w9FDXGjl1fgCIA+GrfUg5/jir6pOuMeorCnCg8S+yqXm95xCFplP7omD7U37/hJveyFjfKSymPsE7EF5rU7wuJFK9mQBI38EEfZYOGLE8k34pCZPOtENc/TA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699869998186.56018656185972; Thu, 14 Sep 2023 06:57:49 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-198-pqfKMPPnMKKczvO8LTWVGw-1; Thu, 14 Sep 2023 09:57:45 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B2964185A790; Thu, 14 Sep 2023 13:57:42 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9F56E40C2070; Thu, 14 Sep 2023 13:57:42 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 7CD6B19451E8; Thu, 14 Sep 2023 13:56:43 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 1D21819465B9 for ; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 1843540C6E71; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id B456740C6E76 for ; Thu, 14 Sep 2023 13:56:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699869; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=+1nQGJWa/zx2G/V+zYQYOwuIfSPCV5VqE4uIM/i/UDI=; b=CssCWwXMXlKXVTUQrOe5DUZ1VfaeHAfB5NQ+/pXdcFAXa4jPkJr0SsAIBUX2D6vyrx2rsQ yHS/voyLntbfTssfBcGMMyI/6CRtyxwzObMGnzzCar8rEAe0r1HE++5Nl11xChHoKRFBhD N/xLmxJ7lkJTsNqtLsmGFmKlGr35Z5U= X-MC-Unique: pqfKMPPnMKKczvO8LTWVGw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 18/20] virDomainDeviceInfo: Convert 'type' field to proper enum type Date: Thu, 14 Sep 2023 15:56:19 +0200 Message-ID: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699870952100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field, adjust the XML parsers to use virXMLPropEnum() and fill in missing cases to switch() statements. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/device_conf.c | 12 +++++++++++- src/conf/device_conf.h | 4 ++-- src/conf/domain_conf.c | 21 +++++++-------------- src/conf/domain_validate.c | 2 +- src/qemu/qemu_command.c | 4 ++-- src/qemu/qemu_monitor.c | 12 ++++++++++++ src/qemu/qemu_validate.c | 2 +- 7 files changed, 36 insertions(+), 21 deletions(-) diff --git a/src/conf/device_conf.c b/src/conf/device_conf.c index aa0cc8945c..f3d977f2b7 100644 --- a/src/conf/device_conf.c +++ b/src/conf/device_conf.c @@ -98,7 +98,7 @@ virDomainDeviceInfoAddressIsEqual(const virDomainDeviceIn= fo *a, if (a->type !=3D b->type) return false; =20 - switch ((virDomainDeviceAddressType) a->type) { + switch (a->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE: case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_LAST: /* address types below don't have any specific data */ @@ -427,6 +427,16 @@ virDomainDeviceAddressIsValid(virDomainDeviceInfo *inf= o, =20 case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_USB: return true; + + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_SERIAL: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCID: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_ISA: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_DIMM: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_UNASSIGNED: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_LAST: + break; } =20 return false; diff --git a/src/conf/device_conf.h b/src/conf/device_conf.h index f2907dc596..a83377417a 100644 --- a/src/conf/device_conf.h +++ b/src/conf/device_conf.h @@ -32,7 +32,7 @@ #include "virenum.h" =20 typedef enum { - VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE, + VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE =3D 0, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_DRIVE, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_SERIAL, @@ -116,7 +116,7 @@ struct _virDomainDeviceDimmAddress { typedef struct _virDomainDeviceInfo virDomainDeviceInfo; struct _virDomainDeviceInfo { char *alias; - int type; /* virDomainDeviceAddressType */ + virDomainDeviceAddressType type; union { virPCIDeviceAddress pci; virDomainDeviceDriveAddress drive; diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index f48020f893..a743a0628c 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -5366,7 +5366,7 @@ virDomainDeviceInfoFormat(virBuffer *buf, virBufferAsprintf(&attrBuf, " type=3D'%s'", virDomainDeviceAddressTypeToString(info->type)); =20 - switch ((virDomainDeviceAddressType) info->type) { + switch (info->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: if (!virPCIDeviceAddressIsEmpty(&info->addr.pci)) { virBufferAsprintf(&attrBuf, " domain=3D'0x%04x' bus=3D'0x%02x'= " @@ -5539,21 +5539,14 @@ static int virDomainDeviceAddressParseXML(xmlNodePtr address, virDomainDeviceInfo *info) { - g_autofree char *type =3D virXMLPropString(address, "type"); - - if (!type) { - virReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("No type specified for device address")); - return -1; - } - - if ((info->type =3D virDomainDeviceAddressTypeFromString(type)) <=3D 0= ) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown address type '%1$s'"), type); + if (virXMLPropEnum(address, "type", + virDomainDeviceAddressTypeFromString, + VIR_XML_PROP_REQUIRED | VIR_XML_PROP_NONZERO, + &info->type) < 0) { return -1; } =20 - switch ((virDomainDeviceAddressType) info->type) { + switch (info->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: if (virPCIDeviceAddressParseXML(address, &info->addr.pci) < 0) return -1; @@ -19625,7 +19618,7 @@ virDomainDeviceInfoCheckABIStability(virDomainDevic= eInfo *src, return false; } =20 - switch ((virDomainDeviceAddressType) src->type) { + switch (src->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: if (src->addr.pci.domain !=3D dst->addr.pci.domain || src->addr.pci.bus !=3D dst->addr.pci.bus || diff --git a/src/conf/domain_validate.c b/src/conf/domain_validate.c index 1d25aa32c2..e70841c1d6 100644 --- a/src/conf/domain_validate.c +++ b/src/conf/domain_validate.c @@ -2806,7 +2806,7 @@ virDomainDeviceInfoValidate(const virDomainDeviceDef = *dev) if (!(info =3D virDomainDeviceGetInfo(dev))) return 0; =20 - switch ((virDomainDeviceAddressType) info->type) { + switch (info->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE: case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO: diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 11ede25c0b..8a7b80719f 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -541,7 +541,7 @@ qemuBuildDeviceAddressProps(virJSONValue *props, const virDomainDef *domainDef, const virDomainDeviceInfo *info) { - switch ((virDomainDeviceAddressType) info->type) { + switch (info->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: { g_autofree char *pciaddr =3D NULL; g_autofree char *bus =3D qemuBuildDeviceAddressPCIGetBus(domainDef= , info); @@ -981,7 +981,7 @@ qemuBuildVirtioDevGetConfig(const virDomainDeviceDef *d= evice, =20 virBufferAdd(&buf, baseName, -1); =20 - switch ((virDomainDeviceAddressType) info->type) { + switch (info->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: implName =3D "pci"; break; diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c index 7053539c7d..320729f067 100644 --- a/src/qemu/qemu_monitor.c +++ b/src/qemu/qemu_monitor.c @@ -954,6 +954,18 @@ qemuMonitorInitBalloonObjectPath(qemuMonitor *mon, case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW: name =3D "virtio-balloon-ccw"; break; + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_DRIVE: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_SERIAL: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCID: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_USB: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_MMIO: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_ISA: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_DIMM: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_UNASSIGNED: + case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_LAST: default: return; } diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index 27fd5b9a99..36c7941fe9 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -1479,7 +1479,7 @@ qemuValidateDomainDeviceDefAddress(const virDomainDev= iceDef *dev, const virDomainDef *def, virQEMUCaps *qemuCaps) { - switch ((virDomainDeviceAddressType) info->type) { + switch (info->type) { case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI: if (qemuValidateDomainDeviceDefZPCIAddress(info, qemuCaps) < 0) return -1; --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699885; cv=none; d=zohomail.com; s=zohoarc; b=E6HHfu2C6QaRC/UnLglrd8DDhZ30Ro2+9oyDK3iXjHY6gvwVJm9h38pl/Bbd7wqpiStJt5u78/sDv3ed/HyIs7Krt38O8yfmRfJPn8wGwmHTDyJk/l7O1+Ai5oU3E7hf3mfvfDMD5BlGINf6gQpMaLcV0T55+KKnFr9Wwrj4HAk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699885; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=SYG3se9NqE3hiaug9zduZZBooeQxQpLyao29U+djihc=; b=ho0VTjZ+lJMnVaVvbLXgV817fdqfNBmfjrmnieQsSQDdMZY+ugQNuhwLM/JuLT2RtxJs2B5Asdynm+fY5/LX2qzko0zc24RiaUhtfzze/qs4QDoPZQw6NRsVDLqHNnlcGu3cIEFEgoAaJefnKKyFdr81G9kDyLwcCZCxXXeWs64= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699885897236.99438437475965; Thu, 14 Sep 2023 06:58:05 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-163-I97dJC7aPqaoB8fkcT6PWA-1; Thu, 14 Sep 2023 09:57:48 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 89D929291F3; Thu, 14 Sep 2023 13:57:45 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7409B40C2009; Thu, 14 Sep 2023 13:57:45 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id B7AC51946A4F; Thu, 14 Sep 2023 13:56:48 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id ACAF019465B9 for ; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id A884740C6EC0; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id 501A340C6ECE for ; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699885; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=SYG3se9NqE3hiaug9zduZZBooeQxQpLyao29U+djihc=; b=fnkxz0PRkk0Ssjapzzv2FnmgnJXm3Rs7nNogcHbqrHzFIcHFtOmTbcR+QfHkgWpUa/HDKn rA0T9TLoFnzsgb5vvA6zZxxu1rZEcSBtYSK3N/ZqRnwE49g/t7yKjqn+dn3yM9HeRcO/Pu LtfbkBWUzr8XK8tviVmgbv00DlFJ3EU= X-MC-Unique: I97dJC7aPqaoB8fkcT6PWA-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 19/20] virStorageNetHostDef: Convert 'transport' field to proper enum type Date: Thu, 14 Sep 2023 15:56:20 +0200 Message-ID: <9bcd590ca8d550ee09220b951232af0ef022b15e.1694699683.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699887017100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Convert the field and adjust the XML parsers to use virXMLPropEnumDefault(). Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 16 ++++++---------- src/conf/storage_source_conf.h | 2 +- src/qemu/qemu_backup.c | 2 +- src/qemu/qemu_block.c | 2 +- src/qemu/qemu_monitor_json.c | 2 +- src/storage_file/storage_file_backend_gluster.c | 2 +- src/storage_file/storage_source_backingstore.c | 15 +++++++++------ 7 files changed, 20 insertions(+), 21 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index a743a0628c..5f4146b4e3 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -5834,17 +5834,13 @@ virDomainStorageNetworkParseHost(xmlNodePtr hostnod= e, g_autofree char *port =3D NULL; =20 memset(host, 0, sizeof(*host)); - host->transport =3D VIR_STORAGE_NET_HOST_TRANS_TCP; =20 - /* transport can be tcp (default), unix or rdma. */ - if ((transport =3D virXMLPropString(hostnode, "transport"))) { - host->transport =3D virStorageNetHostTransportTypeFromString(trans= port); - if (host->transport < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown protocol transport type '%1$s'"), - transport); - goto cleanup; - } + if (virXMLPropEnumDefault(hostnode, "transport", + virStorageNetHostTransportTypeFromString, + VIR_XML_PROP_NONE, + &host->transport, + VIR_STORAGE_NET_HOST_TRANS_TCP) < 0) { + goto cleanup; } =20 host->socket =3D virXMLPropString(hostnode, "socket"); diff --git a/src/conf/storage_source_conf.h b/src/conf/storage_source_conf.h index f99579bce2..9791fb25ee 100644 --- a/src/conf/storage_source_conf.h +++ b/src/conf/storage_source_conf.h @@ -151,7 +151,7 @@ typedef struct _virStorageNetHostDef virStorageNetHostD= ef; struct _virStorageNetHostDef { char *name; unsigned int port; - int transport; /* virStorageNetHostTransport */ + virStorageNetHostTransport transport; char *socket; /* path to unix socket */ }; =20 diff --git a/src/qemu/qemu_backup.c b/src/qemu/qemu_backup.c index a94869522d..e4db967e2c 100644 --- a/src/qemu/qemu_backup.c +++ b/src/qemu/qemu_backup.c @@ -68,7 +68,7 @@ qemuBackupPrepare(virDomainBackupDef *def) def->server->name =3D g_strdup("localhost"); } =20 - switch ((virStorageNetHostTransport) def->server->transport) { + switch (def->server->transport) { case VIR_STORAGE_NET_HOST_TRANS_TCP: /* TODO: Update qemu.conf to provide a port range, * probably starting at 10809, for obtaining automatic diff --git a/src/qemu/qemu_block.c b/src/qemu/qemu_block.c index d31bbde0f4..97f03002fd 100644 --- a/src/qemu/qemu_block.c +++ b/src/qemu/qemu_block.c @@ -130,7 +130,7 @@ qemuBlockStorageSourceBuildJSONSocketAddress(virStorage= NetHostDef *host) g_autoptr(virJSONValue) server =3D NULL; g_autofree char *port =3D NULL; =20 - switch ((virStorageNetHostTransport) host->transport) { + switch (host->transport) { case VIR_STORAGE_NET_HOST_TRANS_TCP: port =3D g_strdup_printf("%u", host->port); =20 diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c index 5b9edadcf7..137cb4e293 100644 --- a/src/qemu/qemu_monitor_json.c +++ b/src/qemu/qemu_monitor_json.c @@ -6176,7 +6176,7 @@ qemuMonitorJSONNBDServerStart(qemuMonitor *mon, g_autoptr(virJSONValue) addr =3D NULL; g_autofree char *port_str =3D NULL; =20 - switch ((virStorageNetHostTransport)server->transport) { + switch (server->transport) { case VIR_STORAGE_NET_HOST_TRANS_TCP: port_str =3D g_strdup_printf("%u", server->port); addr =3D qemuMonitorJSONBuildInetSocketAddress(server->name, port_= str); diff --git a/src/storage_file/storage_file_backend_gluster.c b/src/storage_= file/storage_file_backend_gluster.c index d018d5422e..950f8e81fe 100644 --- a/src/storage_file/storage_file_backend_gluster.c +++ b/src/storage_file/storage_file_backend_gluster.c @@ -63,7 +63,7 @@ virStorageFileBackendGlusterInitServer(virStorageFileBack= endGlusterPriv *priv, const char *hoststr =3D NULL; int port =3D 0; =20 - switch ((virStorageNetHostTransport) host->transport) { + switch (host->transport) { case VIR_STORAGE_NET_HOST_TRANS_RDMA: case VIR_STORAGE_NET_HOST_TRANS_TCP: hoststr =3D host->name; diff --git a/src/storage_file/storage_source_backingstore.c b/src/storage_f= ile/storage_source_backingstore.c index 00fcfe9fd7..80681924ea 100644 --- a/src/storage_file/storage_source_backingstore.c +++ b/src/storage_file/storage_source_backingstore.c @@ -42,6 +42,7 @@ virStorageSourceParseBackingURI(virStorageSource *src, { g_autoptr(virURI) uri =3D NULL; const char *path =3D NULL; + int transport =3D 0; g_auto(GStrv) scheme =3D NULL; =20 if (!(uri =3D virURIParse(uristr))) { @@ -65,12 +66,14 @@ virStorageSourceParseBackingURI(virStorageSource *src, return -1; } =20 - if (scheme[1] && - (src->hosts->transport =3D virStorageNetHostTransportTypeFromStrin= g(scheme[1])) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, - _("invalid protocol transport type '%1$s'"), - scheme[1]); - return -1; + if (scheme[1]) { + if ((transport =3D virStorageNetHostTransportTypeFromString(scheme= [1])) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, + _("invalid protocol transport type '%1$s'"), + scheme[1]); + return -1; + } + src->hosts->transport =3D transport; } =20 if (uri->query) { --=20 2.41.0 From nobody Sun May 12 00:34:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1694699875; cv=none; d=zohomail.com; s=zohoarc; b=LhS44WOJ44bAbJ8o4nFk21cHevM+jgIiliTlNTIL/0YpTvT9dUrB3yXAvSgJr9YeKoXtmGzSbPiqbS2V7sp6qof8xXlAJR7KlEbQUhz9Utm/Fsm6ov7RCA7/z0LU7lJ08BDqO0uxWqCS2UVHOUU8kGGVa205QFZGK95Wk7PX/64= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1694699875; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=g/+aRJ6xyqMPw7bji8yxzEyKXB2S8+NI2Ck6nfqKtCc=; b=dOuvDgN6sBXWaGBT0qDA1qqaMWDemU+mmwU7f11OZXY5UZgU2vbtlZpYlg4BQ0C7B1nJZn366HJhMrmsWUXQrwQ+ytTroTp9pLXFQs6bTsTL1fdrLQxh8alBN1CfeEkfHJ9U/DqyJDKPReLC34l/OxIo2/ma4u/1nK+6ArDyS3A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mx.zohomail.com with SMTPS id 1694699875849920.5684975102512; Thu, 14 Sep 2023 06:57:55 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-634-rrBfKkthNFW1OBI0-ijVuQ-1; Thu, 14 Sep 2023 09:57:51 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 8743D9291E4; Thu, 14 Sep 2023 13:57:48 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 724CA2026D4B; Thu, 14 Sep 2023 13:57:48 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 0C6021949742; Thu, 14 Sep 2023 13:56:49 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 4826D19465B8 for ; Thu, 14 Sep 2023 13:56:37 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 441A540C6EA8; Thu, 14 Sep 2023 13:56:37 +0000 (UTC) Received: from maggie.brq.redhat.com (unknown [10.43.2.46]) by smtp.corp.redhat.com (Postfix) with ESMTP id DFFFA40C6ECD for ; Thu, 14 Sep 2023 13:56:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1694699874; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=g/+aRJ6xyqMPw7bji8yxzEyKXB2S8+NI2Ck6nfqKtCc=; b=MxOt0CsQaHA8s0k93XQhLoEbdL4HfigasHDCOEC1RNECbj1f13TkNrObJoF8krbbygDv0P BRIYF/mOy5NNPB0hJEQjV3Q/bLb6MaLah1k+hbBz3gUoHpt1zl8jnqinfPoMQL46kJCaiW 6NF0D3qWcVzGzlqqGYGfVPtFf+t8ff8= X-MC-Unique: rrBfKkthNFW1OBI0-ijVuQ-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 20/20] virDomainDiskSourceNVMeParse: Use virXMLPropULongLong() Date: Thu, 14 Sep 2023 15:56:21 +0200 Message-ID: <91793103c6534392f5eea70e230beb7d4be7be3a.1694699683.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.2 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1694699876983100001 Content-Type: text/plain; charset="utf-8"; x-default="true" Inside of virDomainDiskSourceNVMeParse() we have virXMLPropString() + virStrToLong_ull() combo. Switch to virXMLPropULongLong() which does the same thing. Signed-off-by: Michal Privoznik Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_conf.c | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 5f4146b4e3..0efac66f61 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -7229,7 +7229,6 @@ virDomainDiskSourceNVMeParse(xmlNodePtr node, { g_autoptr(virStorageSourceNVMeDef) nvme =3D NULL; g_autofree char *type =3D NULL; - g_autofree char *namespc =3D NULL; xmlNodePtr address; =20 nvme =3D g_new0(virStorageSourceNVMeDef, 1); @@ -7247,16 +7246,9 @@ virDomainDiskSourceNVMeParse(xmlNodePtr node, return -1; } =20 - if (!(namespc =3D virXMLPropString(node, "namespace"))) { - virReportError(VIR_ERR_XML_ERROR, "%s", - _("missing 'namespace' attribute to disk source")); - return -1; - } - - if (virStrToLong_ull(namespc, NULL, 10, &nvme->namespc) < 0) { - virReportError(VIR_ERR_XML_ERROR, - _("malformed namespace '%1$s'"), - namespc); + if (virXMLPropULongLong(node, "namespace", 10, + VIR_XML_PROP_REQUIRED, + &nvme->namespc) < 0) { return -1; } =20 --=20 2.41.0