From nobody Mon Feb 9 09:09:44 2026 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=fail(p=quarantine dis=quarantine) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1662496994; cv=none; d=zohomail.com; s=zohoarc; b=eml8u6QnXO1fwRzOEzY1Trg8alRpPOhA32eFl+BZc40UqrHXL1Mc4Pl+CZj/rKAFv6ad2SEUI24NoMOq1RXO2fVSh3ERvyNxw0bgccrcfx6rSpOVHaHqhj5Kpb/kXojp7OMRrHZxuYej8In20fq0WZbC7E5ZIQ0KRDjqFjxMdkw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1662496994; 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=i3wkRc2z/9WFWEIrch+gQU+85WNnIYoVYtbCB47en4A=; b=Nd2SFiRFH1AkMCl73iyA/AypCAUSu1NphqU+jsJZrldDaIg4UNkDmuQUSnyWAM7ZOaD91u7zTR0CEbAMyZxXR7JBtlEbTZUWMoc/Vbf6YfHoyJCKa4S8HKLnYtQxbO+7frhk8/+wVdm+eFD9uU4yhitsMG/eFvxuZV+zw0ZoZ+Q= 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=fail header.from= (p=quarantine dis=quarantine) 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 1662496994145805.2959355305998; Tue, 6 Sep 2022 13:43:14 -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-554-ZrkHDoc0OIydBxyDt45FHg-1; Tue, 06 Sep 2022 16:43:08 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id E557E1C0CE77; Tue, 6 Sep 2022 20:43:06 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9B2664C816; Tue, 6 Sep 2022 20:43:06 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 6A12A1946A49; Tue, 6 Sep 2022 20:43:06 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com [10.11.54.9]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 353741946A45 for ; Tue, 6 Sep 2022 20:43:05 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 27494492C3B; Tue, 6 Sep 2022 20:43:05 +0000 (UTC) Received: from mimecast-mx02.redhat.com (mimecast10.extmail.prod.ext.rdu2.redhat.com [10.11.55.26]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 223EB492CA2 for ; Tue, 6 Sep 2022 20:43:05 +0000 (UTC) Received: from us-smtp-1.mimecast.com (us-smtp-2.mimecast.com [205.139.110.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 01BE41C0CE78 for ; Tue, 6 Sep 2022 20:43:05 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70082.outbound.protection.outlook.com [40.107.7.82]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-148-HWVyzUg9P565g6WceEEkmA-2; Tue, 06 Sep 2022 16:42:59 -0400 Received: from AM0PR04MB4899.eurprd04.prod.outlook.com (2603:10a6:208:c5::16) by AM5PR04MB3297.eurprd04.prod.outlook.com (2603:10a6:206:3::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.11; Tue, 6 Sep 2022 20:42:57 +0000 Received: from AM0PR04MB4899.eurprd04.prod.outlook.com ([fe80::3fa0:968d:6c6b:a047]) by AM0PR04MB4899.eurprd04.prod.outlook.com ([fe80::3fa0:968d:6c6b:a047%3]) with mapi id 15.20.5612.012; Tue, 6 Sep 2022 20:42:57 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1662496992; 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=i3wkRc2z/9WFWEIrch+gQU+85WNnIYoVYtbCB47en4A=; b=C55aXMjMDvsZqVyP2JAuNQpe4L2NSNupB6yrWwmdbQEze+RGl5XFwcKAlvjkT22fZBziUK qzftlbYMudhfk4JD54iq25vKMjDtyg77iRgUjBKcVRwZX4HbjXv/mU/Tkr2lrMFNSmRv4A hcjMuAqayhzMOn5o722o981othmLqTM= X-MC-Unique: ZrkHDoc0OIydBxyDt45FHg-1 X-Original-To: libvir-list@listman.corp.redhat.com X-MC-Unique: HWVyzUg9P565g6WceEEkmA-2 From: Jim Fehlig To: libvir-list@redhat.com Subject: [PATCH 1/3] conf: Add USB redirect devices to domain capabilities Date: Tue, 6 Sep 2022 14:42:49 -0600 Message-ID: <20220906204251.16044-2-jfehlig@suse.com> In-Reply-To: <20220906204251.16044-1-jfehlig@suse.com> References: <20220906204251.16044-1-jfehlig@suse.com> X-ClientProxiedBy: FR3P281CA0018.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1d::11) To AM0PR04MB4899.eurprd04.prod.outlook.com (2603:10a6:208:c5::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM0PR04MB4899:EE_|AM5PR04MB3297:EE_ X-MS-Office365-Filtering-Correlation-Id: 497efb0e-3d4b-4442-7d94-08da90486180 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0 X-Microsoft-Antispam-Message-Info: MdbkKr74myzQa/gmNXRSq2RC9vAfDIvMbdCOsydavp9vrwOfWt6cp6usFbSQjykG4/rknBMP7xnhwr99zLpjUSBdLzc+AuqtxLYPs/4QhwEcQ/p9HZIkaDKii66zOhGYnB+K7ZWc/42L+OkOhUgfedq2f7EGMTPg5YlBTEn1KsEOd6q3az4/bYx7je/VnNFBUcTzAd4NB6YUDtg9nTm0K52Q4rKQ3JVrFs0LMV8BdDg6cWhIAYTfRVdqdElTDwD0B9194nc7g5fKAhX6tO+wCujNyW9sWLUWQ+iq8KXkSZbV4Cp097ckQzc3cwn0ZwTUbBrgCmumkYTXXceuzeS8JNSIniYpxOJwe7hvvojrObEBE7QM57z9S2YyjYj/s9gfjdH5gAWo7ESOrQyjngrIZSco37T8zccv5NxygJOP6lTq9W22wla2kyOL/o6QPJD2UsDFOG/OPEUn38s/5bNemE+kfLbBxktLhpDaGCJC5RLEhSyni2fogp8v+5h0Pk8WyzdFNgmWi3tRr/+xjkSFN7DXe70OJE8pvPh5Q+0GVdoe0bNuple4IkCF9PvjyP/sD+rGV/0ZSp7pYDNEetaXHMFXjrNdoqDWOzW0I5o0Guc36Zzn5d1Y2z0g/FDM1DQ5Wr0vCxSLSts6GVqkDiy2eRGlTsQ/Ofyjtbc8dTvzpABCq5J6nB98MhJIdMDf9rMjJdYEN0SZwtfik3QyKUCvrw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM0PR04MB4899.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(366004)(136003)(346002)(39860400002)(396003)(376002)(66476007)(8936002)(478600001)(41300700001)(6512007)(66946007)(86362001)(5660300002)(6666004)(66556008)(2906002)(30864003)(8676002)(38100700002)(26005)(316002)(2616005)(186003)(1076003)(6506007)(36756003)(6916009)(6486002); DIR:OUT; SFP:1101 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?VCjggWiPF4GpMG1onf/ClhAoGLgZIeC7/QBWnyfjbK3ar0iqAQMxw0/EerdU?= =?us-ascii?Q?N54ysqvgYAHpLSsKZlDXQdf5BRzQ/1nEyU1lvZPdT2SLfv2UM4bdqMkcTiSo?= =?us-ascii?Q?FYzCX+eO2GsBvEQn8ruaVr5oZXSF5QHkRmyJWXUjetIrBJtlZ2HLE2COuNHi?= =?us-ascii?Q?3XsNECOMUy+6486R59o2xHEumtGoweASHPOZYOaga/RmlgtiTjdLc62y+Wub?= =?us-ascii?Q?agmJdPL+7gQOHMMHYYlzVgYZeZN7qL/As6iz5Eeai6lvtLhtQEWPEj5aoR0m?= =?us-ascii?Q?/wSIDlTFW9WrY4qdRQJbIxJZIQNrM5hPCAfb/8zKEMnSBiN1hRNr+y7QaQIH?= =?us-ascii?Q?v8xgqN3X1UVX1Xjo6bojs5bgEepsJy4BNZ+UNc8y+fUNTsM4XnEzRrcXsh0v?= =?us-ascii?Q?PtOStoIMfn3aYRPPugd2DlOVUFfFBVvH6owHI4NSTopw68Nzg7uKzeLwuLrp?= =?us-ascii?Q?FF08WA4PumvzB3vt92jrLa9OaIVnHvUrP2fzNcXYNXwdtIDhtQulFQhqtLXq?= =?us-ascii?Q?dAGvCeERD+hLE/ntjuEmVUJUiBr8fHYdLfUko9GWd1dAUuXzjn6Rruejj8fU?= =?us-ascii?Q?yEIisVXGFfXi2FfedXqAQlMOokcvGaO3UoPWL+PrSQtwTf2hPH8RHUod9iBx?= =?us-ascii?Q?KQrc+Gw7/6kTDrg0DjfcQpbZiJciyZTYYc1JfTsbrfwO+WNJc7S4WLlZ4KLJ?= =?us-ascii?Q?oUmN1oYU2pO3XlPsFp4QE2SVbO0qSV1xUWlz/cG9uFPwMzKwiNQmp9oiCNeh?= =?us-ascii?Q?D5Ku4BBeB5buzbreOrKvraPU6fDd53SMOL7nRHLwxl045vimfQh/VJEOldea?= =?us-ascii?Q?aWwZGXLI7/GQhn6cbfruioPMaSBHlogf0yQ+3t8yk3MlWHWtavTqVoZFfH5B?= =?us-ascii?Q?P/6fQ5g89iZgeoAy2966QbhzU311VGZVjVws43se/KL1hSui2Lxy6TeaDbLT?= =?us-ascii?Q?DvkR77vim5MQ1rxfnwv1KiMNFTgTgelZvXus67vhFrXUCh05hQuqNRU4WLpW?= =?us-ascii?Q?OE4rWDfEtQLc2G/cLPsKXoWwZppEhSbbJuRptUHYn+sjY45wbBWbpst6xPZN?= =?us-ascii?Q?o6ugX39UsYUWVwl+ugpC5N4vS4rAzVcxjgSTdGEBgAhRkEpoPwa7B2xBw3hQ?= =?us-ascii?Q?amVffRXS2Yd6+jruNXRz3PQEnroQ5qWcgpJFoad/bHTK/VHXABylTQelOO48?= =?us-ascii?Q?RMePy96ZUeI+z1MTBRHM5xYK0Eg2fcqA0wI7k3gdtm9xNOmpU+5DqPgug4tP?= =?us-ascii?Q?ENZqgEZYqoIuzHzMyN7lCy0O3Fxo+Chp3x5CxpkfmGVGMZVaZg62ORHzS5A4?= =?us-ascii?Q?Y0Zcx3qPhR/tilj5a9YROHapzmpbL1obScBdP7lo1NE41ZSqZmCbEwzwjz5h?= =?us-ascii?Q?l9QqYWvxmuNn+5pUrkLyMl2Ij6S7KZpzvYiiZybr6RAUbZAN4f9iq0qnhstE?= =?us-ascii?Q?OyfoMzKhs3+O53DkRePYSoZhW0EA5TYF3g9RN+I+iGJ26NFk+EBV2+kJgYgS?= =?us-ascii?Q?9gGMedj4YFwBm4l4l0CD674p9UqhMi3tAVivQIbNLWEa2U/zK8dZwFw2KXJk?= =?us-ascii?Q?lxWikfvFpdg7xxsMGlUGDwzf68is8HiAjRCGSKa6?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 497efb0e-3d4b-4442-7d94-08da90486180 X-MS-Exchange-CrossTenant-AuthSource: AM0PR04MB4899.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2022 20:42:57.9045 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Mri3BYjPxwaG76YplRFaGRbRmncBzTvd+YBywPAS1Earnwe6btXFQgBO4+eg8z3EOAwvkg4/MqM90f3YywJmog== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR04MB3297 X-Mimecast-Impersonation-Protect: Policy=CLT - Impersonation Protection Definition; Similar Internal Domain=false; Similar Monitored External Domain=false; Custom External Domain=false; Mimecast External Domain=false; Newly Observed Domain=false; Internal User Name=false; Custom Display Name List=false; Reply-to Address Mismatch=false; Targeted Threat Dictionary=false; Mimecast Threat Dictionary=false; Custom Threat Dictionary=false X-Scanned-By: MIMEDefang 2.85 on 10.11.54.9 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.79 on 10.11.54.5 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1662496996289100001 Content-Type: text/plain; charset="utf-8" As qemu becomes more modularized, it is important for libvirt to advertise availability of the modularized functionality through capabilities. This change adds USB redirect devices to domain capabilities, allowing clients such as virt-install to avoid using redirdev devices when not supported by the target qemu. Signed-off-by: Jim Fehlig --- docs/formatdomaincaps.rst | 22 +++++++++++++++++++ src/conf/domain_capabilities.c | 13 +++++++++++ src/conf/domain_capabilities.h | 8 +++++++ src/conf/schemas/domaincaps.rng | 10 +++++++++ src/qemu/qemu_capabilities.c | 17 ++++++++++++++ src/qemu/qemu_capabilities.h | 3 +++ .../domaincapsdata/qemu_4.2.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_4.2.0-tcg.x86_64.xml | 5 +++++ .../qemu_4.2.0-virt.aarch64.xml | 1 + tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 1 + tests/domaincapsdata/qemu_4.2.0.ppc64.xml | 1 + tests/domaincapsdata/qemu_4.2.0.s390x.xml | 5 +++++ tests/domaincapsdata/qemu_4.2.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_5.0.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_5.0.0-tcg.x86_64.xml | 5 +++++ .../qemu_5.0.0-virt.aarch64.xml | 1 + tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 1 + tests/domaincapsdata/qemu_5.0.0.ppc64.xml | 1 + tests/domaincapsdata/qemu_5.0.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_5.1.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_5.1.0-tcg.x86_64.xml | 5 +++++ tests/domaincapsdata/qemu_5.1.0.sparc.xml | 5 +++++ tests/domaincapsdata/qemu_5.1.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 5 +++++ .../qemu_5.2.0-virt.aarch64.xml | 1 + tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 1 + tests/domaincapsdata/qemu_5.2.0.ppc64.xml | 1 + tests/domaincapsdata/qemu_5.2.0.s390x.xml | 5 +++++ tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 5 +++++ .../qemu_6.0.0-virt.aarch64.xml | 1 + tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 1 + tests/domaincapsdata/qemu_6.0.0.s390x.xml | 5 +++++ tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml | 5 +++++ tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_6.2.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml | 5 +++++ .../qemu_6.2.0-virt.aarch64.xml | 5 +++++ tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 5 +++++ tests/domaincapsdata/qemu_6.2.0.ppc64.xml | 1 + tests/domaincapsdata/qemu_6.2.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 5 +++++ .../qemu_7.0.0-virt.aarch64.xml | 5 +++++ tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 5 +++++ tests/domaincapsdata/qemu_7.0.0.ppc64.xml | 5 +++++ tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 5 +++++ .../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 5 +++++ tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 5 +++++ 54 files changed, 265 insertions(+) diff --git a/docs/formatdomaincaps.rst b/docs/formatdomaincaps.rst index 70f46b972a..557b61bf26 100644 --- a/docs/formatdomaincaps.rst +++ b/docs/formatdomaincaps.rst @@ -529,6 +529,28 @@ TPM device capabilities are exposed under the ``tpm`` = element. For instance: ``backendVersion`` Options for the ``version`` attribute of the ```` elemen= t. =20 +USB redirect device +^^^^^^^^^^^^^^^^^^^ + +USB redirdev device capabilities are exposed under the ``redirdev`` elemen= t. For instance: + +:: + + + ... + + + + usb + + + ... + + + +``bus`` + Options for the ``bus`` attribute of the ```` element. + Features ~~~~~~~~ =20 diff --git a/src/conf/domain_capabilities.c b/src/conf/domain_capabilities.c index 653123f293..9cb1dbe7bd 100644 --- a/src/conf/domain_capabilities.c +++ b/src/conf/domain_capabilities.c @@ -559,6 +559,18 @@ virDomainCapsDeviceFilesystemFormat(virBuffer *buf, } =20 =20 +static void +virDomainCapsDeviceRedirdevFormat(virBuffer *buf, + const virDomainCapsDeviceRedirdev *redir= dev) +{ + FORMAT_PROLOGUE(redirdev); + + ENUM_PROCESS(redirdev, bus, virDomainRedirdevBusTypeToString); + + FORMAT_EPILOGUE(redirdev); +} + + /** * virDomainCapsFeatureGICFormat: * @buf: target buffer @@ -672,6 +684,7 @@ virDomainCapsFormat(const virDomainCaps *caps) virDomainCapsDeviceRNGFormat(&buf, &caps->rng); virDomainCapsDeviceFilesystemFormat(&buf, &caps->filesystem); virDomainCapsDeviceTPMFormat(&buf, &caps->tpm); + virDomainCapsDeviceRedirdevFormat(&buf, &caps->redirdev); =20 virBufferAdjustIndent(&buf, -2); virBufferAddLit(&buf, "\n"); diff --git a/src/conf/domain_capabilities.h b/src/conf/domain_capabilities.h index a526969cda..de2a89c963 100644 --- a/src/conf/domain_capabilities.h +++ b/src/conf/domain_capabilities.h @@ -130,6 +130,13 @@ struct _virDomainCapsDeviceTPM { virDomainCapsEnum backendVersion; /* virDomainTPMVersion */ }; =20 +STATIC_ASSERT_ENUM(VIR_DOMAIN_REDIRDEV_BUS_LAST); +typedef struct _virDomainCapsDeviceRedirdev virDomainCapsDeviceRedirdev; +struct _virDomainCapsDeviceRedirdev { + virTristateBool supported; + virDomainCapsEnum bus; /* virDomainRedirdevBus */ +}; + STATIC_ASSERT_ENUM(VIR_DOMAIN_FS_DRIVER_TYPE_LAST); typedef struct _virDomainCapsDeviceFilesystem virDomainCapsDeviceFilesyste= m; struct _virDomainCapsDeviceFilesystem { @@ -225,6 +232,7 @@ struct _virDomainCaps { virDomainCapsDeviceRNG rng; virDomainCapsDeviceFilesystem filesystem; virDomainCapsDeviceTPM tpm; + virDomainCapsDeviceRedirdev redirdev; /* add new domain devices here */ =20 virDomainCapsFeatureGIC gic; diff --git a/src/conf/schemas/domaincaps.rng b/src/conf/schemas/domaincaps.= rng index 9cbc2467ab..8da3fbb352 100644 --- a/src/conf/schemas/domaincaps.rng +++ b/src/conf/schemas/domaincaps.rng @@ -195,6 +195,9 @@ + + + =20 @@ -247,6 +250,13 @@ =20 + + + + + + + diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 71018b4f6b..7d99050fa9 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -6342,6 +6342,21 @@ virQEMUCapsFillDomainDeviceTPMCaps(virQEMUCaps *qemu= Caps, } =20 =20 +void +virQEMUCapsFillDomainDeviceRedirdevCaps(virQEMUCaps *qemuCaps, + virDomainCapsDeviceRedirdev *redir= dev) +{ + if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_USB_REDIR)) { + redirdev->supported =3D VIR_TRISTATE_BOOL_YES; + redirdev->bus.report =3D true; + VIR_DOMAIN_CAPS_ENUM_SET(redirdev->bus, VIR_DOMAIN_REDIRDEV_BUS_US= B); + } else { + redirdev->supported =3D VIR_TRISTATE_BOOL_NO; + } +} + + + /** * virQEMUCapsSupportsGICVersion: * @qemuCaps: QEMU capabilities @@ -6477,6 +6492,7 @@ virQEMUCapsFillDomainCaps(virQEMUCaps *qemuCaps, virDomainCapsDeviceRNG *rng =3D &domCaps->rng; virDomainCapsDeviceFilesystem *filesystem =3D &domCaps->filesystem; virDomainCapsDeviceTPM *tpm =3D &domCaps->tpm; + virDomainCapsDeviceRedirdev *redirdev =3D &domCaps->redirdev; virDomainCapsMemoryBacking *memoryBacking =3D &domCaps->memoryBacking; =20 virQEMUCapsFillDomainFeaturesFromQEMUCaps(qemuCaps, domCaps); @@ -6509,6 +6525,7 @@ virQEMUCapsFillDomainCaps(virQEMUCaps *qemuCaps, virQEMUCapsFillDomainDeviceRNGCaps(qemuCaps, rng); virQEMUCapsFillDomainDeviceFSCaps(qemuCaps, filesystem); virQEMUCapsFillDomainDeviceTPMCaps(qemuCaps, tpm); + virQEMUCapsFillDomainDeviceRedirdevCaps(qemuCaps, redirdev); virQEMUCapsFillDomainFeatureGICCaps(qemuCaps, domCaps); virQEMUCapsFillDomainFeatureSEVCaps(qemuCaps, domCaps); virQEMUCapsFillDomainFeatureS390PVCaps(qemuCaps, domCaps); diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 382c357a78..85b989368f 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -830,6 +830,9 @@ void virQEMUCapsFillDomainDeviceFSCaps(virQEMUCaps *qem= uCaps, void virQEMUCapsFillDomainDeviceTPMCaps(virQEMUCaps *qemuCaps, virDomainCapsDeviceTPM *tpm); =20 +void virQEMUCapsFillDomainDeviceRedirdevCaps(virQEMUCaps *qemuCaps, + virDomainCapsDeviceRedirdev *= redirdev); + bool virQEMUCapsGuestIsNative(virArch host, virArch guest); =20 diff --git a/tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_4.2.0-q35.x86_64.xml index 0ec4c570ac..a39ada0182 100644 --- a/tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml @@ -216,6 +216,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_4.2.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_4.2.0-tcg.x86_64.xml index 4e0cb08b72..e054993aaf 100644 --- a/tests/domaincapsdata/qemu_4.2.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_4.2.0-tcg.x86_64.xml @@ -231,6 +231,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_4.2.0-virt.aarch64.xml b/tests/domai= ncapsdata/qemu_4.2.0-virt.aarch64.xml index 05d606967b..579ca0eed7 100644 --- a/tests/domaincapsdata/qemu_4.2.0-virt.aarch64.xml +++ b/tests/domaincapsdata/qemu_4.2.0-virt.aarch64.xml @@ -165,6 +165,7 @@ + diff --git a/tests/domaincapsdata/qemu_4.2.0.aarch64.xml b/tests/domaincaps= data/qemu_4.2.0.aarch64.xml index f19ad5e6db..1632c85d7a 100644 --- a/tests/domaincapsdata/qemu_4.2.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_4.2.0.aarch64.xml @@ -163,6 +163,7 @@ + diff --git a/tests/domaincapsdata/qemu_4.2.0.ppc64.xml b/tests/domaincapsda= ta/qemu_4.2.0.ppc64.xml index 8ea7ad5714..909feac47c 100644 --- a/tests/domaincapsdata/qemu_4.2.0.ppc64.xml +++ b/tests/domaincapsdata/qemu_4.2.0.ppc64.xml @@ -136,6 +136,7 @@ 1.2 + diff --git a/tests/domaincapsdata/qemu_4.2.0.s390x.xml b/tests/domaincapsda= ta/qemu_4.2.0.s390x.xml index fb162ea578..1c3877ec0c 100644 --- a/tests/domaincapsdata/qemu_4.2.0.s390x.xml +++ b/tests/domaincapsdata/qemu_4.2.0.s390x.xml @@ -238,6 +238,11 @@ + + + usb + + diff --git a/tests/domaincapsdata/qemu_4.2.0.x86_64.xml b/tests/domaincapsd= ata/qemu_4.2.0.x86_64.xml index d8793bb38a..666a974489 100644 --- a/tests/domaincapsdata/qemu_4.2.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_4.2.0.x86_64.xml @@ -216,6 +216,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_5.0.0-q35.x86_64.xml index 036e446c64..e6625bcdbc 100644 --- a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml @@ -218,6 +218,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_5.0.0-tcg.x86_64.xml index 4df4e86cf1..9e1ffe3a4d 100644 --- a/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml @@ -233,6 +233,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.0.0-virt.aarch64.xml b/tests/domai= ncapsdata/qemu_5.0.0-virt.aarch64.xml index bb8500baa6..631bb6b15f 100644 --- a/tests/domaincapsdata/qemu_5.0.0-virt.aarch64.xml +++ b/tests/domaincapsdata/qemu_5.0.0-virt.aarch64.xml @@ -177,6 +177,7 @@ 1.2 + diff --git a/tests/domaincapsdata/qemu_5.0.0.aarch64.xml b/tests/domaincaps= data/qemu_5.0.0.aarch64.xml index e7227d092f..dcf8d22806 100644 --- a/tests/domaincapsdata/qemu_5.0.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_5.0.0.aarch64.xml @@ -175,6 +175,7 @@ 1.2 + diff --git a/tests/domaincapsdata/qemu_5.0.0.ppc64.xml b/tests/domaincapsda= ta/qemu_5.0.0.ppc64.xml index cac329fd08..fcfc2266d2 100644 --- a/tests/domaincapsdata/qemu_5.0.0.ppc64.xml +++ b/tests/domaincapsdata/qemu_5.0.0.ppc64.xml @@ -142,6 +142,7 @@ 1.2 + diff --git a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml b/tests/domaincapsd= ata/qemu_5.0.0.x86_64.xml index e901d12918..f08278cfbf 100644 --- a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.0.0.x86_64.xml @@ -218,6 +218,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_5.1.0-q35.x86_64.xml index df1572c901..814f81defc 100644 --- a/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml @@ -219,6 +219,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_5.1.0-tcg.x86_64.xml index 3a6dc7b5fc..6391383da7 100644 --- a/tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml @@ -233,6 +233,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.1.0.sparc.xml b/tests/domaincapsda= ta/qemu_5.1.0.sparc.xml index 5c1c0c4680..ea4d1d28dd 100644 --- a/tests/domaincapsdata/qemu_5.1.0.sparc.xml +++ b/tests/domaincapsdata/qemu_5.1.0.sparc.xml @@ -105,6 +105,11 @@ + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.1.0.x86_64.xml b/tests/domaincapsd= ata/qemu_5.1.0.x86_64.xml index e0e8e0ed12..5dd7efe165 100644 --- a/tests/domaincapsdata/qemu_5.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.1.0.x86_64.xml @@ -219,6 +219,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_5.2.0-q35.x86_64.xml index 6a49f568be..8b4c1dd954 100644 --- a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml @@ -219,6 +219,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_5.2.0-tcg.x86_64.xml index f41f47c346..3306a14ba0 100644 --- a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml @@ -233,6 +233,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.2.0-virt.aarch64.xml b/tests/domai= ncapsdata/qemu_5.2.0-virt.aarch64.xml index dfd792c031..4571622c4c 100644 --- a/tests/domaincapsdata/qemu_5.2.0-virt.aarch64.xml +++ b/tests/domaincapsdata/qemu_5.2.0-virt.aarch64.xml @@ -177,6 +177,7 @@ 1.2 + diff --git a/tests/domaincapsdata/qemu_5.2.0.aarch64.xml b/tests/domaincaps= data/qemu_5.2.0.aarch64.xml index e7227d092f..dcf8d22806 100644 --- a/tests/domaincapsdata/qemu_5.2.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_5.2.0.aarch64.xml @@ -175,6 +175,7 @@ 1.2 + diff --git a/tests/domaincapsdata/qemu_5.2.0.ppc64.xml b/tests/domaincapsda= ta/qemu_5.2.0.ppc64.xml index 88e4837ec3..bc43fb6a38 100644 --- a/tests/domaincapsdata/qemu_5.2.0.ppc64.xml +++ b/tests/domaincapsdata/qemu_5.2.0.ppc64.xml @@ -142,6 +142,7 @@ 1.2 + diff --git a/tests/domaincapsdata/qemu_5.2.0.s390x.xml b/tests/domaincapsda= ta/qemu_5.2.0.s390x.xml index 2a2ca8abcf..041c1ede15 100644 --- a/tests/domaincapsdata/qemu_5.2.0.s390x.xml +++ b/tests/domaincapsdata/qemu_5.2.0.s390x.xml @@ -240,6 +240,11 @@ + + + usb + + diff --git a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml b/tests/domaincapsd= ata/qemu_5.2.0.x86_64.xml index 0a6f72df7e..6147fc84b8 100644 --- a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml @@ -219,6 +219,11 @@ 1.2 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_6.0.0-q35.x86_64.xml index 40df34edf0..3e36847385 100644 --- a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml @@ -221,6 +221,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_6.0.0-tcg.x86_64.xml index e563b0cb59..d622f67ef3 100644 --- a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml @@ -235,6 +235,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.0.0-virt.aarch64.xml b/tests/domai= ncapsdata/qemu_6.0.0-virt.aarch64.xml index 958c40437f..9bf854869f 100644 --- a/tests/domaincapsdata/qemu_6.0.0-virt.aarch64.xml +++ b/tests/domaincapsdata/qemu_6.0.0-virt.aarch64.xml @@ -179,6 +179,7 @@ 2.0 + diff --git a/tests/domaincapsdata/qemu_6.0.0.aarch64.xml b/tests/domaincaps= data/qemu_6.0.0.aarch64.xml index 4164bf49f7..fbd48cac00 100644 --- a/tests/domaincapsdata/qemu_6.0.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_6.0.0.aarch64.xml @@ -177,6 +177,7 @@ 2.0 + diff --git a/tests/domaincapsdata/qemu_6.0.0.s390x.xml b/tests/domaincapsda= ta/qemu_6.0.0.s390x.xml index 13fa3a637e..880ea5062a 100644 --- a/tests/domaincapsdata/qemu_6.0.0.s390x.xml +++ b/tests/domaincapsdata/qemu_6.0.0.s390x.xml @@ -241,6 +241,11 @@ + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml b/tests/domaincapsd= ata/qemu_6.0.0.x86_64.xml index eb60a2105f..84e575829d 100644 --- a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml @@ -221,6 +221,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_6.1.0-q35.x86_64.xml index 0480a086c6..a25fa7bacc 100644 --- a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml @@ -222,6 +222,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_6.1.0-tcg.x86_64.xml index 7baecb0c73..2972e119e7 100644 --- a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml @@ -235,6 +235,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml b/tests/domaincapsd= ata/qemu_6.1.0.x86_64.xml index 9cbe93ad46..60da420044 100644 --- a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml @@ -222,6 +222,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_6.2.0-q35.x86_64.xml index 07b951b81f..61d43e6599 100644 --- a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml @@ -222,6 +222,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_6.2.0-tcg.x86_64.xml index 367e656b31..057a67c034 100644 --- a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml @@ -236,6 +236,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.2.0-virt.aarch64.xml b/tests/domai= ncapsdata/qemu_6.2.0-virt.aarch64.xml index 99c0fc03fd..2843599b57 100644 --- a/tests/domaincapsdata/qemu_6.2.0-virt.aarch64.xml +++ b/tests/domaincapsdata/qemu_6.2.0-virt.aarch64.xml @@ -181,6 +181,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.2.0.aarch64.xml b/tests/domaincaps= data/qemu_6.2.0.aarch64.xml index 8e04508694..45806a8f10 100644 --- a/tests/domaincapsdata/qemu_6.2.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_6.2.0.aarch64.xml @@ -179,6 +179,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_6.2.0.ppc64.xml b/tests/domaincapsda= ta/qemu_6.2.0.ppc64.xml index 0bbe501383..cc3a45618c 100644 --- a/tests/domaincapsdata/qemu_6.2.0.ppc64.xml +++ b/tests/domaincapsdata/qemu_6.2.0.ppc64.xml @@ -141,6 +141,7 @@ 2.0 + diff --git a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml b/tests/domaincapsd= ata/qemu_6.2.0.x86_64.xml index f363cf1b79..56fae62434 100644 --- a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml @@ -222,6 +222,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_7.0.0-q35.x86_64.xml index 136dadaeb4..5e4d4d48da 100644 --- a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml @@ -223,6 +223,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_7.0.0-tcg.x86_64.xml index c684759356..8a18d45fca 100644 --- a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml @@ -237,6 +237,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml b/tests/domai= ncapsdata/qemu_7.0.0-virt.aarch64.xml index 1d6f29db9f..8e3313f383 100644 --- a/tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml +++ b/tests/domaincapsdata/qemu_7.0.0-virt.aarch64.xml @@ -180,6 +180,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.0.0.aarch64.xml b/tests/domaincaps= data/qemu_7.0.0.aarch64.xml index 73097470f8..f25ab0b796 100644 --- a/tests/domaincapsdata/qemu_7.0.0.aarch64.xml +++ b/tests/domaincapsdata/qemu_7.0.0.aarch64.xml @@ -178,6 +178,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.0.0.ppc64.xml b/tests/domaincapsda= ta/qemu_7.0.0.ppc64.xml index 7765c941c5..c43c63c741 100644 --- a/tests/domaincapsdata/qemu_7.0.0.ppc64.xml +++ b/tests/domaincapsdata/qemu_7.0.0.ppc64.xml @@ -142,6 +142,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml b/tests/domaincapsd= ata/qemu_7.0.0.x86_64.xml index 0f9a65ef1b..410cc84977 100644 --- a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml @@ -223,6 +223,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml b/tests/domainc= apsdata/qemu_7.1.0-q35.x86_64.xml index 30082712f4..3b5a846342 100644 --- a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml +++ b/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml @@ -222,6 +222,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml b/tests/domainc= apsdata/qemu_7.1.0-tcg.x86_64.xml index bcca02f0a4..dd7b8c2ab9 100644 --- a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml +++ b/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml @@ -235,6 +235,11 @@ 2.0 + + + usb + + diff --git a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml b/tests/domaincapsd= ata/qemu_7.1.0.x86_64.xml index f377b8e3a9..d8c83e03f3 100644 --- a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml +++ b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml @@ -222,6 +222,11 @@ 2.0 + + + usb + + --=20 2.37.1