From nobody Mon Feb 9 10:30:14 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 1709056094761204.51941371570877; Tue, 27 Feb 2024 09:48:14 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id BAAA718E4; Tue, 27 Feb 2024 12:48:13 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id E6A341EB3; Tue, 27 Feb 2024 11:42:31 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 1A1BC1EA4; Tue, 27 Feb 2024 11:42:01 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.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 56B181996 for ; Tue, 27 Feb 2024 11:36:54 -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-161-ZO2lR3wHNm2pUHQJDWvgxQ-1; Tue, 27 Feb 2024 11:36:52 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) (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 5318A3C0DD02 for ; Tue, 27 Feb 2024 16:36:52 +0000 (UTC) Received: from speedmetal.redhat.com (unknown [10.45.242.12]) by smtp.corp.redhat.com (Postfix) with ESMTP id BF5911C060B1 for ; Tue, 27 Feb 2024 16:36:51 +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_H2,SPF_HELO_NONE, T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.4 X-MC-Unique: ZO2lR3wHNm2pUHQJDWvgxQ-1 From: Peter Krempa To: devel@lists.libvirt.org Subject: [PATCH 24/25] qemu: command: Don't downgrade to '-usb' for arm based machines Date: Tue, 27 Feb 2024 17:36:26 +0100 Message-ID: <69db7a372d3fb90db77b13f5c20a2db297d539ad.1709051442.git.pkrempa@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.7 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Message-ID-Hash: NWQHZBV5OTGVO4S6SXY7TZPS4WT43GY5 X-Message-ID-Hash: NWQHZBV5OTGVO4S6SXY7TZPS4WT43GY5 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: 1709056096145100001 - 'virt*' machines already don't allow downgrade - 'versatilepb' and 'realview' machines use 'pci-ohci' controller with '-u= sb' - all other machines ignore '-usb' (some have sysbus-based USB controller which we don't even consider) For the 'versatilepb' and 'realview' machines libvirt would already resort to picking either an existing controller model or trying to pick the one which '-usb' would select and thus fail either way. All other machine types ignore it. We can thus remove the fallback for all arm-based machines. Signed-off-by: Peter Krempa --- src/qemu/qemu_command.c | 2 +- ...usb-minimal.aarch64-latest.abi-update.args | 1 - .../aarch64-nousb-minimal.aarch64-latest.args | 1 - .../arm-vexpressa9-basic.aarch64-latest.args | 1 - .../arm-vexpressa9-nodevs.aarch64-latest.args | 1 - .../arm-vexpressa9-virtio.aarch64-latest.args | 1 - .../disk-arm-virtio-sd.aarch64-latest.args | 1 - ...able-versatilepb-armv7l.armv7l-latest.args | 32 ------------------- ...lable-versatilepb-armv7l.armv7l-latest.err | 1 + tests/qemuxmlconftest.c | 1 + 10 files changed, 3 insertions(+), 39 deletions(-) delete mode 100644 tests/qemuxmlconfdata/usb-controller-default-unavailabl= e-versatilepb-armv7l.armv7l-latest.args create mode 100644 tests/qemuxmlconfdata/usb-controller-default-unavailabl= e-versatilepb-armv7l.armv7l-latest.err diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 16776bb484..2d6f930756 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -2924,7 +2924,7 @@ qemuBuildDomainForbidLegacyUSBController(const virDom= ainDef *def) { if (ARCH_IS_X86(def->os.arch) || ARCH_IS_PPC(def->os.arch) || - qemuDomainIsARMVirt(def) || + ARCH_IS_ARM(def->os.arch) || qemuDomainIsRISCVVirt(def)) return true; diff --git a/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.abi= -update.args b/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.a= bi-update.args index dc67ca5f75..a3d0f7a4fc 100644 --- a/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.abi-update= .args +++ b/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.abi-update= .args @@ -25,7 +25,6 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-aarch64= test/.config \ -rtc base=3Dutc \ -no-shutdown \ -boot strict=3Don \ --usb \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.arg= s b/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.args index dc67ca5f75..a3d0f7a4fc 100644 --- a/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.args +++ b/tests/qemuxmlconfdata/aarch64-nousb-minimal.aarch64-latest.args @@ -25,7 +25,6 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-aarch64= test/.config \ -rtc base=3Dutc \ -no-shutdown \ -boot strict=3Don \ --usb \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxmlconfdata/arm-vexpressa9-basic.aarch64-latest.args= b/tests/qemuxmlconfdata/arm-vexpressa9-basic.aarch64-latest.args index 1ffef8383e..72d10a732e 100644 --- a/tests/qemuxmlconfdata/arm-vexpressa9-basic.aarch64-latest.args +++ b/tests/qemuxmlconfdata/arm-vexpressa9-basic.aarch64-latest.args @@ -30,7 +30,6 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-armtest= /.config \ -initrd /arm.initrd \ -append 'console=3DttyAMA0,115200n8 rw root=3D/dev/mmcblk0p3 rootwait phys= map.enabled=3D0' \ -dtb /arm.dtb \ --usb \ -drive file=3D/arm.raw,format=3Draw,if=3Dsd,index=3D0 \ -netdev '{"type":"user","id":"hostnet0"}' \ -net nic,macaddr=3D52:54:00:09:a4:37,netdev=3Dhostnet0,model=3Dlan9118,id= =3Dnet0 \ diff --git a/tests/qemuxmlconfdata/arm-vexpressa9-nodevs.aarch64-latest.arg= s b/tests/qemuxmlconfdata/arm-vexpressa9-nodevs.aarch64-latest.args index 86c0d47849..de96ada570 100644 --- a/tests/qemuxmlconfdata/arm-vexpressa9-nodevs.aarch64-latest.args +++ b/tests/qemuxmlconfdata/arm-vexpressa9-nodevs.aarch64-latest.args @@ -30,7 +30,6 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-armtest= /.config \ -initrd /arm.initrd \ -append console=3DttyAMA0,115200n8 \ -dtb /arm.dtb \ --usb \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxmlconfdata/arm-vexpressa9-virtio.aarch64-latest.arg= s b/tests/qemuxmlconfdata/arm-vexpressa9-virtio.aarch64-latest.args index 79b569aa38..b4c295be6b 100644 --- a/tests/qemuxmlconfdata/arm-vexpressa9-virtio.aarch64-latest.args +++ b/tests/qemuxmlconfdata/arm-vexpressa9-virtio.aarch64-latest.args @@ -31,7 +31,6 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-armtest= /.config \ -append 'console=3DttyAMA0,115200n8 rw root=3D/dev/vda3 rootwait physmap.e= nabled=3D0' \ -dtb /arm.dtb \ -device '{"driver":"virtio-serial-device","id":"virtio-serial0"}' \ --usb \ -blockdev '{"driver":"file","filename":"/arm.raw","node-name":"libvirt-1-s= torage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"raw= ","file":"libvirt-1-storage"}' \ -device '{"driver":"virtio-blk-device","drive":"libvirt-1-format","id":"vi= rtio-disk0","bootindex":1}' \ diff --git a/tests/qemuxmlconfdata/disk-arm-virtio-sd.aarch64-latest.args b= /tests/qemuxmlconfdata/disk-arm-virtio-sd.aarch64-latest.args index 2572b51f95..3328189b44 100644 --- a/tests/qemuxmlconfdata/disk-arm-virtio-sd.aarch64-latest.args +++ b/tests/qemuxmlconfdata/disk-arm-virtio-sd.aarch64-latest.args @@ -30,7 +30,6 @@ XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-armtest= /.config \ -initrd /arm.initrd \ -append 'console=3DttyAMA0,115200n8 rw root=3D/dev/vda3 rootwait physmap.e= nabled=3D0' \ -dtb /arm.dtb \ --usb \ -drive file=3D/arm-sd.qcow2,format=3Dqcow2,if=3Dsd,index=3D0 \ -drive file.driver=3Dnbd,file.server.type=3Dinet,file.server.host=3Dlocalh= ost,file.server.port=3D10809,file.export=3Dexport,format=3Dqcow2,if=3Dsd,in= dex=3D1 \ -drive file.driver=3Dgluster,file.volume=3DVolume3,file.path=3DImage.qcow2= ,file.server.0.type=3Dinet,file.server.0.host=3Dexample.org,file.server.0.p= ort=3D6000,file.server.1.type=3Dinet,file.server.1.host=3Dexample.org,file.= server.1.port=3D24007,file.server.2.type=3Dunix,file.server.2.path=3D/path/= to/sock,file.debug=3D4,format=3Dqcow2,if=3Dsd,index=3D2 \ diff --git a/tests/qemuxmlconfdata/usb-controller-default-unavailable-versa= tilepb-armv7l.armv7l-latest.args b/tests/qemuxmlconfdata/usb-controller-def= ault-unavailable-versatilepb-armv7l.armv7l-latest.args deleted file mode 100644 index d7bad74061..0000000000 --- a/tests/qemuxmlconfdata/usb-controller-default-unavailable-versatilepb-= armv7l.armv7l-latest.args +++ /dev/null @@ -1,32 +0,0 @@ -LC_ALL=3DC \ -PATH=3D/bin \ -HOME=3D/var/lib/libvirt/qemu/domain--1-armv7ltest \ -USER=3Dtest \ -LOGNAME=3Dtest \ -XDG_DATA_HOME=3D/var/lib/libvirt/qemu/domain--1-armv7ltest/.local/share \ -XDG_CACHE_HOME=3D/var/lib/libvirt/qemu/domain--1-armv7ltest/.cache \ -XDG_CONFIG_HOME=3D/var/lib/libvirt/qemu/domain--1-armv7ltest/.config \ -/usr/bin/qemu-system-armv7l \ --name guest=3Darmv7ltest,debug-threads=3Don \ --S \ --object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/va= r/lib/libvirt/qemu/domain--1-armv7ltest/master-key.aes"}' \ --machine versatilepb,usb=3Doff,dump-guest-core=3Doff,memory-backend=3Dvers= atile.ram \ --accel tcg \ --cpu arm926 \ --m size=3D1048576k \ --object '{"qom-type":"memory-backend-ram","id":"versatile.ram","size":1073= 741824}' \ --overcommit mem-lock=3Doff \ --smp 1,sockets=3D1,cores=3D1,threads=3D1 \ --uuid 6ba410c5-1e5c-4d57-bee7-2228e7ffa32f \ --display none \ --no-user-config \ --nodefaults \ --chardev socket,id=3Dcharmonitor,fd=3D1729,server=3Don,wait=3Doff \ --mon chardev=3Dcharmonitor,id=3Dmonitor,mode=3Dcontrol \ --rtc base=3Dutc \ --no-shutdown \ --boot strict=3Don \ --usb \ --audiodev '{"id":"audio1","driver":"none"}' \ --sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ --msg timestamp=3Don diff --git a/tests/qemuxmlconfdata/usb-controller-default-unavailable-versa= tilepb-armv7l.armv7l-latest.err b/tests/qemuxmlconfdata/usb-controller-defa= ult-unavailable-versatilepb-armv7l.armv7l-latest.err new file mode 100644 index 0000000000..7a71aa107d --- /dev/null +++ b/tests/qemuxmlconfdata/usb-controller-default-unavailable-versatilepb-= armv7l.armv7l-latest.err @@ -0,0 +1 @@ +unsupported configuration: no model provided for USB controller diff --git a/tests/qemuxmlconftest.c b/tests/qemuxmlconftest.c index ffe2ad0bd1..f7f533777f 100644 --- a/tests/qemuxmlconftest.c +++ b/tests/qemuxmlconftest.c @@ -1921,6 +1921,7 @@ mymain(void) DO_TEST_FULL("usb-controller-default-unavailable-versatilepb-armv7l", = ".armv7l-latest", ARG_CAPS_ARCH, "armv7l", ARG_CAPS_VER, "latest", + ARG_FLAGS, FLAG_EXPECT_FAILURE, ARG_QEMU_CAPS_DEL, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_PC= I_OHCI, QEMU_CAPS_LAST, ARG_END); --=20 2.43.0 _______________________________________________ Devel mailing list -- devel@lists.libvirt.org To unsubscribe send an email to devel-leave@lists.libvirt.org