From nobody Wed May 15 22:59:07 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=1647621678; cv=none; d=zohomail.com; s=zohoarc; b=ItNvkzao+Yil1X1bCheb3Pl6UYY0b1RUUpxvWtObPnltUiE9WD6w3Af9kX7hKLAgfLOsgnz/BnsclIcKaMi32ohwxJ12sui5XNppKLeTfeMq1TFusvUCPT5ntrVfW1IrjsIq+SmZBc79LPE2JY9W9QInDqXaqtn4e30DTVluRoQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1647621678; 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=S4aKtGBO8jEH2+FlUZBt8Ahoek5brbRg9fX8DHdK7Kc=; b=UwcTpv2eIvxJNsGAp+JvY861nXgNveKli/lla6sAQ7NsbRfmzlz9AbHRSgo/2TMHmCEKm7fxqqpqeIsENSLV6ke/iTdnIM4WaegmXQFyQZBoDJl5LEeGfUbs29mDp5BE8CcRkiY5BJlfQnLk5XiMcANBQVl9loqQ7/x9ErDa9p4= 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 1647621678307415.931984664099; Fri, 18 Mar 2022 09:41:18 -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-182-J6O-_7KtOEumXIm6ocLfXw-1; Fri, 18 Mar 2022 12:40:41 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 47C07185A794; Fri, 18 Mar 2022 16:40:35 +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 316674066C82; Fri, 18 Mar 2022 16:40:35 +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 D7874193F6E5; Fri, 18 Mar 2022 16:40:34 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id DB23E194034E for ; Fri, 18 Mar 2022 16:40:31 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id AF0BA145B979; Fri, 18 Mar 2022 16:40:31 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.195.98]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 16AA6145B978 for ; Fri, 18 Mar 2022 16:40:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647621677; 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=S4aKtGBO8jEH2+FlUZBt8Ahoek5brbRg9fX8DHdK7Kc=; b=Q1mwu6d/iSSw//KISzcMjmGEYMzQQ8N4W/xxBhu0nmgJBQu5Zv3wG/snlwN4DO91qRvc2K 5bDFJKuAUzsA7QtUepJCpO5BsJbGnmCbnhkLzrBEOBlzjvkMdtsA4Z25EsWXuutyY+3TsL 7flSlaRKwKdouRSgpfrb5ZYLlPqBpbc= X-MC-Unique: J6O-_7KtOEumXIm6ocLfXw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 01/17] tests: Add capabilities for QEMU 7.0.0 on aarch64 Date: Fri, 18 Mar 2022 17:40:12 +0100 Message-Id: <20220318164028.1185357-2-abologna@redhat.com> In-Reply-To: <20220318164028.1185357-1-abologna@redhat.com> References: <20220318164028.1185357-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 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 2.84 on 10.11.54.1 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com 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: 1647621679645100001 Content-Type: text/plain; charset="utf-8" The QEMU binary is built from the v7.0.0-rc0 tag. This causes the argument to -device to be generated in JSON format, same as what 1a691fe1c840 has done for x86_64. Signed-off-by: Andrea Bolognani --- .../qemu_7.0.0-virt.aarch64.xml | 193 + tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 187 + .../caps_7.0.0.aarch64.replies | 32265 ++++++++++++++++ .../caps_7.0.0.aarch64.xml | 551 + ...fault-cpu-kvm-virt-4.2.aarch64-latest.args | 6 +- ...fault-cpu-tcg-virt-4.2.aarch64-latest.args | 6 +- .../aarch64-tpm.aarch64-latest.args | 2 +- .../aarch64-virt-graphics.aarch64-latest.args | 36 +- .../aarch64-virt-headless.aarch64-latest.args | 28 +- ...ult-video-type-aarch64.aarch64-latest.args | 6 +- .../disk-arm-virtio-sd.aarch64-latest.args | 2 +- ...e-expander-bus-aarch64.aarch64-latest.args | 2 +- 12 files changed, 33240 insertions(+), 44 deletions(-) create mode 100644 tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml create mode 100644 tests/domaincapsdata/qemu_7.0.0.aarch64.xml create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0.aarch64.replies create mode 100644 tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml diff --git a/tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml b/tests/domai= ncapsdata/qemu_7.0.0-virt.aarch64.xml new file mode 100644 index 0000000000..7a8cb9f113 --- /dev/null +++ b/tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml @@ -0,0 +1,193 @@ + + /usr/bin/qemu-system-aarch64 + kvm + virt-7.0 + aarch64 [...] diff --git a/tests/domaincapsdata/qemu_7.0.0.aarch64.xml b/tests/domaincaps= data/qemu_7.0.0.aarch64.xml new file mode 100644 index 0000000000..d48c87dc3a --- /dev/null +++ b/tests/domaincapsdata/qemu_7.0.0.aarch64.xml @@ -0,0 +1,187 @@ + + /usr/bin/qemu-system-aarch64 + kvm + integratorcp + aarch64 [...] diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_7.0.0.aarch64.replies new file mode 100644 index 0000000000..fe6bd2d1ca --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.replies @@ -0,0 +1,32265 @@ +{ + "execute": "qmp_capabilities", + "id": "libvirt-1" +} + +{ + "return": { + }, + "id": "libvirt-1" +} + +{ + "execute": "query-version", + "id": "libvirt-2" +} + +{ + "return": { + "qemu": { + "micro": 90, + "minor": 2, + "major": 6 + }, + "package": "v7.0.0-rc0" + }, + "id": "libvirt-2" +} + +{ + "execute": "query-target", + "id": "libvirt-3" +} + +{ + "return": { + "arch": "aarch64" + }, + "id": "libvirt-3" +} [...] diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_7.0.0.aarch64.xml new file mode 100644 index 0000000000..c1df22508b --- /dev/null +++ b/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml @@ -0,0 +1,551 @@ + + /usr/bin/qemu-system-aarch64 [...] + 6002090 + 0 + 61700243 + v7.0.0-rc0 + aarch64 [...] diff --git a/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.aarch6= 4-latest.args b/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.aar= ch64-latest.args index d8598d8f5b..c17bcad5cf 100644 --- a/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.aarch64-lates= t.args +++ b/tests/qemuxml2argvdata/aarch64-default-cpu-kvm-virt-4.2.aarch64-lates= t.args @@ -26,11 +26,11 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ -no-shutdown \ -no-acpi \ -boot strict=3Don \ --device pcie-root-port,port=3D8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,multif= unction=3Don,addr=3D0x1 \ --device pcie-root-port,port=3D9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ +-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"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.qcow= 2","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}= ' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qco= w2","file":"libvirt-1-storage"}' \ --device virtio-blk-pci,bus=3Dpci.1,addr=3D0x0,drive=3Dlibvirt-1-format,id= =3Dvirtio-disk0,bootindex=3D1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.1","addr":"0x0","drive":"li= bvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch6= 4-latest.args b/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aar= ch64-latest.args index 6a2908bb34..12d80b1f02 100644 --- a/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lates= t.args +++ b/tests/qemuxml2argvdata/aarch64-default-cpu-tcg-virt-4.2.aarch64-lates= t.args @@ -27,11 +27,11 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ -no-shutdown \ -no-acpi \ -boot strict=3Don \ --device pcie-root-port,port=3D8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,multif= unction=3Don,addr=3D0x1 \ --device pcie-root-port,port=3D9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ +-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"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.qcow= 2","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}= ' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qco= w2","file":"libvirt-1-storage"}' \ --device virtio-blk-pci,bus=3Dpci.1,addr=3D0x0,drive=3Dlibvirt-1-format,id= =3Dvirtio-disk0,bootindex=3D1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.1","addr":"0x0","drive":"li= bvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/aarch64-tpm.aarch64-latest.args b/tests= /qemuxml2argvdata/aarch64-tpm.aarch64-latest.args index f176bc4c20..3125460a95 100644 --- a/tests/qemuxml2argvdata/aarch64-tpm.aarch64-latest.args +++ b/tests/qemuxml2argvdata/aarch64-tpm.aarch64-latest.args @@ -29,7 +29,7 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-aarch64test/.config \ -boot strict=3Don \ -chardev socket,id=3Dchrtpm,path=3D/dev/test \ -tpmdev emulator,id=3Dtpm-tpm0,chardev=3Dchrtpm \ --device tpm-tis-device,tpmdev=3Dtpm-tpm0,id=3Dtpm0 \ +-device '{"driver":"tpm-tis-device","tpmdev":"tpm-tpm0","id":"tpm0"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/aarch64-virt-graphics.aarch64-latest.ar= gs b/tests/qemuxml2argvdata/aarch64-virt-graphics.aarch64-latest.args index 6604d1e5bd..4d670b6663 100644 --- a/tests/qemuxml2argvdata/aarch64-virt-graphics.aarch64-latest.args +++ b/tests/qemuxml2argvdata/aarch64-virt-graphics.aarch64-latest.args @@ -29,32 +29,32 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ -rtc base=3Dutc \ -no-shutdown \ -boot strict=3Don \ --device pcie-root-port,port=3D8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,multif= unction=3Don,addr=3D0x1 \ --device pcie-root-port,port=3D9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ --device pcie-root-port,port=3D10,chassis=3D3,id=3Dpci.3,bus=3Dpcie.0,addr= =3D0x1.0x2 \ --device pcie-root-port,port=3D11,chassis=3D4,id=3Dpci.4,bus=3Dpcie.0,addr= =3D0x1.0x3 \ --device pcie-root-port,port=3D12,chassis=3D5,id=3Dpci.5,bus=3Dpcie.0,addr= =3D0x1.0x4 \ --device pcie-root-port,port=3D13,chassis=3D6,id=3Dpci.6,bus=3Dpcie.0,addr= =3D0x1.0x5 \ --device pcie-root-port,port=3D14,chassis=3D7,id=3Dpci.7,bus=3Dpcie.0,addr= =3D0x1.0x6 \ --device pcie-root-port,port=3D15,chassis=3D8,id=3Dpci.8,bus=3Dpcie.0,addr= =3D0x1.0x7 \ --device qemu-xhci,p2=3D15,p3=3D15,id=3Dusb,bus=3Dpci.2,addr=3D0x0 \ --device virtio-serial-pci,id=3Dvirtio-serial0,bus=3Dpci.3,addr=3D0x0 \ +-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-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":"pcie-root-port","port":13,"chassis":6,"id":"pci.6","bu= s":"pcie.0","addr":"0x1.0x5"}' \ +-device '{"driver":"pcie-root-port","port":14,"chassis":7,"id":"pci.7","bu= s":"pcie.0","addr":"0x1.0x6"}' \ +-device '{"driver":"pcie-root-port","port":15,"chassis":8,"id":"pci.8","bu= s":"pcie.0","addr":"0x1.0x7"}' \ +-device '{"driver":"qemu-xhci","p2":15,"p3":15,"id":"usb","bus":"pci.2","a= ddr":"0x0"}' \ +-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.3"= ,"addr":"0x0"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.qcow= 2","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}= ' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qco= w2","file":"libvirt-1-storage"}' \ --device virtio-blk-pci,bus=3Dpci.4,addr=3D0x0,drive=3Dlibvirt-1-format,id= =3Dvirtio-disk0,bootindex=3D1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.4","addr":"0x0","drive":"li= bvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -netdev user,id=3Dhostnet0 \ --device virtio-net-pci,netdev=3Dhostnet0,id=3Dnet0,mac=3D52:54:00:53:45:a5= ,bus=3Dpci.1,addr=3D0x0 \ +-device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":= "52:54:00:53:45:a5","bus":"pci.1","addr":"0x0"}' \ -chardev pty,id=3Dcharserial0 \ -serial chardev:charserial0 \ -chardev socket,id=3Dcharchannel0,fd=3D1729,server=3Don,wait=3Doff \ --device virtserialport,bus=3Dvirtio-serial0.0,nr=3D1,chardev=3Dcharchannel= 0,id=3Dchannel0,name=3Dorg.qemu.guest_agent.0 \ --device usb-tablet,id=3Dinput0,bus=3Dusb.0,port=3D1 \ --device usb-kbd,id=3Dinput1,bus=3Dusb.0,port=3D2 \ +-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chard= ev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \ +-device '{"driver":"usb-tablet","id":"input0","bus":"usb.0","port":"1"}' \ +-device '{"driver":"usb-kbd","id":"input1","bus":"usb.0","port":"2"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -vnc 127.0.0.1:0,audiodev=3Daudio1 \ --device virtio-gpu-pci,id=3Dvideo0,max_outputs=3D1,bus=3Dpci.7,addr=3D0x0 \ --device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.5,addr=3D0x0 \ +-device '{"driver":"virtio-gpu-pci","id":"video0","max_outputs":1,"bus":"p= ci.7","addr":"0x0"}' \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.5","add= r":"0x0"}' \ -object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/urandom"= }' \ --device virtio-rng-pci,rng=3Dobjrng0,id=3Drng0,bus=3Dpci.6,addr=3D0x0 \ +-device '{"driver":"virtio-rng-pci","rng":"objrng0","id":"rng0","bus":"pci= .6","addr":"0x0"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/aarch64-virt-headless.aarch64-latest.ar= gs b/tests/qemuxml2argvdata/aarch64-virt-headless.aarch64-latest.args index 0f78840cb3..37e3fdeeeb 100644 --- a/tests/qemuxml2argvdata/aarch64-virt-headless.aarch64-latest.args +++ b/tests/qemuxml2argvdata/aarch64-virt-headless.aarch64-latest.args @@ -30,27 +30,27 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ -rtc base=3Dutc \ -no-shutdown \ -boot strict=3Don \ --device pcie-root-port,port=3D8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,multif= unction=3Don,addr=3D0x1 \ --device pcie-root-port,port=3D9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ --device pcie-root-port,port=3D10,chassis=3D3,id=3Dpci.3,bus=3Dpcie.0,addr= =3D0x1.0x2 \ --device pcie-root-port,port=3D11,chassis=3D4,id=3Dpci.4,bus=3Dpcie.0,addr= =3D0x1.0x3 \ --device pcie-root-port,port=3D12,chassis=3D5,id=3Dpci.5,bus=3Dpcie.0,addr= =3D0x1.0x4 \ --device pcie-root-port,port=3D13,chassis=3D6,id=3Dpci.6,bus=3Dpcie.0,addr= =3D0x1.0x5 \ --device pcie-root-port,port=3D14,chassis=3D7,id=3Dpci.7,bus=3Dpcie.0,addr= =3D0x1.0x6 \ --device qemu-xhci,p2=3D15,p3=3D15,id=3Dusb,bus=3Dpci.2,addr=3D0x0 \ --device virtio-serial-pci,id=3Dvirtio-serial0,bus=3Dpci.3,addr=3D0x0 \ +-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-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":"pcie-root-port","port":13,"chassis":6,"id":"pci.6","bu= s":"pcie.0","addr":"0x1.0x5"}' \ +-device '{"driver":"pcie-root-port","port":14,"chassis":7,"id":"pci.7","bu= s":"pcie.0","addr":"0x1.0x6"}' \ +-device '{"driver":"qemu-xhci","p2":15,"p3":15,"id":"usb","bus":"pci.2","a= ddr":"0x0"}' \ +-device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.3"= ,"addr":"0x0"}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.qcow= 2","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}= ' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qco= w2","file":"libvirt-1-storage"}' \ --device virtio-blk-pci,bus=3Dpci.4,addr=3D0x0,drive=3Dlibvirt-1-format,id= =3Dvirtio-disk0,bootindex=3D1 \ +-device '{"driver":"virtio-blk-pci","bus":"pci.4","addr":"0x0","drive":"li= bvirt-1-format","id":"virtio-disk0","bootindex":1}' \ -netdev user,id=3Dhostnet0 \ --device virtio-net-pci,netdev=3Dhostnet0,id=3Dnet0,mac=3D52:54:00:09:a4:37= ,bus=3Dpci.1,addr=3D0x0 \ +-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=3Dcharchannel0,fd=3D1729,server=3Don,wait=3Doff \ --device virtserialport,bus=3Dvirtio-serial0.0,nr=3D1,chardev=3Dcharchannel= 0,id=3Dchannel0,name=3Dorg.qemu.guest_agent.0 \ +-device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chard= ev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ --device virtio-balloon-pci,id=3Dballoon0,bus=3Dpci.5,addr=3D0x0 \ +-device '{"driver":"virtio-balloon-pci","id":"balloon0","bus":"pci.5","add= r":"0x0"}' \ -object '{"qom-type":"rng-random","id":"objrng0","filename":"/dev/urandom"= }' \ --device virtio-rng-pci,rng=3Dobjrng0,id=3Drng0,bus=3Dpci.6,addr=3D0x0 \ +-device '{"driver":"virtio-rng-pci","rng":"objrng0","id":"rng0","bus":"pci= .6","addr":"0x0"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/default-video-type-aarch64.aarch64-late= st.args b/tests/qemuxml2argvdata/default-video-type-aarch64.aarch64-latest.= args index 567bbeb4d8..e13a2be3f0 100644 --- a/tests/qemuxml2argvdata/default-video-type-aarch64.aarch64-latest.args +++ b/tests/qemuxml2argvdata/default-video-type-aarch64.aarch64-latest.args @@ -25,10 +25,10 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-default-video-type= -a/.config \ -no-shutdown \ -no-acpi \ -boot strict=3Don \ --device pcie-root-port,port=3D8,chassis=3D1,id=3Dpci.1,bus=3Dpcie.0,multif= unction=3Don,addr=3D0x1 \ --device pcie-root-port,port=3D9,chassis=3D2,id=3Dpci.2,bus=3Dpcie.0,addr= =3D0x1.0x1 \ +-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"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -vnc 127.0.0.1:0,audiodev=3Daudio1 \ --device virtio-gpu-pci,id=3Dvideo0,max_outputs=3D1,bus=3Dpci.1,addr=3D0x0 \ +-device '{"driver":"virtio-gpu-pci","id":"video0","max_outputs":1,"bus":"p= ci.1","addr":"0x0"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/disk-arm-virtio-sd.aarch64-latest.args = b/tests/qemuxml2argvdata/disk-arm-virtio-sd.aarch64-latest.args index c4c7dd7b55..c51be77654 100644 --- a/tests/qemuxml2argvdata/disk-arm-virtio-sd.aarch64-latest.args +++ b/tests/qemuxml2argvdata/disk-arm-virtio-sd.aarch64-latest.args @@ -35,7 +35,7 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-armtest/.config \ -drive file=3D/arm-sd.qcow2,format=3Dqcow2,if=3Dsd,index=3D0 \ -blockdev '{"driver":"file","filename":"/arm-virtio.qcow2","node-name":"li= bvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qco= w2","file":"libvirt-1-storage"}' \ --device virtio-blk-device,drive=3Dlibvirt-1-format,id=3Dvirtio-disk0 \ +-device '{"driver":"virtio-blk-device","drive":"libvirt-1-format","id":"vi= rtio-disk0"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/pcie-expander-bus-aarch64.aarch64-lates= t.args b/tests/qemuxml2argvdata/pcie-expander-bus-aarch64.aarch64-latest.ar= gs index 587d875384..4f4d5f9a08 100644 --- a/tests/qemuxml2argvdata/pcie-expander-bus-aarch64.aarch64-latest.args +++ b/tests/qemuxml2argvdata/pcie-expander-bus-aarch64.aarch64-latest.args @@ -27,7 +27,7 @@ XDG_CONFIG_HOME=3D/tmp/lib/domain--1-pcie-expander-bus-te= /.config \ -no-shutdown \ -no-acpi \ -boot strict=3Don \ --device pxb-pcie,bus_nr=3D254,id=3Dpci.1,bus=3Dpcie.0,addr=3D0x1 \ +-device '{"driver":"pxb-pcie","bus_nr":254,"id":"pci.1","bus":"pcie.0","ad= dr":"0x1"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ -msg timestamp=3Don --=20 2.35.1 From nobody Wed May 15 22:59:07 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=1647621642; cv=none; d=zohomail.com; s=zohoarc; b=UWDYlk/00l083xr7wNYB7MZEzay/zmSIyEtas3jbV22xH2ReunnLrHLo6GKrIvXuVRhqu3MlEgsyAZz1PgTeyDixCE6JB4RbxzjTR7nPjqG1FHoUZGID6uMRW1D8dqzBSkU+79mFMnFs9DOISu2mwHYbTWCo2KBGAAOx71e3UKc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1647621642; 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=QQ4BMv+3OEmm8n23eF1Fg1DgWPwcNm7HW3VQnRmMFZc=; b=T6y4jzaYqiEwje7ExKGFbrGnZVA9rmDU/d1PFUBkIRSOa5OmI4l9HLO6wYuyQLk86XkaYLjMWhVzf4BiEocAqboZjIG+8OlU325vtASkCG4wFJwP2FmSbaKsvNPxTg4mo9Jc8bS3TDn+AsWQRrauDMNkQUS1bm+Rjiyp5ZP7mvg= 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 1647621642331473.2188368419411; Fri, 18 Mar 2022 09:40:42 -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-182-Hmzm1L2pO0WKliLT8W5DQw-1; Fri, 18 Mar 2022 12:40:39 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 3F778811E81; Fri, 18 Mar 2022 16:40:35 +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 29FDBC28100; Fri, 18 Mar 2022 16:40:35 +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 CC5021940370; Fri, 18 Mar 2022 16:40:34 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 83F0E193F6E8 for ; Fri, 18 Mar 2022 16:40:32 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 77397145B978; Fri, 18 Mar 2022 16:40:32 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.195.98]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 05EC3145B979 for ; Fri, 18 Mar 2022 16:40:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647621641; 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=QQ4BMv+3OEmm8n23eF1Fg1DgWPwcNm7HW3VQnRmMFZc=; b=ZVeSZScPjEcGF10JtagpuiRbrTM/GNV9uOigr0I9Av8S98eMsLgD2QfVzlGITzCZWk7S8U ZnOdZFR1Ac4xZreyb7CeP4tMnq8FTgPGZh/qRSSHwYp1GSOiUEYWaDLSFUsRITjY4ko+a4 BsnybRlqk8b5ToqlF1PgHSFzo8178R4= X-MC-Unique: Hmzm1L2pO0WKliLT8W5DQw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 02/17] conf: Introduce VIR_PCI_CONNECT_INTEGRATED Date: Fri, 18 Mar 2022 17:40:13 +0100 Message-Id: <20220318164028.1185357-3-abologna@redhat.com> In-Reply-To: <20220318164028.1185357-1-abologna@redhat.com> References: <20220318164028.1185357-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 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 2.85 on 10.11.54.8 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1647621643445100003 This new flag can be used to convince the PCI address assignment algorithm to place a device directly on the root bus. It will be used to implement support for virtio-iommu, which needs to be an integrated device in order to work correctly. Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/conf/domain_addr.c | 17 +++++++++++++++++ src/conf/domain_addr.h | 26 +++++++++++++++----------- 2 files changed, 32 insertions(+), 11 deletions(-) diff --git a/src/conf/domain_addr.c b/src/conf/domain_addr.c index 49ca775a52..1173143635 100644 --- a/src/conf/domain_addr.c +++ b/src/conf/domain_addr.c @@ -303,6 +303,23 @@ virDomainPCIAddressFlagsCompatible(virPCIDeviceAddress= *addr, virErrorNumber errType =3D (fromConfig ? VIR_ERR_XML_ERROR : VIR_ERR_INTERNAL_ERROR= ); =20 + if (devFlags & VIR_PCI_CONNECT_INTEGRATED) { + if (addr->bus =3D=3D 0) { + /* pcie-root doesn't usually allow endpoint devices to be + * plugged directly into it, but for integrated devices + * that's exactly what we want */ + busFlags |=3D VIR_PCI_CONNECT_AUTOASSIGN; + } else { + if (reportError) { + virReportError(errType, + _("The device at PCI address %s needs to be= " + "an integrated device (bus=3D0)"), + addrStr); + } + return false; + } + } + if (fromConfig) { /* If the requested connection was manually specified in * config, allow a PCI device to connect to a PCIe slot, or diff --git a/src/conf/domain_addr.h b/src/conf/domain_addr.h index 814b556024..1772ea7088 100644 --- a/src/conf/domain_addr.h +++ b/src/conf/domain_addr.h @@ -35,24 +35,28 @@ typedef enum { VIR_PCI_CONNECT_AUTOASSIGN =3D 1 << 0, /* okay to autoassign a device = to this controller */ VIR_PCI_CONNECT_HOTPLUGGABLE =3D 1 << 1, /* is hotplug needed/supporte= d */ =20 + /* Set for devices that can only work as integrated devices (directly + * connected to pci.0 or pcie.0, with no additional buses in between) = */ + VIR_PCI_CONNECT_INTEGRATED =3D 1 << 2, + /* set for devices that can share a single slot in auto-assignment * (by assigning one device to each of the 8 functions on the slot) */ - VIR_PCI_CONNECT_AGGREGATE_SLOT =3D 1 << 2, + VIR_PCI_CONNECT_AGGREGATE_SLOT =3D 1 << 3, =20 /* kinds of devices as a bitmap so they can be combined (some PCI * controllers permit connecting multiple types of devices) */ - VIR_PCI_CONNECT_TYPE_PCI_DEVICE =3D 1 << 3, - VIR_PCI_CONNECT_TYPE_PCIE_DEVICE =3D 1 << 4, - VIR_PCI_CONNECT_TYPE_PCIE_ROOT_PORT =3D 1 << 5, - VIR_PCI_CONNECT_TYPE_PCIE_SWITCH_UPSTREAM_PORT =3D 1 << 6, - VIR_PCI_CONNECT_TYPE_PCIE_SWITCH_DOWNSTREAM_PORT =3D 1 << 7, - VIR_PCI_CONNECT_TYPE_DMI_TO_PCI_BRIDGE =3D 1 << 8, - VIR_PCI_CONNECT_TYPE_PCI_EXPANDER_BUS =3D 1 << 9, - VIR_PCI_CONNECT_TYPE_PCIE_EXPANDER_BUS =3D 1 << 10, - VIR_PCI_CONNECT_TYPE_PCI_BRIDGE =3D 1 << 11, - VIR_PCI_CONNECT_TYPE_PCIE_TO_PCI_BRIDGE =3D 1 << 12, + VIR_PCI_CONNECT_TYPE_PCI_DEVICE =3D 1 << 4, + VIR_PCI_CONNECT_TYPE_PCIE_DEVICE =3D 1 << 5, + VIR_PCI_CONNECT_TYPE_PCIE_ROOT_PORT =3D 1 << 6, + VIR_PCI_CONNECT_TYPE_PCIE_SWITCH_UPSTREAM_PORT =3D 1 << 7, + VIR_PCI_CONNECT_TYPE_PCIE_SWITCH_DOWNSTREAM_PORT =3D 1 << 8, + VIR_PCI_CONNECT_TYPE_DMI_TO_PCI_BRIDGE =3D 1 << 9, + VIR_PCI_CONNECT_TYPE_PCI_EXPANDER_BUS =3D 1 << 10, + VIR_PCI_CONNECT_TYPE_PCIE_EXPANDER_BUS =3D 1 << 11, + VIR_PCI_CONNECT_TYPE_PCI_BRIDGE =3D 1 << 12, + VIR_PCI_CONNECT_TYPE_PCIE_TO_PCI_BRIDGE =3D 1 << 13, } virDomainPCIConnectFlags; =20 /* a combination of all bits that describe the type of connections --=20 2.35.1 From nobody Wed May 15 22:59:07 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=1647621646; cv=none; d=zohomail.com; s=zohoarc; b=iFHNKTsgmcWv39ZiH1T8PLYeCqu4MNSXANPeaNYogysi6bkI68SoDEmghXbKYsxR7d4COlaafhiu5HSLIEkG9RWs6OxshFAk6OD/Uj5KmEG9uBhzp9fQm2pgSZ1ZwAPNI2dZTCfO6NL4z/OOyaB7YSRiGkv0Iotw0AEIJbGpv8c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1647621646; 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=55YvN7LK/lKACfUjTarj2hYTIW2mb+GSGAJFyDUhoEQ=; b=foHtEYfBtvwG67yXAc8FeMuvNW/CKQ+E10r7RAoqHuvnSLGskjpAfDnm7sXLR3u0eJteXAV1d/DyqmemU4npdYV6okGOZ/MCpokXZNn2wEHGJm++B8PubUBpvjK+xvPYOSuXDiqfNOli0TvFu9KOmO9qjf7W1UzLOWkSUctinZQ= 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 1647621646388961.7258513775148; Fri, 18 Mar 2022 09:40:46 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-587-c0bGPMJuO8aQI6TlNpN9qg-1; Fri, 18 Mar 2022 12:40:40 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id F2EED380261C; Fri, 18 Mar 2022 16:40:35 +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 DD195145B97C; Fri, 18 Mar 2022 16:40:35 +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 48512193F6E5; Fri, 18 Mar 2022 16:40:35 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 5C464194035B for ; Fri, 18 Mar 2022 16:40:33 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 401CA145B978; Fri, 18 Mar 2022 16:40:33 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.195.98]) by smtp.corp.redhat.com (Postfix) with ESMTPS id C2AFF145B979 for ; Fri, 18 Mar 2022 16:40:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647621645; 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=55YvN7LK/lKACfUjTarj2hYTIW2mb+GSGAJFyDUhoEQ=; b=hLrye9Fz6SNczF6F+WFcIp2oSFERSeoEO5Rau6pdIqhM9LuRtIVhxVqBsTRiB6i5J3JD+C 0VF9SKOOOy0bRijiOlrTVwp6do9ewkbZdg70I8Du4tkLv68XAoHk6yfU+Ip8hbN71KmUqD 7NWxAJnwd0bgreApW3KrTOuukAqjmM8= X-MC-Unique: c0bGPMJuO8aQI6TlNpN9qg-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 03/17] qemu: Tweak some code Date: Fri, 18 Mar 2022 17:40:14 +0100 Message-Id: <20220318164028.1185357-4-abologna@redhat.com> In-Reply-To: <20220318164028.1185357-1-abologna@redhat.com> References: <20220318164028.1185357-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 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 2.85 on 10.11.54.7 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1647621647463100001 The altered code is functionally equivalent to the previous one, but it's already laid down in a way that will make further changes easier and less messy. Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/qemu/qemu_command.c | 14 ++++++-------- src/qemu/qemu_domain_address.c | 23 ++++++++++++++++++++++- 2 files changed, 28 insertions(+), 9 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index c836799888..2f6f63229a 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -6385,15 +6385,14 @@ qemuBuildIOMMUCommandLine(virCommand *cmd, const virDomainDef *def, virQEMUCaps *qemuCaps) { + g_autoptr(virJSONValue) props =3D NULL; const virDomainIOMMUDef *iommu =3D def->iommu; =20 if (!iommu) return 0; =20 switch (iommu->model) { - case VIR_DOMAIN_IOMMU_MODEL_INTEL: { - g_autoptr(virJSONValue) props =3D NULL; - + case VIR_DOMAIN_IOMMU_MODEL_INTEL: if (virJSONValueObjectAdd(&props, "s:driver", "intel-iommu", "S:intremap", qemuOnOffAuto(iommu->intre= map), @@ -6408,7 +6407,6 @@ qemuBuildIOMMUCommandLine(virCommand *cmd, return -1; =20 return 0; - } =20 case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: /* There is no -device for SMMUv3, so nothing to be done here */ @@ -6991,14 +6989,14 @@ qemuBuildMachineCommandLine(virCommand *cmd, =20 if (def->iommu) { switch (def->iommu->model) { - case VIR_DOMAIN_IOMMU_MODEL_INTEL: - /* The 'intel' IOMMu is formatted in qemuBuildIOMMUCommandLine= */ - break; - case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: virBufferAddLit(&buf, ",iommu=3Dsmmuv3"); break; =20 + case VIR_DOMAIN_IOMMU_MODEL_INTEL: + /* These IOMMUs are formatted in qemuBuildIOMMUCommandLine */ + break; + case VIR_DOMAIN_IOMMU_MODEL_LAST: default: virReportEnumRangeError(virDomainIOMMUModel, def->iommu->model= ); diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index dd0680f57f..6ca6fa54a3 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -1002,6 +1002,16 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDe= viceDef *dev, } break; =20 + case VIR_DOMAIN_DEVICE_IOMMU: + switch ((virDomainIOMMUModel) dev->data.iommu->model) { + case VIR_DOMAIN_IOMMU_MODEL_INTEL: + case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: + case VIR_DOMAIN_IOMMU_MODEL_LAST: + /* These are not PCI devices */ + return 0; + } + break; + case VIR_DOMAIN_DEVICE_VSOCK: switch ((virDomainVsockModel) dev->data.vsock->model) { case VIR_DOMAIN_VSOCK_MODEL_VIRTIO_TRANSITIONAL: @@ -1041,7 +1051,6 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDev= iceDef *dev, /* These devices don't even have a DeviceInfo */ case VIR_DOMAIN_DEVICE_LEASE: case VIR_DOMAIN_DEVICE_GRAPHICS: - case VIR_DOMAIN_DEVICE_IOMMU: case VIR_DOMAIN_DEVICE_AUDIO: case VIR_DOMAIN_DEVICE_LAST: case VIR_DOMAIN_DEVICE_NONE: @@ -2369,6 +2378,18 @@ qemuDomainAssignDevicePCISlots(virDomainDef *def, /* Nada - none are PCI based (yet) */ } =20 + if (def->iommu) { + virDomainIOMMUDef *iommu =3D def->iommu; + + switch ((virDomainIOMMUModel) iommu->model) { + case VIR_DOMAIN_IOMMU_MODEL_INTEL: + case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: + case VIR_DOMAIN_IOMMU_MODEL_LAST: + /* These are not PCI devices */ + break; + } + } + if (def->vsock && virDeviceInfoPCIAddressIsWanted(&def->vsock->info)) { =20 --=20 2.35.1 From nobody Wed May 15 22:59:07 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=1647621784; cv=none; d=zohomail.com; s=zohoarc; b=WOOm+8R3Xvssx+DfzDECgShJV0RYt7vGFRW7kvHij/9XNJ6Drpd6KFfWcYqSDRQ1HCHWMgVnouhJuAZ+o1+E4+Spihig/h/fBPndJsz6KVUeSaI2KOlHTb9ivUzMFYdltJtw0UQtfEY9SmsV2LXzFAho/6jZywJoYWEqvLMwTHo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1647621784; 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=DmvyH6Rmc5inPQ/W991L1RNToc0dyuXW0E0dD9DD/rk=; b=ilYwIPX4NKxbpUSbP+79jtwNi0z/HtRhXZ1iMEbKpdwIhMzNeH8Zc1vv46LmTAbioH2dnlMgtbVQMoVAhlkTESq8Wfoymdb9O5tBfebVxacMJ73QYkuwww5zUsw/rWctWb/ult3Hgf4cQLLdReqoBba0a87ktyuAsjYyXhWbkvg= 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 1647621784825204.07369123646367; Fri, 18 Mar 2022 09:43:04 -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-360-OrQUJSMIMwCT-ffh3a56AQ-1; Fri, 18 Mar 2022 12:40:47 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 99A17899EEE; Fri, 18 Mar 2022 16:40:38 +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 83EE2403D186; Fri, 18 Mar 2022 16:40:38 +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 285911954385; Fri, 18 Mar 2022 16:40:38 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 5B077194035B for ; Fri, 18 Mar 2022 16:40:34 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 2E0A9145B979; Fri, 18 Mar 2022 16:40:34 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.195.98]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 8C298145B978 for ; Fri, 18 Mar 2022 16:40:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647621783; 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=DmvyH6Rmc5inPQ/W991L1RNToc0dyuXW0E0dD9DD/rk=; b=gsRBuNkFdr2RP3hgyxeAYPKa8g/jiDCDgliDWH0uV0QBrjV2y7FK8Jw/6chnlNkkgwZehF mNN/rmzClV3O1rheP3+whF7LWhraCTBHWesiyXDBl92DEESFlaYGdz6bC86e/JLMPyPS7t AmAH2D2AlOaBiMl1aAE2yMg4ITVImbI= X-MC-Unique: OrQUJSMIMwCT-ffh3a56AQ-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 04/17] qemu: Introduce QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI Date: Fri, 18 Mar 2022 17:40:15 +0100 Message-Id: <20220318164028.1185357-5-abologna@redhat.com> In-Reply-To: <20220318164028.1185357-1-abologna@redhat.com> References: <20220318164028.1185357-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 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 2.84 on 10.11.54.2 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1647621785428100001 This capability detects the availability of the virtio-iommu-pci device. Note that, while this device is present even in somewhat old versions of QEMU, it's only some recent changes that made it actually usable for our purposes. Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- src/qemu/qemu_capabilities.c | 2 ++ src/qemu/qemu_capabilities.h | 1 + tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml | 1 + tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml | 1 + tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml | 1 + tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml | 1 + tests/qemucapabilitiesdata/caps_6.0.0.s390x.xml | 1 + tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_6.2.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml | 1 + 22 files changed, 23 insertions(+) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 32980e7330..8802084a79 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -668,6 +668,7 @@ VIR_ENUM_IMPL(virQEMUCaps, =20 /* 425 */ "blockdev.nbd.tls-hostname", /* QEMU_CAPS_BLOCKDEV_NBD_TLS_H= OSTNAME */ + "virtio-iommu-pci", /* QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI */ ); =20 =20 @@ -1404,6 +1405,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[= ] =3D { { "virtio-vga-gl", QEMU_CAPS_VIRTIO_VGA_GL }, { "s390-pv-guest", QEMU_CAPS_S390_PV_GUEST }, { "virtio-mem-pci", QEMU_CAPS_DEVICE_VIRTIO_MEM_PCI }, + { "virtio-iommu-pci", QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI }, }; =20 =20 diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 0a215a11d5..3813e8fbc0 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -643,6 +643,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for = syntax-check */ =20 /* 425 */ QEMU_CAPS_BLOCKDEV_NBD_TLS_HOSTNAME, /* tls hostname can be overriden = for NBD clients */ + QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI, /* -device virtio-iommu-pci */ =20 QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_5.0.0.aarch64.xml index 4c1a37104c..f73e91825f 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml @@ -178,6 +178,7 @@ + 5000000 0 61700241 diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml b/tests/qemuca= pabilitiesdata/caps_5.0.0.ppc64.xml index 070d0f2982..3de5fc59b6 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml @@ -186,6 +186,7 @@ + 5000000 0 42900241 diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml b/tests/qemu= capabilitiesdata/caps_5.0.0.riscv64.xml index 286049a8a6..aa2ec965b1 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml @@ -170,6 +170,7 @@ + 5000000 0 0 diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_5.0.0.x86_64.xml index f563d672b4..fb2bdb2626 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml @@ -219,6 +219,7 @@ + 5000000 0 43100241 diff --git a/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_5.1.0.x86_64.xml index 2d0ef18147..8b0c6364bd 100644 --- a/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml @@ -222,6 +222,7 @@ + 5001000 0 43100242 diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_5.2.0.aarch64.xml index 9f14d59efb..bd2f979495 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml @@ -184,6 +184,7 @@ + 5002000 0 61700243 diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml b/tests/qemuca= pabilitiesdata/caps_5.2.0.ppc64.xml index e050514fc1..5aea2c889d 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml @@ -190,6 +190,7 @@ + 5002000 0 42900243 diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml b/tests/qemu= capabilitiesdata/caps_5.2.0.riscv64.xml index 4b123d4ce9..87f9fdd880 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml @@ -174,6 +174,7 @@ + 5002000 0 0 diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml b/tests/qemuca= pabilitiesdata/caps_5.2.0.s390x.xml index bc3c3c351a..6e02602bbe 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml @@ -141,6 +141,7 @@ + 5002000 0 39100243 diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_5.2.0.x86_64.xml index 70ad14f548..0227536090 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml @@ -226,6 +226,7 @@ + 5002000 0 43100243 diff --git a/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_6.0.0.aarch64.xml index 9d501f29af..c9799e9a8a 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml @@ -192,6 +192,7 @@ + 6000000 0 61700242 diff --git a/tests/qemucapabilitiesdata/caps_6.0.0.s390x.xml b/tests/qemuca= pabilitiesdata/caps_6.0.0.s390x.xml index 02b24f5d7e..55ff485f67 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_6.0.0.s390x.xml @@ -149,6 +149,7 @@ + 6000000 0 39100242 diff --git a/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_6.0.0.x86_64.xml index 8ea688f7a6..d78a37cb0e 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml @@ -235,6 +235,7 @@ + 6000000 0 43100242 diff --git a/tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_6.1.0.x86_64.xml index ba1aecc37e..82a4bf13bd 100644 --- a/tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml @@ -239,6 +239,7 @@ + 6001000 0 43100243 diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_6.2.0.aarch64.xml index 17d563eb5b..54fb9843ca 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml @@ -203,6 +203,7 @@ + 6001050 0 61700244 diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml b/tests/qemuca= pabilitiesdata/caps_6.2.0.ppc64.xml index 9fe9c27d14..1bfd495872 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml @@ -201,6 +201,7 @@ + 6002000 0 42900244 diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_6.2.0.x86_64.xml index d77907af55..6e2ad6aa1d 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_6.2.0.x86_64.xml @@ -241,6 +241,7 @@ + 6002000 0 43100244 diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_7.0.0.aarch64.xml index c1df22508b..da1ad8f55c 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml @@ -210,6 +210,7 @@ + 6002090 0 61700243 diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml b/tests/qemuca= pabilitiesdata/caps_7.0.0.ppc64.xml index 5d7f283a73..cd6e4adbc3 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml @@ -202,6 +202,7 @@ + 6002050 0 42900243 diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_7.0.0.x86_64.xml index 0f34a341af..bddf27cfa7 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml @@ -244,6 +244,7 @@ + 6002050 0 43100243 --=20 2.35.1 From nobody Wed May 15 22:59:07 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=1647621647; cv=none; d=zohomail.com; s=zohoarc; b=RW37XtkufoaF0Hxj7mSnM0ejFIGKrfAx09foEkiCYPFq/mGknlSuHPpf8SY4kcUb963GoSg+Vm/EHs2YTa0mAFVF63BXKxjT/UUfnRk74ZQhdTqmbO0o708RcI8rylc316RXCIVR1XS+XT+PU3wZPqeM+UXNP/M79vIPIxGk9FE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1647621647; 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=mfogprQp7HVTbxHALcCGrD83nk8pflEhOMYFqisa5mE=; b=goq677wjMHbZ/N5y/2YNKJlcMq/yU8H5wtMDyRRLQ6GGFETNGgHf5wMBkMKg3rnvo9WaYOWpIfcBcYj9EhXlrj/KB3f7/GmsWZ++OFI0BIM37PLI3dbNWF9U+qMawmJO8eWJrk9pWS9He2j1RpWQVeGkh8/QbQIvXc4dbyT2WJc= 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 1647621647779892.8424771902697; Fri, 18 Mar 2022 09:40:47 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-622-rtA7KWJFN6qBXVkuiGoSrA-1; Fri, 18 Mar 2022 12:40:44 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C0A9E1C01E87; Fri, 18 Mar 2022 16:40: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 A5124404D8FE; Fri, 18 Mar 2022 16:40: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 5DE811940370; Fri, 18 Mar 2022 16:40:36 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 6467C196419B for ; Fri, 18 Mar 2022 16:40:35 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 4A07D145B979; Fri, 18 Mar 2022 16:40:35 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.195.98]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 7B79E145B978 for ; Fri, 18 Mar 2022 16:40:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647621646; 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=mfogprQp7HVTbxHALcCGrD83nk8pflEhOMYFqisa5mE=; b=et+ShS4ha7ABUlwar4HtrteehjmphMlyDb9RAAMvqWdLBtLpUlAjfwKiRxBxxi2DUIMeg2 tX8vSH2P1SLSki3IxIOsS8bIAd+o/GR7Iy/ax/F/TSzr87GAnphlUf1a0+b/l0AMr1TD8h 44Tq/3LRy3k7x9ixVJkFj7rt6CupCWQ= X-MC-Unique: rtA7KWJFN6qBXVkuiGoSrA-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 05/17] qemu: Introduce QEMU_CAPS_VIRTIO_IOMMU_BOOT_BYPASS Date: Fri, 18 Mar 2022 17:40:16 +0100 Message-Id: <20220318164028.1185357-6-abologna@redhat.com> In-Reply-To: <20220318164028.1185357-1-abologna@redhat.com> References: <20220318164028.1185357-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 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 2.84 on 10.11.54.1 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com 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: 1647621649567100007 Content-Type: text/plain; charset="utf-8" This capability detects the availability of the boot-bypass property of the virtio-iommu-pci device. This property was only introduced in QEMU 7.0 but, since the device has been around for much longer, we end up querying its properties for several more releases. As I don't have convenient access to the 10+ binaries necessary to regenerate the replies, I just put some fake data in there. Signed-off-by: Andrea Bolognani --- Note that, since I'm currently affected by [1], I was unable to refresh the replies for QEMU 7.0.0 on x86_64 to bring them on par with the aarch64 replies, so this effectively creates a frankenreplies situation. I think it's okay to do so in this case, as it will go away on its own once we refresh capabilities after QEMU 7.0.0 has been released. [1] https://lists.gnu.org/archive/html/qemu-devel/2022-03/msg04312.html src/qemu/qemu_capabilities.c | 8 + src/qemu/qemu_capabilities.h | 1 + .../caps_5.0.0.aarch64.replies | 71 +++-- .../caps_5.0.0.ppc64.replies | 59 ++-- .../caps_5.0.0.riscv64.replies | 55 ++-- .../caps_5.0.0.x86_64.replies | 71 +++-- .../caps_5.1.0.x86_64.replies | 71 +++-- .../caps_5.2.0.aarch64.replies | 71 +++-- .../caps_5.2.0.ppc64.replies | 59 ++-- .../caps_5.2.0.riscv64.replies | 55 ++-- .../caps_5.2.0.s390x.replies | 59 ++-- .../caps_5.2.0.x86_64.replies | 71 +++-- .../caps_6.0.0.aarch64.replies | 71 +++-- .../caps_6.0.0.s390x.replies | 59 ++-- .../caps_6.0.0.x86_64.replies | 71 +++-- .../caps_6.1.0.x86_64.replies | 71 +++-- .../caps_6.2.0.aarch64.replies | 71 +++-- .../caps_6.2.0.ppc64.replies | 59 ++-- .../caps_6.2.0.x86_64.replies | 71 +++-- .../caps_7.0.0.aarch64.replies | 275 ++++++++++++++++-- .../caps_7.0.0.aarch64.xml | 1 + .../caps_7.0.0.ppc64.replies | 59 ++-- .../caps_7.0.0.x86_64.replies | 275 ++++++++++++++++-- .../caps_7.0.0.x86_64.xml | 1 + 24 files changed, 1267 insertions(+), 468 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 8802084a79..e161ebf8ba 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -669,6 +669,7 @@ VIR_ENUM_IMPL(virQEMUCaps, /* 425 */ "blockdev.nbd.tls-hostname", /* QEMU_CAPS_BLOCKDEV_NBD_TLS_H= OSTNAME */ "virtio-iommu-pci", /* QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI */ + "virtio-iommu.boot-bypass", /* QEMU_CAPS_VIRTIO_IOMMU_BOOT_B= YPASS */ ); =20 =20 @@ -1590,6 +1591,10 @@ static struct virQEMUCapsDevicePropsFlags virQEMUCap= sDevicePropsVirtioMemPCI[] =3D { "prealloc", QEMU_CAPS_DEVICE_VIRTIO_MEM_PCI_PREALLOC, NULL }, }; =20 +static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsVirtioIOMM= U[] =3D { + { "boot-bypass", QEMU_CAPS_VIRTIO_IOMMU_BOOT_BYPASS, NULL }, +}; + /* see documentation for virQEMUQAPISchemaPathGet for the query format */ static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] =3D { { "block-commit/arg-type/*top", QEMU_CAPS_ACTIVE_COMMIT }, @@ -1756,6 +1761,9 @@ static virQEMUCapsDeviceTypeProps virQEMUCapsDevicePr= ops[] =3D { { "virtio-mem-pci", virQEMUCapsDevicePropsVirtioMemPCI, G_N_ELEMENTS(virQEMUCapsDevicePropsVirtioMemPCI), QEMU_CAPS_DEVICE_VIRTIO_MEM_PCI }, + { "virtio-iommu-pci", virQEMUCapsDevicePropsVirtioIOMMU, + G_N_ELEMENTS(virQEMUCapsDevicePropsVirtioIOMMU), + QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI }, }; =20 static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFi= le[] =3D { diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 3813e8fbc0..cb2b7a306e 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -644,6 +644,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for = syntax-check */ /* 425 */ QEMU_CAPS_BLOCKDEV_NBD_TLS_HOSTNAME, /* tls hostname can be overriden = for NBD clients */ QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI, /* -device virtio-iommu-pci */ + QEMU_CAPS_VIRTIO_IOMMU_BOOT_BYPASS, /* virtio-iommu.boot-bypass */ =20 QEMU_CAPS_LAST /* this must always be the last item */ } virQEMUCapsFlags; diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_5.0.0.aarch64.replies index 574c14d4ce..29bde0357f 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_5.0.0.aarch64.replies @@ -20244,12 +20244,31 @@ "id": "libvirt-32" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-33" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-33" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-33" + "id": "libvirt-34" } =20 { @@ -20319,7 +20338,7 @@ "type": "bool" } ], - "id": "libvirt-33" + "id": "libvirt-34" } =20 { @@ -20327,7 +20346,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -20396,7 +20415,7 @@ "type": "bool" } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -20404,7 +20423,7 @@ "arguments": { "typename": "max-arm-cpu" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -20608,12 +20627,12 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-machines", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -21201,7 +21220,7 @@ "deprecated": false } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -21209,7 +21228,7 @@ "arguments": { "typename": "virt-5.0-machine" }, - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -21357,7 +21376,7 @@ "type": "child" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -21365,7 +21384,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -21455,12 +21474,12 @@ "type": "string" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -21656,24 +21675,24 @@ "static": false } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-tpm-models", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "return": [ "tpm-tis" ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-tpm-types", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -21681,12 +21700,12 @@ "passthrough", "emulator" ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-command-line-options", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -22844,12 +22863,12 @@ "option": "drive" } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -22927,12 +22946,12 @@ "capability": "validate-uuid" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -22948,7 +22967,7 @@ "kernel": false } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -22959,7 +22978,7 @@ "name": "host" } }, - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -22990,7 +23009,7 @@ } } }, - "id": "libvirt-45" + "id": "libvirt-46" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.replies b/tests/qe= mucapabilitiesdata/caps_5.0.0.ppc64.replies index b7950ec59b..ceee1fb025 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_5.0.0.ppc64.replies @@ -20182,12 +20182,31 @@ "id": "libvirt-34" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-35" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-35" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -20257,7 +20276,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -20265,7 +20284,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -20334,12 +20353,12 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-machines", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -20609,7 +20628,7 @@ "deprecated": false } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -20617,7 +20636,7 @@ "arguments": { "typename": "pseries-5.0-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -20826,7 +20845,7 @@ "type": "string" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -20834,7 +20853,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -20924,12 +20943,12 @@ "type": "string" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23135,24 +23154,24 @@ "static": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-tpm-models", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "return": [ "tpm-spapr" ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-tpm-types", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -23160,12 +23179,12 @@ "passthrough", "emulator" ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-command-line-options", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -24302,12 +24321,12 @@ "option": "drive" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -24385,7 +24404,7 @@ "capability": "validate-uuid" } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.replies b/tests/= qemucapabilitiesdata/caps_5.0.0.riscv64.replies index a4dfe42b89..df993441a2 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.replies +++ b/tests/qemucapabilitiesdata/caps_5.0.0.riscv64.replies @@ -18379,12 +18379,31 @@ "id": "libvirt-33" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-34" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-34" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -18454,7 +18473,7 @@ "type": "bool" } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -18462,7 +18481,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -18531,12 +18550,12 @@ "type": "int" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-machines", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -18594,7 +18613,7 @@ "deprecated": false } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -18602,7 +18621,7 @@ "arguments": { "typename": "virt-machine" }, - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -18692,7 +18711,7 @@ "type": "string" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -18700,7 +18719,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -18790,34 +18809,34 @@ "type": "string" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-tpm-models", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "return": [ ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-tpm-types", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "return": [ ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-command-line-options", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -20083,12 +20102,12 @@ "option": "drive" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -20166,5 +20185,5 @@ "capability": "validate-uuid" } ], - "id": "libvirt-42" + "id": "libvirt-43" } diff --git a/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.replies b/tests/q= emucapabilitiesdata/caps_5.0.0.x86_64.replies index ad6ee05ba6..bd508473a2 100644 --- a/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_5.0.0.x86_64.replies @@ -20078,12 +20078,31 @@ "id": "libvirt-37" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-38" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-38" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -20153,7 +20172,7 @@ "type": "bool" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -20161,7 +20180,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -20230,7 +20249,7 @@ "type": "int" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -20238,7 +20257,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -21804,12 +21823,12 @@ "type": "bool" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-machines", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -22185,7 +22204,7 @@ "deprecated": false } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -22193,7 +22212,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -22283,12 +22302,12 @@ "type": "string" } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -23833,12 +23852,12 @@ "migration-safe": true } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-tpm-models", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -23846,12 +23865,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-tpm-types", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -23859,12 +23878,12 @@ "passthrough", "emulator" ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-command-line-options", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -25140,12 +25159,12 @@ "option": "drive" } ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -25223,16 +25242,16 @@ "capability": "validate-uuid" } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { "execute": "query-sev-capabilities", - "id": "libvirt-48" + "id": "libvirt-49" } =20 { - "id": "libvirt-48", + "id": "libvirt-49", "error": { "class": "GenericError", "desc": "SEV feature is not available" @@ -25247,7 +25266,7 @@ "name": "host" } }, - "id": "libvirt-49" + "id": "libvirt-50" } =20 { @@ -25550,7 +25569,7 @@ } } }, - "id": "libvirt-49" + "id": "libvirt-50" } =20 { @@ -25564,7 +25583,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -25867,7 +25886,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.replies b/tests/q= emucapabilitiesdata/caps_5.1.0.x86_64.replies index cfb28e77bd..900acb1ed4 100644 --- a/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_5.1.0.x86_64.replies @@ -20828,12 +20828,31 @@ "id": "libvirt-38" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-39" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-39" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -20903,7 +20922,7 @@ "type": "bool" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -20911,7 +20930,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -20980,7 +20999,7 @@ "type": "int" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -20988,7 +21007,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -22574,12 +22593,12 @@ "type": "bool" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-machines", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -22971,7 +22990,7 @@ "deprecated": false } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -22979,7 +22998,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -23069,12 +23088,12 @@ "type": "string" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -24776,12 +24795,12 @@ "migration-safe": true } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-tpm-models", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -24789,12 +24808,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-tpm-types", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -24802,12 +24821,12 @@ "passthrough", "emulator" ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-command-line-options", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -26102,12 +26121,12 @@ "option": "drive" } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-48" + "id": "libvirt-49" } =20 { @@ -26185,16 +26204,16 @@ "capability": "validate-uuid" } ], - "id": "libvirt-48" + "id": "libvirt-49" } =20 { "execute": "query-sev-capabilities", - "id": "libvirt-49" + "id": "libvirt-50" } =20 { - "id": "libvirt-49", + "id": "libvirt-50", "error": { "class": "GenericError", "desc": "SEV is not enabled in KVM" @@ -26209,7 +26228,7 @@ "name": "host" } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -26517,7 +26536,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -26531,7 +26550,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { @@ -26839,7 +26858,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_5.2.0.aarch64.replies index 76de04bb85..0203bbd399 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_5.2.0.aarch64.replies @@ -21517,12 +21517,31 @@ "id": "libvirt-33" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-34" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-34" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -21592,7 +21611,7 @@ "type": "bool" } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -21600,7 +21619,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -21669,7 +21688,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -21677,7 +21696,7 @@ "arguments": { "typename": "max-arm-cpu" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -21886,12 +21905,12 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-machines", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -22628,7 +22647,7 @@ "deprecated": false } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -22636,7 +22655,7 @@ "arguments": { "typename": "virt-5.2-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -22799,7 +22818,7 @@ "type": "child" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -22807,7 +22826,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -22892,12 +22911,12 @@ "type": "string" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23131,24 +23150,24 @@ "deprecated": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-tpm-models", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "return": [ "tpm-tis" ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-tpm-types", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -23156,12 +23175,12 @@ "passthrough", "emulator" ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-command-line-options", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -24338,12 +24357,12 @@ "option": "drive" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -24421,12 +24440,12 @@ "capability": "validate-uuid" } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -24442,7 +24461,7 @@ "kernel": false } ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -24453,7 +24472,7 @@ "name": "host" } }, - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -24485,7 +24504,7 @@ } } }, - "id": "libvirt-46" + "id": "libvirt-47" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.replies b/tests/qe= mucapabilitiesdata/caps_5.2.0.ppc64.replies index 0adb594192..86ea403662 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_5.2.0.ppc64.replies @@ -21263,12 +21263,31 @@ "id": "libvirt-34" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-35" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-35" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -21338,7 +21357,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -21346,7 +21365,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -21415,12 +21434,12 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-machines", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -21740,7 +21759,7 @@ "default-ram-id": "mpc8544ds.ram" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -21748,7 +21767,7 @@ "arguments": { "typename": "pseries-5.2-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -21952,7 +21971,7 @@ "type": "string" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -21960,7 +21979,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -22045,12 +22064,12 @@ "type": "string" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -24696,24 +24715,24 @@ "deprecated": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-tpm-models", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "return": [ "tpm-spapr" ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-tpm-types", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -24721,12 +24740,12 @@ "passthrough", "emulator" ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-command-line-options", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -25882,12 +25901,12 @@ "option": "drive" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -25965,7 +25984,7 @@ "capability": "validate-uuid" } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.replies b/tests/= qemucapabilitiesdata/caps_5.2.0.riscv64.replies index 627afa6d12..4931b4ff1c 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.replies +++ b/tests/qemucapabilitiesdata/caps_5.2.0.riscv64.replies @@ -19435,12 +19435,31 @@ "id": "libvirt-33" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-34" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-34" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -19510,7 +19529,7 @@ "type": "bool" } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -19518,7 +19537,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -19587,12 +19606,12 @@ "type": "int" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-machines", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -19646,7 +19665,7 @@ "deprecated": false } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -19654,7 +19673,7 @@ "arguments": { "typename": "virt-machine" }, - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -19744,7 +19763,7 @@ "type": "bool" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -19752,7 +19771,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -19837,34 +19856,34 @@ "type": "string" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-tpm-models", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "return": [ ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-tpm-types", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "return": [ ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-command-line-options", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -21149,12 +21168,12 @@ "option": "drive" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -21232,5 +21251,5 @@ "capability": "validate-uuid" } ], - "id": "libvirt-42" + "id": "libvirt-43" } diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.s390x.replies b/tests/qe= mucapabilitiesdata/caps_5.2.0.s390x.replies index cdca3b9169..ab1c2034af 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.s390x.replies +++ b/tests/qemucapabilitiesdata/caps_5.2.0.s390x.replies @@ -19451,12 +19451,31 @@ "id": "libvirt-31" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-32" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-32" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-32" + "id": "libvirt-33" } =20 { @@ -19526,7 +19545,7 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } =20 { @@ -19534,7 +19553,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-33" + "id": "libvirt-34" } =20 { @@ -19603,12 +19622,12 @@ "type": "int" } ], - "id": "libvirt-33" + "id": "libvirt-34" } =20 { "execute": "query-machines", - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -19777,7 +19796,7 @@ "default-ram-id": "s390.ram" } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -19785,7 +19804,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -19870,12 +19889,12 @@ "type": "string" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -20556,34 +20575,34 @@ "deprecated": false } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-tpm-models", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "return": [ ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "execute": "query-tpm-types", - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "return": [ ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-command-line-options", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -21739,12 +21758,12 @@ "option": "drive" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -21822,7 +21841,7 @@ "capability": "validate-uuid" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -21833,7 +21852,7 @@ "name": "host" } }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -21889,7 +21908,7 @@ } } }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.replies b/tests/q= emucapabilitiesdata/caps_5.2.0.x86_64.replies index 22a1087e23..3ea7d87aec 100644 --- a/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_5.2.0.x86_64.replies @@ -21428,12 +21428,31 @@ "id": "libvirt-38" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-39" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-39" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -21503,7 +21522,7 @@ "type": "bool" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -21511,7 +21530,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -21580,7 +21599,7 @@ "type": "int" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -21588,7 +21607,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -23186,12 +23205,12 @@ "type": "bool" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-machines", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -23649,7 +23668,7 @@ "default-ram-id": "pc.ram" } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -23657,7 +23676,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -23742,12 +23761,12 @@ "type": "string" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -25572,12 +25591,12 @@ "deprecated": false } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-tpm-models", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -25585,12 +25604,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-tpm-types", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -25598,12 +25617,12 @@ "passthrough", "emulator" ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-command-line-options", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -26898,12 +26917,12 @@ "option": "drive" } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-48" + "id": "libvirt-49" } =20 { @@ -26981,16 +27000,16 @@ "capability": "validate-uuid" } ], - "id": "libvirt-48" + "id": "libvirt-49" } =20 { "execute": "query-sev-capabilities", - "id": "libvirt-49" + "id": "libvirt-50" } =20 { - "id": "libvirt-49", + "id": "libvirt-50", "error": { "class": "GenericError", "desc": "SEV is not enabled in KVM" @@ -27005,7 +27024,7 @@ "name": "host" } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -27314,7 +27333,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -27328,7 +27347,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { @@ -27637,7 +27656,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_6.0.0.aarch64.replies index ffb17cbc84..1b9fd6b18a 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_6.0.0.aarch64.replies @@ -23376,12 +23376,31 @@ "id": "libvirt-33" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-34" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-34" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -23451,7 +23470,7 @@ "type": "bool" } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -23459,7 +23478,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -23528,7 +23547,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -23536,7 +23555,7 @@ "arguments": { "typename": "max-arm-cpu" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -23745,12 +23764,12 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-machines", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -24529,7 +24548,7 @@ "deprecated": false } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -24537,7 +24556,7 @@ "arguments": { "typename": "virt-6.0-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -24723,7 +24742,7 @@ "type": "child" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -24731,7 +24750,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -24829,12 +24848,12 @@ "type": "child" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -25074,24 +25093,24 @@ "deprecated": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-tpm-models", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "return": [ "tpm-tis" ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-tpm-types", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -25099,12 +25118,12 @@ "passthrough", "emulator" ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-command-line-options", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -26301,12 +26320,12 @@ "option": "drive" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -26388,12 +26407,12 @@ "capability": "background-snapshot" } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -26409,7 +26428,7 @@ "kernel": false } ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -26420,7 +26439,7 @@ "name": "host" } }, - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -26452,7 +26471,7 @@ } } }, - "id": "libvirt-46" + "id": "libvirt-47" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_6.0.0.s390x.replies b/tests/qe= mucapabilitiesdata/caps_6.0.0.s390x.replies index 67706ec6d5..388f95d3d1 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0.s390x.replies +++ b/tests/qemucapabilitiesdata/caps_6.0.0.s390x.replies @@ -21089,12 +21089,31 @@ "id": "libvirt-31" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-32" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-32" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-32" + "id": "libvirt-33" } =20 { @@ -21164,7 +21183,7 @@ "type": "bool" } ], - "id": "libvirt-32" + "id": "libvirt-33" } =20 { @@ -21172,7 +21191,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-33" + "id": "libvirt-34" } =20 { @@ -21241,12 +21260,12 @@ "type": "int" } ], - "id": "libvirt-33" + "id": "libvirt-34" } =20 { "execute": "query-machines", - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -21424,7 +21443,7 @@ "default-ram-id": "s390.ram" } ], - "id": "libvirt-34" + "id": "libvirt-35" } =20 { @@ -21432,7 +21451,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -21530,12 +21549,12 @@ "type": "child" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -22216,34 +22235,34 @@ "deprecated": false } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-tpm-models", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "return": [ ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "execute": "query-tpm-types", - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "return": [ ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-command-line-options", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -23419,12 +23438,12 @@ "option": "drive" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23506,7 +23525,7 @@ "capability": "background-snapshot" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23517,7 +23536,7 @@ "name": "host" } }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -23574,7 +23593,7 @@ } } }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.replies b/tests/q= emucapabilitiesdata/caps_6.0.0.x86_64.replies index 4cde1b4eb5..2577587d9b 100644 --- a/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_6.0.0.x86_64.replies @@ -23212,12 +23212,31 @@ "id": "libvirt-38" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-39" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-39" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -23291,7 +23310,7 @@ "type": "bool" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -23299,7 +23318,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23368,7 +23387,7 @@ "type": "int" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23376,7 +23395,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -25022,12 +25041,12 @@ "type": "bool" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-machines", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -25474,7 +25493,7 @@ "default-ram-id": "pc.ram" } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -25482,7 +25501,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -25580,12 +25599,12 @@ "type": "child" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -27453,12 +27472,12 @@ "deprecated": false } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-tpm-models", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -27466,12 +27485,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-tpm-types", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -27479,12 +27498,12 @@ "passthrough", "emulator" ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-command-line-options", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -28803,12 +28822,12 @@ "option": "drive" } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-48" + "id": "libvirt-49" } =20 { @@ -28890,12 +28909,12 @@ "capability": "background-snapshot" } ], - "id": "libvirt-48" + "id": "libvirt-49" } =20 { "execute": "query-sev-capabilities", - "id": "libvirt-49" + "id": "libvirt-50" } =20 { @@ -28905,7 +28924,7 @@ "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA= ", "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAA= OAAA" }, - "id": "libvirt-49" + "id": "libvirt-50" } =20 { @@ -28916,7 +28935,7 @@ "name": "host" } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -29237,7 +29256,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -29251,7 +29270,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { @@ -29572,7 +29591,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_6.1.0.x86_64.replies b/tests/q= emucapabilitiesdata/caps_6.1.0.x86_64.replies index 1fb3b3de8c..42c64d946a 100644 --- a/tests/qemucapabilitiesdata/caps_6.1.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_6.1.0.x86_64.replies @@ -23454,12 +23454,31 @@ "id": "libvirt-38" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-39" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-39" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -23538,7 +23557,7 @@ "type": "bool" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -23546,7 +23565,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23620,7 +23639,7 @@ "type": "int" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -23628,7 +23647,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -25286,12 +25305,12 @@ "type": "bool" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-machines", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -25756,7 +25775,7 @@ "default-ram-id": "pc.ram" } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -25764,7 +25783,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -25867,12 +25886,12 @@ "type": "child" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -27929,12 +27948,12 @@ "deprecated": false } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-tpm-models", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -27942,12 +27961,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-tpm-types", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -27955,12 +27974,12 @@ "passthrough", "emulator" ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-command-line-options", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -29292,12 +29311,12 @@ "option": "drive" } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-48" + "id": "libvirt-49" } =20 { @@ -29379,16 +29398,16 @@ "capability": "background-snapshot" } ], - "id": "libvirt-48" + "id": "libvirt-49" } =20 { "execute": "query-sev-capabilities", - "id": "libvirt-49" + "id": "libvirt-50" } =20 { - "id": "libvirt-49", + "id": "libvirt-50", "error": { "class": "GenericError", "desc": "Failed to open /dev/sev: No such file or directory" @@ -29403,7 +29422,7 @@ "name": "host" } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -29726,7 +29745,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -29740,7 +29759,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { @@ -30063,7 +30082,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_6.2.0.aarch64.replies index e8ce132f3c..1a660ffd4d 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_6.2.0.aarch64.replies @@ -24217,12 +24217,31 @@ "id": "libvirt-34" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-35" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-35" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -24297,7 +24316,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -24305,7 +24324,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -24379,7 +24398,7 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -24387,7 +24406,7 @@ "arguments": { "typename": "max-arm-cpu" }, - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -24596,12 +24615,12 @@ "type": "bool" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { "execute": "query-machines", - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -25445,7 +25464,7 @@ "deprecated": false } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -25453,7 +25472,7 @@ "arguments": { "typename": "virt-6.2-machine" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -25649,7 +25668,7 @@ "type": "child" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -25657,7 +25676,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -25760,12 +25779,12 @@ "type": "child" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -26011,24 +26030,24 @@ "deprecated": false } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-tpm-models", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "return": [ "tpm-tis" ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-tpm-types", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -26036,12 +26055,12 @@ "passthrough", "emulator" ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-command-line-options", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -27389,12 +27408,12 @@ "option": "drive" } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -27476,12 +27495,12 @@ "capability": "background-snapshot" } ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -27497,7 +27516,7 @@ "kernel": false } ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -27508,7 +27527,7 @@ "name": "host" } }, - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -27540,7 +27559,7 @@ } } }, - "id": "libvirt-47" + "id": "libvirt-48" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.replies b/tests/qe= mucapabilitiesdata/caps_6.2.0.ppc64.replies index 089db57737..915b6a0584 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_6.2.0.ppc64.replies @@ -26153,12 +26153,31 @@ "id": "libvirt-34" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-35" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-35" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -26233,7 +26252,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -26241,7 +26260,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -26315,12 +26334,12 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-machines", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -26683,7 +26702,7 @@ "default-ram-id": "mpc8544ds.ram" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -26691,7 +26710,7 @@ "arguments": { "typename": "pseries-6.2-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -26923,7 +26942,7 @@ "type": "string" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -26931,7 +26950,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -27034,12 +27053,12 @@ "type": "child" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -29691,24 +29710,24 @@ "deprecated": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-tpm-models", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "return": [ "tpm-spapr" ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-tpm-types", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -29716,12 +29735,12 @@ "passthrough", "emulator" ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-command-line-options", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -30855,12 +30874,12 @@ "option": "drive" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -30942,7 +30961,7 @@ "capability": "background-snapshot" } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_6.2.0.x86_64.replies b/tests/q= emucapabilitiesdata/caps_6.2.0.x86_64.replies index 8a574c893b..e235532d62 100644 --- a/tests/qemucapabilitiesdata/caps_6.2.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_6.2.0.x86_64.replies @@ -26635,12 +26635,31 @@ "id": "libvirt-38" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-39" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-39" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -26719,7 +26738,7 @@ "type": "bool" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -26727,7 +26746,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -26801,7 +26820,7 @@ "type": "int" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -26809,7 +26828,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -28549,12 +28568,12 @@ "type": "bool" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-machines", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -29037,7 +29056,7 @@ "default-ram-id": "pc.ram" } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -29045,7 +29064,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -29148,12 +29167,12 @@ "type": "child" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -31222,12 +31241,12 @@ "deprecated": false } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-tpm-models", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -31235,12 +31254,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-tpm-types", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -31248,12 +31267,12 @@ "passthrough", "emulator" ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-command-line-options", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -32585,12 +32604,12 @@ "option": "drive" } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-48" + "id": "libvirt-49" } =20 { @@ -32672,16 +32691,16 @@ "capability": "background-snapshot" } ], - "id": "libvirt-48" + "id": "libvirt-49" } =20 { "execute": "query-sev-capabilities", - "id": "libvirt-49" + "id": "libvirt-50" } =20 { - "id": "libvirt-49", + "id": "libvirt-50", "error": { "class": "GenericError", "desc": "SEV: Failed to open /dev/sev: No such file or directory" @@ -32696,7 +32715,7 @@ "name": "host" } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -33029,7 +33048,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -33043,7 +33062,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { @@ -33376,7 +33395,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.replies b/tests/= qemucapabilitiesdata/caps_7.0.0.aarch64.replies index fe6bd2d1ca..d2de096282 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.replies +++ b/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.replies @@ -27722,12 +27722,235 @@ "id": "libvirt-35" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-36" +} + +{ + "return": [ + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or = 06", + "type": "int32" + }, + { + "name": "failover_pair_id", + "type": "str" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": 0, + "name": "len-reserved-regions", + "type": "uint32" + }, + { + "default-value": 0, + "name": "class", + "type": "uint32" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "boot-bypass", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "name": "primary-bus", + "type": "link" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + } + ], + "id": "libvirt-36" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -27802,7 +28025,7 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -27810,7 +28033,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -27884,7 +28107,7 @@ "type": "bool" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -27892,7 +28115,7 @@ "arguments": { "typename": "max-arm-cpu" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -28101,12 +28324,12 @@ "type": "bool" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { "execute": "query-machines", - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -28976,7 +29199,7 @@ "deprecated": false } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -28984,7 +29207,7 @@ "arguments": { "typename": "virt-7.0-machine" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -29185,7 +29408,7 @@ "type": "child" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -29193,7 +29416,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -29296,12 +29519,12 @@ "type": "child" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -29547,24 +29770,24 @@ "deprecated": false } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-tpm-models", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "return": [ "tpm-tis" ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-tpm-types", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -29572,12 +29795,12 @@ "passthrough", "emulator" ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-command-line-options", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -30929,12 +31152,12 @@ "option": "drive" } ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -31016,12 +31239,12 @@ "capability": "background-snapshot" } ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-gic-capabilities", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -31037,7 +31260,7 @@ "kernel": false } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -31048,7 +31271,7 @@ "name": "host" } }, - "id": "libvirt-48" + "id": "libvirt-49" } =20 { @@ -31081,7 +31304,7 @@ } } }, - "id": "libvirt-48" + "id": "libvirt-49" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml b/tests/qemu= capabilitiesdata/caps_7.0.0.aarch64.xml index da1ad8f55c..7ce5e4c233 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml @@ -211,6 +211,7 @@ + 6002090 0 61700243 diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies b/tests/qe= mucapabilitiesdata/caps_7.0.0.ppc64.replies index d935e74dff..864e8de743 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies +++ b/tests/qemucapabilitiesdata/caps_7.0.0.ppc64.replies @@ -26160,12 +26160,31 @@ "id": "libvirt-34" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-35" +} + +{ + "return": [ + { + "name": "fake-data", + "description": "pretend there's real data here", + "type": "str" + } + ], + "id": "libvirt-35" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -26240,7 +26259,7 @@ "type": "bool" } ], - "id": "libvirt-35" + "id": "libvirt-36" } =20 { @@ -26248,7 +26267,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-36" + "id": "libvirt-37" } =20 { @@ -26322,12 +26341,12 @@ "type": "bool" } ], - "id": "libvirt-36" + "id": "libvirt-37" } =20 { "execute": "query-machines", - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -26699,7 +26718,7 @@ "default-ram-id": "mpc8544ds.ram" } ], - "id": "libvirt-37" + "id": "libvirt-38" } =20 { @@ -26707,7 +26726,7 @@ "arguments": { "typename": "pseries-7.0-machine" }, - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -26939,7 +26958,7 @@ "type": "string" } ], - "id": "libvirt-38" + "id": "libvirt-39" } =20 { @@ -26947,7 +26966,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -27050,12 +27069,12 @@ "type": "child" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -29617,24 +29636,24 @@ "deprecated": false } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { "execute": "query-tpm-models", - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "return": [ "tpm-spapr" ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-tpm-types", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -29642,12 +29661,12 @@ "passthrough", "emulator" ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { "execute": "query-command-line-options", - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -30785,12 +30804,12 @@ "option": "drive" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -30872,7 +30891,7 @@ "capability": "background-snapshot" } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.replies b/tests/q= emucapabilitiesdata/caps_7.0.0.x86_64.replies index 82ccbab6eb..4d161f2a87 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.replies @@ -26937,12 +26937,235 @@ "id": "libvirt-38" } =20 +{ + "execute": "device-list-properties", + "arguments": { + "typename": "virtio-iommu-pci" + }, + "id": "libvirt-39" +} + +{ + "return": [ + { + "name": "failover_pair_id", + "type": "str" + }, + { + "name": "romfile", + "type": "str" + }, + { + "default-value": -1, + "name": "addr", + "description": "Slot and optional function number, example: 06.0 or = 06", + "type": "int32" + }, + { + "default-value": 4294967295, + "name": "romsize", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-lnksta-dllla", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 1, + "name": "rombar", + "type": "uint32" + }, + { + "default-value": true, + "name": "x-pcie-extcap-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": 0, + "name": "acpi-index", + "type": "uint32" + }, + { + "default-value": false, + "name": "multifunction", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "migrate-extra", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "ats", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-ignore-backend-features", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-pm-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "aer", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-flr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-lnkctl-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-ats-page-aligned", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "page-per-vq", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "x-pcie-deverr-init", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "virtio-pci-bus-master-bug-migration", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "modern-pio-notify", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-pcie", + "description": "on/off", + "type": "bool" + }, + { + "default-value": "auto", + "name": "disable-legacy", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "default-value": false, + "name": "disable-modern", + "type": "bool" + }, + { + "default-value": 0, + "name": "len-reserved-regions", + "type": "uint32" + }, + { + "default-value": 0, + "name": "class", + "type": "uint32" + }, + { + "default-value": true, + "name": "use-disabled-flag", + "type": "bool" + }, + { + "name": "virtio-backend", + "type": "child" + }, + { + "default-value": false, + "name": "packed", + "description": "on/off", + "type": "bool" + }, + { + "default-value": false, + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "event_idx", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "boot-bypass", + "type": "bool" + }, + { + "default-value": false, + "name": "x-disable-legacy-check", + "type": "bool" + }, + { + "default-value": true, + "name": "notify_on_empty", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "any_layout", + "description": "on/off", + "type": "bool" + }, + { + "default-value": true, + "name": "use-started", + "type": "bool" + }, + { + "default-value": true, + "name": "indirect_desc", + "description": "on/off", + "type": "bool" + }, + { + "name": "primary-bus", + "type": "link" + } + ], + "id": "libvirt-39" +} + { "execute": "qom-list-properties", "arguments": { "typename": "memory-backend-file" }, - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -27021,7 +27244,7 @@ "type": "bool" } ], - "id": "libvirt-39" + "id": "libvirt-40" } =20 { @@ -27029,7 +27252,7 @@ "arguments": { "typename": "memory-backend-memfd" }, - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -27103,7 +27326,7 @@ "type": "int" } ], - "id": "libvirt-40" + "id": "libvirt-41" } =20 { @@ -27111,7 +27334,7 @@ "arguments": { "typename": "max-x86_64-cpu" }, - "id": "libvirt-41" + "id": "libvirt-42" } =20 { @@ -28851,12 +29074,12 @@ "type": "bool" } ], - "id": "libvirt-41" + "id": "libvirt-42" } =20 { "execute": "query-machines", - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -29357,7 +29580,7 @@ "default-ram-id": "pc.ram" } ], - "id": "libvirt-42" + "id": "libvirt-43" } =20 { @@ -29365,7 +29588,7 @@ "arguments": { "typename": "none-machine" }, - "id": "libvirt-43" + "id": "libvirt-44" } =20 { @@ -29468,12 +29691,12 @@ "type": "child" } ], - "id": "libvirt-43" + "id": "libvirt-44" } =20 { "execute": "query-cpu-definitions", - "id": "libvirt-44" + "id": "libvirt-45" } =20 { @@ -31542,12 +31765,12 @@ "deprecated": false } ], - "id": "libvirt-44" + "id": "libvirt-45" } =20 { "execute": "query-tpm-models", - "id": "libvirt-45" + "id": "libvirt-46" } =20 { @@ -31555,12 +31778,12 @@ "tpm-crb", "tpm-tis" ], - "id": "libvirt-45" + "id": "libvirt-46" } =20 { "execute": "query-tpm-types", - "id": "libvirt-46" + "id": "libvirt-47" } =20 { @@ -31568,12 +31791,12 @@ "passthrough", "emulator" ], - "id": "libvirt-46" + "id": "libvirt-47" } =20 { "execute": "query-command-line-options", - "id": "libvirt-47" + "id": "libvirt-48" } =20 { @@ -32909,12 +33132,12 @@ "option": "drive" } ], - "id": "libvirt-47" + "id": "libvirt-48" } =20 { "execute": "query-migrate-capabilities", - "id": "libvirt-48" + "id": "libvirt-49" } =20 { @@ -32996,16 +33219,16 @@ "capability": "background-snapshot" } ], - "id": "libvirt-48" + "id": "libvirt-49" } =20 { "execute": "query-sev-capabilities", - "id": "libvirt-49" + "id": "libvirt-50" } =20 { - "id": "libvirt-49", + "id": "libvirt-50", "error": { "class": "GenericError", "desc": "SEV: Failed to open /dev/sev: No such file or directory" @@ -33020,7 +33243,7 @@ "name": "host" } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -33353,7 +33576,7 @@ } } }, - "id": "libvirt-50" + "id": "libvirt-51" } =20 { @@ -33367,7 +33590,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { @@ -33700,7 +33923,7 @@ } } }, - "id": "libvirt-51" + "id": "libvirt-52" } =20 { diff --git a/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml b/tests/qemuc= apabilitiesdata/caps_7.0.0.x86_64.xml index bddf27cfa7..85d53b8445 100644 --- a/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml @@ -245,6 +245,7 @@ + 6002050 0 43100243 --=20 2.35.1 From nobody Wed May 15 22:59:07 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=1647621649; cv=none; d=zohomail.com; s=zohoarc; b=LsB6LlqHeL2Hpb/nsWydX6+sa37Fz4hhkZXO6VPSnk+O1D3m/O4gf/x7aCXw9CLhNAdnQsZl11RW5oyrK5WWQFilvpvXVkCh1JnEJCeMcv++/81R1I+ccKG4/etqAmRUGqv+CgtZPYNSJKN0HmL/iY/RtQrgGXkKGHuEGZ6jI1Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1647621649; 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=BTSZ01jabGLHXbnZrh8HXkfAopcxFESLWJS/yujXwPk=; b=mXA/0oMXd2hRhx4+gL5t0mqSvE/K2OeNjx5YEyaNPQT3LPCESr2ha43DQJ77fyn9JqhIMw8621FwGzDLQx0EztI7T2+XfsB+TFEPENdO043Gti3JfDTkxuLGagO3iGQuxovM02yJE0q6XVBd0PDGNrDEhz+PinWUh6mgkxbaDSA= 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 1647621648999139.59449871224126; Fri, 18 Mar 2022 09:40:48 -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-134-tBe7P0fRPbmFwJEdqjTKBA-1; Fri, 18 Mar 2022 12:40:44 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 5134F80B71C; Fri, 18 Mar 2022 16:40:38 +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 3B6D3145B97D; Fri, 18 Mar 2022 16:40:38 +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 CC2FF1940370; Fri, 18 Mar 2022 16:40:37 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 21562194035B for ; Fri, 18 Mar 2022 16:40:36 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 1684B145B978; Fri, 18 Mar 2022 16:40:36 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.195.98]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 99A04145B97B for ; Fri, 18 Mar 2022 16:40:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647621648; 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=BTSZ01jabGLHXbnZrh8HXkfAopcxFESLWJS/yujXwPk=; b=JkcfJ5WjfJuepd3z37XMVpt2rHsax9xuggWnrum/n/xHpamrHymjHZKwv/5RV/falAEDwq yphgIOvem+MTOuu8J2ke0mqzC9CeTHdDh9eFyVC8B7MF7OrJL8ULzJO2jyfQGLHCl3mRBr nuqllmBXxwo2S70XPXI5uuau4+wpDpU= X-MC-Unique: tBe7P0fRPbmFwJEdqjTKBA-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 06/17] conf: Introduce virtio model for Date: Fri, 18 Mar 2022 17:40:17 +0100 Message-Id: <20220318164028.1185357-7-abologna@redhat.com> In-Reply-To: <20220318164028.1185357-1-abologna@redhat.com> References: <20220318164028.1185357-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 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 2.85 on 10.11.54.7 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1647621649425100005 Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- docs/schemas/domaincommon.rng | 1 + src/conf/domain_conf.c | 1 + src/conf/domain_conf.h | 1 + src/qemu/qemu_command.c | 4 ++++ src/qemu/qemu_domain_address.c | 6 ++++++ src/qemu/qemu_validate.c | 3 +++ 6 files changed, 16 insertions(+) diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 9c1b64a644..deef019ded 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -5447,6 +5447,7 @@ intel smmuv3 + virtio diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index e0dfc9e45f..99e82bc5f9 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -1285,6 +1285,7 @@ VIR_ENUM_IMPL(virDomainIOMMUModel, VIR_DOMAIN_IOMMU_MODEL_LAST, "intel", "smmuv3", + "virtio", ); =20 VIR_ENUM_IMPL(virDomainVsockModel, diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index a4de46773c..f6ffcf985c 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2753,6 +2753,7 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC(virDomainSecDef, virDom= ainSecDefFree); typedef enum { VIR_DOMAIN_IOMMU_MODEL_INTEL, VIR_DOMAIN_IOMMU_MODEL_SMMUV3, + VIR_DOMAIN_IOMMU_MODEL_VIRTIO, =20 VIR_DOMAIN_IOMMU_MODEL_LAST } virDomainIOMMUModel; diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 2f6f63229a..66a85984f6 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -6408,6 +6408,9 @@ qemuBuildIOMMUCommandLine(virCommand *cmd, =20 return 0; =20 + case VIR_DOMAIN_IOMMU_MODEL_VIRTIO: + return 0; + case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: /* There is no -device for SMMUv3, so nothing to be done here */ return 0; @@ -6994,6 +6997,7 @@ qemuBuildMachineCommandLine(virCommand *cmd, break; =20 case VIR_DOMAIN_IOMMU_MODEL_INTEL: + case VIR_DOMAIN_IOMMU_MODEL_VIRTIO: /* These IOMMUs are formatted in qemuBuildIOMMUCommandLine */ break; =20 diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c index 6ca6fa54a3..205610c53e 100644 --- a/src/qemu/qemu_domain_address.c +++ b/src/qemu/qemu_domain_address.c @@ -1004,6 +1004,9 @@ qemuDomainDeviceCalculatePCIConnectFlags(virDomainDev= iceDef *dev, =20 case VIR_DOMAIN_DEVICE_IOMMU: switch ((virDomainIOMMUModel) dev->data.iommu->model) { + case VIR_DOMAIN_IOMMU_MODEL_VIRTIO: + return 0; + case VIR_DOMAIN_IOMMU_MODEL_INTEL: case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: case VIR_DOMAIN_IOMMU_MODEL_LAST: @@ -2382,6 +2385,9 @@ qemuDomainAssignDevicePCISlots(virDomainDef *def, virDomainIOMMUDef *iommu =3D def->iommu; =20 switch ((virDomainIOMMUModel) iommu->model) { + case VIR_DOMAIN_IOMMU_MODEL_VIRTIO: + break; + case VIR_DOMAIN_IOMMU_MODEL_INTEL: case VIR_DOMAIN_IOMMU_MODEL_SMMUV3: case VIR_DOMAIN_IOMMU_MODEL_LAST: diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index f27e480696..7fec60e342 100644 --- a/src/qemu/qemu_validate.c +++ b/src/qemu/qemu_validate.c @@ -4858,6 +4858,9 @@ qemuValidateDomainDeviceDefIOMMU(const virDomainIOMMU= Def *iommu, } break; =20 + case VIR_DOMAIN_IOMMU_MODEL_VIRTIO: + break; + case VIR_DOMAIN_IOMMU_MODEL_LAST: default: virReportEnumRangeError(virDomainIOMMUModel, iommu->model); --=20 2.35.1 From nobody Wed May 15 22:59:07 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=1647621665; cv=none; d=zohomail.com; s=zohoarc; b=Noce35H7QBQ2JPJCijxmDe8lcsI9cvxct8ffHGDoUP7NqaiC5Ohxe809WEkTk1V9COytpde4XOnhJUeq2f/CP1CXi3KRJa7HEl7+OISWsOC9Yjb4d73EJWdcwhzbMDjkITFR7xFY2ql1FnkQSV/CePbvjF/cYdE7XaVftkUEqDw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1647621665; 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=8qfJpe/nvu8yObvyi9SUfKmupLtAbQS8xRxtacL2YCs=; b=DedAqC2gM0k94GRBUzZgJTX4N09DU0PMjbY1poBIFTuyXiVXAGSbvOUst+KTIyXgmd090yezcEag0KtB1/h6Ty1v1i6pHOy4n5fKNJcrovy0xacjUoC4Eo6uB0bDnESsPl7CqgTcRh+6YzhBhZpvPV9af5vXcSCK2yVf5HUshsc= 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 1647621665556326.3575264357554; Fri, 18 Mar 2022 09:41: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-380-On_qr8vbOvGLT-rTUw35MQ-1; Fri, 18 Mar 2022 12:40:47 -0400 Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com [10.11.54.9]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 434F110544AF; Fri, 18 Mar 2022 16:40:40 +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 2E91D54EC6C; Fri, 18 Mar 2022 16:40:40 +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 D61A01940379; Fri, 18 Mar 2022 16:40:39 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 345ED194035B for ; Fri, 18 Mar 2022 16:40:37 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 2764E145B97D; Fri, 18 Mar 2022 16:40:37 +0000 (UTC) Received: from harajuku.usersys.redhat.com.homenet.telecomitalia.it (unknown [10.40.195.98]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 634CF145B97B for ; Fri, 18 Mar 2022 16:40:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647621664; 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=8qfJpe/nvu8yObvyi9SUfKmupLtAbQS8xRxtacL2YCs=; b=CL6PVM8GWuJhvyOzOu7hkCH/QVSMvHURHTgkwnFqUUQtAtXH2kAYXkEILUCBJ9rZX+RoLe u4pGqe5SzNj+7XxrT8gH8ZRkQVoP9liEbPOuu7NEVQf9cViXxc+Lo2Qb2UgQ+BWpvDtue1 rEmezWvqpX4d17c3SZGodYx8UhZaOpQ= X-MC-Unique: On_qr8vbOvGLT-rTUw35MQ-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Andrea Bolognani To: libvir-list@redhat.com Subject: [libvirt PATCH v2 07/17] tests: Add test cases for virtio-iommu Date: Fri, 18 Mar 2022 17:40:18 +0100 Message-Id: <20220318164028.1185357-8-abologna@redhat.com> In-Reply-To: <20220318164028.1185357-1-abologna@redhat.com> References: <20220318164028.1185357-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 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 2.85 on 10.11.54.9 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1647621667618100001 These represent valid uses of the device. Signed-off-by: Andrea Bolognani Reviewed-by: J=C3=A1n Tomko --- .../virtio-iommu-aarch64.aarch64-latest.args | 35 +++++++++++++++++++ .../qemuxml2argvdata/virtio-iommu-aarch64.xml | 20 +++++++++++ .../virtio-iommu-x86_64.x86_64-latest.args | 31 ++++++++++++++++ .../qemuxml2argvdata/virtio-iommu-x86_64.xml | 18 ++++++++++ tests/qemuxml2argvtest.c | 2 ++ .../virtio-iommu-aarch64.aarch64-latest.xml | 32 +++++++++++++++++ .../virtio-iommu-x86_64.x86_64-latest.xml | 34 ++++++++++++++++++ tests/qemuxml2xmltest.c | 2 ++ 8 files changed, 174 insertions(+) create mode 100644 tests/qemuxml2argvdata/virtio-iommu-aarch64.aarch64-lat= est.args create mode 100644 tests/qemuxml2argvdata/virtio-iommu-aarch64.xml create mode 100644 tests/qemuxml2argvdata/virtio-iommu-x86_64.x86_64-lates= t.args create mode 100644 tests/qemuxml2argvdata/virtio-iommu-x86_64.xml create mode 100644 tests/qemuxml2xmloutdata/virtio-iommu-aarch64.aarch64-l= atest.xml create mode 100644 tests/qemuxml2xmloutdata/virtio-iommu-x86_64.x86_64-lat= est.xml diff --git a/tests/qemuxml2argvdata/virtio-iommu-aarch64.aarch64-latest.arg= s b/tests/qemuxml2argvdata/virtio-iommu-aarch64.aarch64-latest.args new file mode 100644 index 0000000000..917451d6f2 --- /dev/null +++ b/tests/qemuxml2argvdata/virtio-iommu-aarch64.aarch64-latest.args @@ -0,0 +1,35 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-guest \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-guest/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-guest/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-guest/.config \ +/usr/bin/qemu-system-aarch64 \ +-name guest=3Dguest,debug-threads=3Don \ +-S \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tm= p/lib/domain--1-guest/master-key.aes"}' \ +-blockdev '{"driver":"file","filename":"/usr/share/AAVMF/AAVMF_CODE.fd","n= ode-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"= }' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver"= :"raw","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_= VARS.fd","node-name":"libvirt-pflash1-storage","auto-read-only":true,"disca= rd":"unmap"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver= ":"raw","file":"libvirt-pflash1-storage"}' \ +-machine virt,usb=3Doff,dump-guest-core=3Doff,gic-version=3D2,pflash0=3Dli= bvirt-pflash0-format,pflash1=3Dlibvirt-pflash1-format,memory-backend=3Dmach= -virt.ram \ +-accel tcg \ +-cpu cortex-a15 \ +-m 1024 \ +-object '{"qom-type":"memory-backend-ram","id":"mach-virt.ram","size":1073= 741824}' \ +-overcommit mem-lock=3Doff \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \ +-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 \ +-audiodev '{"id":"audio1","driver":"none"}' \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/virtio-iommu-aarch64.xml b/tests/qemuxm= l2argvdata/virtio-iommu-aarch64.xml new file mode 100644 index 0000000000..3e89cb2dac --- /dev/null +++ b/tests/qemuxml2argvdata/virtio-iommu-aarch64.xml @@ -0,0 +1,20 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 1048576 + 1 + + hvm + /usr/share/AAVMF/AAVMF_CODE.f= d + /var/lib/libvirt/qemu/nvram/guest_VARS.fd + + + + + + /usr/bin/qemu-system-aarch64 + + + + + diff --git a/tests/qemuxml2argvdata/virtio-iommu-x86_64.x86_64-latest.args = b/tests/qemuxml2argvdata/virtio-iommu-x86_64.x86_64-latest.args new file mode 100644 index 0000000000..be06ea9957 --- /dev/null +++ b/tests/qemuxml2argvdata/virtio-iommu-x86_64.x86_64-latest.args @@ -0,0 +1,31 @@ +LC_ALL=3DC \ +PATH=3D/bin \ +HOME=3D/tmp/lib/domain--1-QEMUGuest1 \ +USER=3Dtest \ +LOGNAME=3Dtest \ +XDG_DATA_HOME=3D/tmp/lib/domain--1-QEMUGuest1/.local/share \ +XDG_CACHE_HOME=3D/tmp/lib/domain--1-QEMUGuest1/.cache \ +XDG_CONFIG_HOME=3D/tmp/lib/domain--1-QEMUGuest1/.config \ +/usr/bin/qemu-system-x86_64 \ +-name guest=3DQEMUGuest1,debug-threads=3Don \ +-S \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tm= p/lib/domain--1-QEMUGuest1/master-key.aes"}' \ +-machine q35,usb=3Doff,dump-guest-core=3Doff,memory-backend=3Dpc.ram \ +-accel tcg \ +-cpu qemu64 \ +-m 214 \ +-object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}'= \ +-overcommit mem-lock=3Doff \ +-smp 1,sockets=3D1,cores=3D1,threads=3D1 \ +-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ +-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 \ +-audiodev '{"id":"audio1","driver":"none"}' \ +-sandbox on,obsolete=3Ddeny,elevateprivileges=3Ddeny,spawn=3Ddeny,resource= control=3Ddeny \ +-msg timestamp=3Don diff --git a/tests/qemuxml2argvdata/virtio-iommu-x86_64.xml b/tests/qemuxml= 2argvdata/virtio-iommu-x86_64.xml new file mode 100644 index 0000000000..51c13d2ef6 --- /dev/null +++ b/tests/qemuxml2argvdata/virtio-iommu-x86_64.xml @@ -0,0 +1,18 @@ + + QEMUGuest1 + c7a5fdbd-edaf-9455-926a-d65c16db1809 + 219100 + 1 + + hvm + + + + + + /usr/bin/qemu-system-x86_64 + + + + + diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index e7fecb24d3..7c2191f580 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -3247,6 +3247,8 @@ mymain(void) DO_TEST_CAPS_LATEST("intel-iommu-aw-bits"); DO_TEST_CAPS_LATEST_PARSE_ERROR("intel-iommu-wrong-machine"); DO_TEST_CAPS_ARCH_LATEST("iommu-smmuv3", "aarch64"); + DO_TEST_CAPS_LATEST("virtio-iommu-x86_64"); + DO_TEST_CAPS_ARCH_LATEST("virtio-iommu-aarch64", "aarch64"); =20 DO_TEST("cpu-hotplug-startup", QEMU_CAPS_QUERY_HOTPLUGGABLE_CPUS); DO_TEST_PARSE_ERROR("cpu-hotplug-granularity", diff --git a/tests/qemuxml2xmloutdata/virtio-iommu-aarch64.aarch64-latest.x= ml b/tests/qemuxml2xmloutdata/virtio-iommu-aarch64.aarch64-latest.xml new file mode 100644 index 0000000000..336f99d539 --- /dev/null +++ b/tests/qemuxml2xmloutdata/virtio-iommu-aarch64.aarch64-latest.xml @@ -0,0 +1,32 @@ + + guest + 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 + 1048576 + 1048576 + 1 + + hvm + /usr/share/AAVMF/AAVMF_CODE.f= d + /var/lib/libvirt/qemu/nvram/guest_VARS.fd + + + + + + + + cortex-a15 + + + destroy + restart + destroy + + /usr/bin/qemu-system-aarch64 + + + + diff --git a/tests/qemuxml2xmloutdata/virtio-iommu-x86_64.x86_64-latest.xml= b/tests/qemuxml2xmloutdata/virtio-iommu-x86_64.x86_64-latest.xml new file mode 100644 index 0000000000..0b6c2d0eaf --- /dev/null +++ b/tests/qemuxml2xmloutdata/virtio-iommu-x86_64.x86_64-latest.xml @@ -0,0 +1,34 @@ + + QEMUGuest1 + c7a5fdbd-edaf-9455-926a-d65c16db1809 + 219100 + 219100 + 1 + + hvm + + + + + + + qemu64 + + + destroy + restart + destroy + + /usr/bin/qemu-system-x86_64 + + +
+ + + + +