From nobody Fri Dec 19 14:43:28 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1750974890; cv=none; d=zohomail.com; s=zohoarc; b=bNqLbxeHK9sY4CILpFKA2WrT9W6AUQrdyyR47Gxop/I/f1Exoyi0QImKDu9ViLArTTU9+cKDzhJhbSBg7X4MFSLffcqk6isfMxSPmIfYmaI2tuDt2oMScitqU6XSEQQxMTGR3/4mH0RElCHV27iTVsMTbW1kPwTVg7mRy2HynOo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1750974890; h=Content-Transfer-Encoding:Date:Date:From:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:Subject:Subject:To:To:Message-Id:Cc; bh=EIH5WzY8sxJZ6MJ/OhMSSzZWImlbXHyIcS5aYwQ1oh8=; b=SLgjgwNGuBPFBF7xwsr6wKCiRGzTGwJKAqehsmn7M8eleG3N5ZxsxDM2lBJ+A7xbfAImWHdysWArgQSTErZ8UsTafnDTi9NcFMpnEstFLhDOAoKF3z1B4oOKt8tl6ZyAncpr5/4g68LNAzopJtuPiepd9BDSPnyFZSeSTgtTiWA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 175097489041260.34080573905487; Thu, 26 Jun 2025 14:54:50 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 996) id 63B4013B0; Thu, 26 Jun 2025 17:54:49 -0400 (EDT) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id B4DD61316; Thu, 26 Jun 2025 17:54:05 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 996) id B6EAB12F8; Thu, 26 Jun 2025 17:54:01 -0400 (EDT) Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) (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 62FCE123E for ; Thu, 26 Jun 2025 17:54:00 -0400 (EDT) Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-3a50fc7ac4dso743828f8f.0 for ; Thu, 26 Jun 2025 14:54:00 -0700 (PDT) Received: from localhost ([192.150.156.47]) by smtp.gmail.com with UTF8SMTPSA id d2e1a72fcca58-74af56ce594sm626274b3a.129.2025.06.26.14.53.57 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Jun 2025 14:53:58 -0700 (PDT) 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=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1750974839; x=1751579639; darn=lists.libvirt.org; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=wVc325SQhz1fo9I8IU/TdIwCCZOZ6TJR95J6FLbwMdw=; b=KcUciNlIcGE3uv4DZbe9TuFk2dpOhPLx2ef7OyvP9d3ip3P/0LszikXBG+9Mv3HwNw wmxccK9OAjXP/FgngvPKp20N7+11HlFGtEaKTo65a6G/bLCpq7l0gS/sUM/UEzzjn/Xr 52wdjYcDKR6WJ5Mn/RetvN5bc6FPhx5DV9aBnn610rzplYMQ5bAuQzmPXjYf7CysIZ8+ Fu6KfXqZ69abUZYvBxJKLObNLcQAS3Hvxey1HP49aVmhVTH3dLxlG/KAhiIwAhf3y83X 1LuceF5pAl48tg6mxP9b0w+etyT8U6/qdo5P4eeNJJcH/KMpg6AU6hSReZbtpzAlrY6X XjXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750974839; x=1751579639; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=wVc325SQhz1fo9I8IU/TdIwCCZOZ6TJR95J6FLbwMdw=; b=VoJnmT+vTcasgGcxKEP6fIIvFSWQUn07VCQ1p6lWYO3Mxv3LK3pw/g26+ksOT8x4PU vqIhnbzc9mleYO0hSXh8I/eFA2OFSRNwD+9T8/R9tRM68o8nMSbUIiLiK67YdMsGc7Bu tCZdN9sardLGvQB5/NXKp7kSJ14JvfNWDhhRXXSwTYZ/OCjphvD6gpYlhr0RFtbABWTL +JbWyrvw9bt6nFADS4/0JNGBtiG8tSxosxNoULD/6FKapw0nn8DZjpZbX3WrtIQ4k620 floT7iH38e9FLdTqTYZfUOn//ddbONRlgEFYMpE1/p1J8ZMcD7+DdRZFxZWmEa/a0I+A iBTg== X-Gm-Message-State: AOJu0YwQteP0Jmyngy+y3x/u0CWTjDuG0HEwnJP4bIkh+2VmaImqglV4 vG3ZEMteGK5GRUu0mAp+S70dxDeY3NH1afqNMuwXzmS3q+KDQPrUBCdhxh0PXsCEjiLjNHqWMUg EjdvddPA= X-Gm-Gg: ASbGncuF5JqLZGJHyet5i1SYHLDrUR6RJXEB3xfbqujZrNhehN4BfRHfW6Q7PxwRIYG zGUVxuzMFjKJi714IrzkcuZ4EH/QRG8K0voJus2PXGcyvaURnLxJTlqlJg1gIOTl3qK3e70WkQp DhLlQ1ZxWAHynxJ2faSS+JfWrIqhUCR3NTYTxFMpkEaziyPJLcvP+IbH8mF5W7AapuIkqeLVVk0 lpfsFj35Hf8bRAokTRs3YgkO01Phc00Z6vDQkod69mSWDhTyOWSwa6GFxiwvpgTdz9J3KltZCpx 4LexAsKrBqQT4pw/uqWw0LjKJPTN5DyE0rAeygRyGmH37PZ3b6RFQYg= X-Google-Smtp-Source: AGHT+IHoSgArg1YuhkrKTOBw1crqE6Qb/on1SxulnPUM+YcR2fdpUgKaOqeKJo0p1GAI+OaPndMZOA== X-Received: by 2002:adf:9ccf:0:b0:3a5:1cc5:aa6f with SMTP id ffacd0b85a97d-3a8ffcc9e23mr642207f8f.34.1750974838935; Thu, 26 Jun 2025 14:53:58 -0700 (PDT) To: devel@lists.libvirt.org Subject: [PATCH] qemu: Switch to virtio-scsi on ARM Date: Thu, 26 Jun 2025 15:29:58 -0600 Message-ID: <20250626215356.23591-1-jfehlig@suse.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Message-ID-Hash: B45SLRWLS2TFVLLNFNPF3GAN2UZZ5YAA X-Message-ID-Hash: B45SLRWLS2TFVLLNFNPF3GAN2UZZ5YAA X-MailFrom: jfehlig@suse.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: From: Jim Fehlig via Devel Reply-To: Jim Fehlig X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1750974892950116600 Content-Type: text/plain; charset="utf-8" From: Jim Fehlig Similar to x86, the default SCSI controller model for ARM is lsilogic. But unlike x86, the ARM virt machine type prefers virtio devices. Switch the default controller model for ARM from lsilogic to virtio-scsi. Signed-off-by: Jim Fehlig --- IMO, the lsilogic SCSI controller is a poor default for the ARM virt machine type. One could argue modern operating systems are more likely to contain a functional virtio-scsi driver than an LSI one. However, I do understand this change could break existing ARM VM configurations containing a SCSI controller without a model specification. One could also argue the pain inflicted is tolerable :-). The test churn is interesting. I haven't yet investigated if there's an underlying bug, or if it's a consequence of libvirt's processing of controllers. Much appreciated if anyone has an explanation handy :-). src/qemu/qemu_domain.c | 3 ++- ...ault-models.aarch64-latest.abi-update.args | 13 +++++------ ...fault-models.aarch64-latest.abi-update.xml | 22 ++++++++----------- ...64-virt-default-models.aarch64-latest.args | 13 +++++------ ...h64-virt-default-models.aarch64-latest.xml | 22 ++++++++----------- 5 files changed, 32 insertions(+), 41 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 0d2548d8d4..499db0ad78 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -4252,7 +4252,8 @@ qemuDomainGetSCSIControllerModel(const virDomainDef *= def, =20 if (qemuDomainIsPSeries(def)) return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI; - if (ARCH_IS_S390(def->os.arch) || qemuDomainIsLoongArchVirt(def)) + if (ARCH_IS_ARM(def->os.arch) || ARCH_IS_S390(def->os.arch) || + qemuDomainIsLoongArchVirt(def)) return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI; if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_SCSI_LSI)) return VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSILOGIC; diff --git a/tests/qemuxmlconfdata/aarch64-virt-default-models.aarch64-late= st.abi-update.args b/tests/qemuxmlconfdata/aarch64-virt-default-models.aarc= h64-latest.abi-update.args index 96fb251d80..ff86567c59 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-default-models.aarch64-latest.abi-= update.args +++ b/tests/qemuxmlconfdata/aarch64-virt-default-models.aarch64-latest.abi-= update.args @@ -29,20 +29,19 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-guest= /.config \ -device '{"driver":"pcie-root-port","port":8,"chassis":1,"id":"pci.1","bus= ":"pcie.0","multifunction":true,"addr":"0x1"}' \ -device '{"driver":"pcie-root-port","port":9,"chassis":2,"id":"pci.2","bus= ":"pcie.0","addr":"0x1.0x1"}' \ -device '{"driver":"pcie-root-port","port":10,"chassis":3,"id":"pci.3","bu= s":"pcie.0","addr":"0x1.0x2"}' \ --device '{"driver":"pcie-pci-bridge","id":"pci.4","bus":"pci.1","addr":"0x= 0"}' \ --device '{"driver":"pcie-root-port","port":11,"chassis":5,"id":"pci.5","bu= s":"pcie.0","addr":"0x1.0x3"}' \ --device '{"driver":"pcie-root-port","port":12,"chassis":6,"id":"pci.6","bu= s":"pcie.0","addr":"0x1.0x4"}' \ --device '{"driver":"qemu-xhci","id":"usb","bus":"pci.3","addr":"0x0"}' \ --device '{"driver":"lsi","id":"scsi0","bus":"pci.4","addr":"0x1"}' \ +-device '{"driver":"pcie-root-port","port":11,"chassis":4,"id":"pci.4","bu= s":"pcie.0","addr":"0x1.0x3"}' \ +-device '{"driver":"pcie-root-port","port":12,"chassis":5,"id":"pci.5","bu= s":"pcie.0","addr":"0x1.0x4"}' \ +-device '{"driver":"qemu-xhci","id":"usb","bus":"pci.2","addr":"0x0"}' \ +-device '{"driver":"virtio-scsi-pci","id":"scsi0","bus":"pci.3","addr":"0x= 0"}' \ -netdev '{"type":"user","id":"hostnet0"}' \ --device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":= "52:54:00:09:a4:37","bus":"pci.2","addr":"0x0"}' \ +-device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":= "52:54:00:09:a4:37","bus":"pci.1","addr":"0x0"}' \ -chardev pty,id=3Dcharserial0 \ -serial chardev:charserial0 \ -chardev socket,id=3Dchrtpm,path=3D/dev/test \ -tpmdev emulator,id=3Dtpm-tpm0,chardev=3Dchrtpm \ -device '{"driver":"tpm-tis-device","tpmdev":"tpm-tpm0","id":"tpm0"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device '{"driver":"virtio-gpu-pci","id":"video0","max_outputs":1,"bus":"p= ci.5","addr":"0x0"}' \ +-device '{"driver":"virtio-gpu-pci","id":"video0","max_outputs":1,"bus":"p= ci.4","addr":"0x0"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -device '{"driver":"pvpanic-pci","bus":"pcie.0","addr":"0x2"}' \ -msg timestamp=3Don diff --git a/tests/qemuxmlconfdata/aarch64-virt-default-models.aarch64-late= st.abi-update.xml b/tests/qemuxmlconfdata/aarch64-virt-default-models.aarch= 64-latest.abi-update.xml index f27e7e1522..5abf55cf36 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-default-models.aarch64-latest.abi-= update.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-default-models.aarch64-latest.abi-= update.xml @@ -21,11 +21,11 @@ /usr/bin/qemu-system-aarch64 +
+ +
- -
- @@ -42,24 +42,20 @@
- - -
- - + - +
- + - +
-
+
@@ -75,7 +71,7 @@