From nobody Mon Feb 9 06:34:04 2026 Delivered-To: importer@patchew.org Received-SPF: none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; spf=none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1708350782859302.21460173384776; Mon, 19 Feb 2024 05:53:02 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id B83771DCA; Mon, 19 Feb 2024 08:53:01 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 94DF21B51; Mon, 19 Feb 2024 08:50:05 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id ABDC8186A; Mon, 19 Feb 2024 08:49:57 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id A0B971A1B for ; Mon, 19 Feb 2024 08:49:56 -0500 (EST) Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-250-Rpe0AVaJMZi6lOuidWdQ1w-1; Mon, 19 Feb 2024 08:49:55 -0500 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id D6258285F981 for ; Mon, 19 Feb 2024 13:49:54 +0000 (UTC) Received: from speedmetal.lan (unknown [10.45.242.27]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4E02A1BDD1 for ; Mon, 19 Feb 2024 13:49:54 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.4 X-MC-Unique: Rpe0AVaJMZi6lOuidWdQ1w-1 From: Peter Krempa To: devel@lists.libvirt.org Subject: [PATCH 1/8] qemuMigrationDstPrepareStorage: Use 'switch' statement to include all storage types Date: Mon, 19 Feb 2024 14:49:45 +0100 Message-ID: <7f04e09813a8d04d9ad514090d69ff46bc007e66.1708350502.git.pkrempa@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.5 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Message-ID-Hash: EOVW4HWFUKYWVL7UZ3XZ34HA3RJ2SUIM X-Message-ID-Hash: EOVW4HWFUKYWVL7UZ3XZ34HA3RJ2SUIM X-MailFrom: pkrempa@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZM-MESSAGEID: 1708350783687100001 Decrease the likelyhood that addition of a new storage type will be forgotten. This patch also unifies the type check to consult the 'actual' type of the storage in both cases as the NVMe check looked for the XML declared type while virStorageSourceIsLocalStorage() looks for the actual/translated type. Signed-off-by: Peter Krempa --- src/qemu/qemu_migration.c | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index 01ab803842..3e0aae4e7c 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -465,11 +465,27 @@ qemuMigrationDstPrepareStorage(virDomainObj *vm, if (!qemuMigrationAnyCopyDisk(disk, nmigrate_disks, migrate_disks)) continue; - if (disk->src->type =3D=3D VIR_STORAGE_TYPE_NVME) { + switch (virStorageSourceGetActualType(disk->src)) { + case VIR_STORAGE_TYPE_FILE: + case VIR_STORAGE_TYPE_BLOCK: + case VIR_STORAGE_TYPE_DIR: + diskSrcPath =3D virDomainDiskGetSource(disk); + break; + + case VIR_STORAGE_TYPE_NVME: + /* While NVMe disks are local, they are not accessible via src= ->path. + * Therefore, we have to return false here. */ virPCIDeviceAddressGetSysfsFile(&disk->src->nvme->pciAddr, &nv= mePath); diskSrcPath =3D nvmePath; - } else if (virStorageSourceIsLocalStorage(disk->src)) { - diskSrcPath =3D virDomainDiskGetSource(disk); + break; + + case VIR_STORAGE_TYPE_NETWORK: + case VIR_STORAGE_TYPE_VOLUME: + case VIR_STORAGE_TYPE_VHOST_USER: + case VIR_STORAGE_TYPE_VHOST_VDPA: + case VIR_STORAGE_TYPE_LAST: + case VIR_STORAGE_TYPE_NONE: + break; } if (diskSrcPath) { --=20 2.43.0 _______________________________________________ Devel mailing list -- devel@lists.libvirt.org To unsubscribe send an email to devel-leave@lists.libvirt.org