From nobody Mon Feb 9 00:11:55 2026 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=1682065577; cv=none; d=zohomail.com; s=zohoarc; b=JE/8WcrjSOQL7oCC7jS55p5p57XdYM9TLvGquoXMmA/EAZdH3+whNCfQC8Udf8W10DljOcggDK3Lo5bZFRC8qAsHgvyblshhNfDDPMO7UF7rQFzkjjxUmyPARE4GESNBtrx/nH0KReuxijirzVasfd3XIgiSEFxAZuSncqolkEY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1682065577; 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=5Az9IEZhgK6RzTvJFO8hc+zQYXSPu7XCyqGr+cVbDlI=; b=bfJLBCkrLyZ6rzaaKOgPr7Q5p+mOQJsDXZGeXMBs/Rsc0AmQVzsz/9zCvzSUevUQVp85Htzg+ebELgIEWzDPREIuPfpHZLa1ICoc3rtTSHif7ASmQQsBPJVTEHpYJQrPDWuKTMvTd+goR0tWgorf/KM4wTZuyS17aYCOcnZIEtE= 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 1682065577404209.60064879318907; Fri, 21 Apr 2023 01:26:17 -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-251-O6nGahydMw6tpd5gMPijYA-1; Fri, 21 Apr 2023 04:25:22 -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 72B013813F58; Fri, 21 Apr 2023 08:25:17 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (unknown [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id 5A55B407D44E; Fri, 21 Apr 2023 08:25:17 +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 37EB11946A52; Fri, 21 Apr 2023 08:25:17 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 563481946A46 for ; Fri, 21 Apr 2023 08:25:15 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 48B4118EC7; Fri, 21 Apr 2023 08:25:15 +0000 (UTC) Received: from localhost.localdomain (unknown [10.43.2.39]) by smtp.corp.redhat.com (Postfix) with ESMTP id E4B5763A51 for ; Fri, 21 Apr 2023 08:25:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1682065576; 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=5Az9IEZhgK6RzTvJFO8hc+zQYXSPu7XCyqGr+cVbDlI=; b=NkSMkBcKaZMUabt9a4unigeeFDLmDUkNCurxGAuIOMUgMcYF/UDJhNb3EcWTaAD2V7UwMD cq55nOY/r6WUW+Nc5Z7/a52/mEB/a1lQVKrevkkAvd1bc6B9CLeDMdkbgjbiFm+tb5y475 QVkBIZFfLX3L4OTfzVS79TfXRtgEW9w= X-MC-Unique: O6nGahydMw6tpd5gMPijYA-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Michal Privoznik To: libvir-list@redhat.com Subject: [PATCH 05/11] qemuhotplugtest: Call qemuDomainAttachDeviceLive() directly Date: Fri, 21 Apr 2023 10:25:04 +0200 Message-Id: <841b30ff41f8336ee749827dac8879f96328ef26.1682065352.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.1 on 10.11.54.5 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 3.1 on 10.11.54.2 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: 1682065578429100001 Content-Type: text/plain; charset="utf-8"; x-default="true" There's no reason for qemuhotplugtest to reimplement which device attach function to call (testQemuHotplugAttach()) when qemuDomainAttachDeviceLive() already does that. Thus, drop testQemuHotplugAttach() and call qemuDomainAttachDeviceLive() directly. There's one small catch though, qemuDomainAttachDeviceLive() now calls one monitor command more (to list all aliases). We don't care really, because we're not testing that. Therefore, just provide a dummy reply. Signed-off-by: Michal Privoznik Reviewed-by: Kristina Hanicova --- tests/qemuhotplugtest.c | 68 +++++------------------------------------ 1 file changed, 7 insertions(+), 61 deletions(-) diff --git a/tests/qemuhotplugtest.c b/tests/qemuhotplugtest.c index 4f9d1bcb2a..e3744964d5 100644 --- a/tests/qemuhotplugtest.c +++ b/tests/qemuhotplugtest.c @@ -109,66 +109,6 @@ qemuHotplugCreateObjects(virDomainXMLOption *xmlopt, return 0; } =20 -static int -testQemuHotplugAttach(virDomainObj *vm, - virDomainDeviceDef *dev) -{ - int ret =3D -1; - - switch (dev->type) { - case VIR_DOMAIN_DEVICE_DISK: - /* conn in only used for storage pool and secrets lookup so as long - * as we don't use any of them, passing NULL should be safe - */ - ret =3D qemuDomainAttachDeviceDiskLive(&driver, vm, dev); - break; - case VIR_DOMAIN_DEVICE_CHR: - ret =3D qemuDomainAttachChrDevice(&driver, vm, dev); - break; - case VIR_DOMAIN_DEVICE_SHMEM: - ret =3D qemuDomainAttachShmemDevice(vm, dev->data.shmem); - break; - case VIR_DOMAIN_DEVICE_WATCHDOG: - ret =3D qemuDomainAttachWatchdog(vm, dev->data.watchdog); - break; - case VIR_DOMAIN_DEVICE_HOSTDEV: - ret =3D qemuDomainAttachHostDevice(&driver, vm, dev->data.hostdev); - break; - case VIR_DOMAIN_DEVICE_NET: - ret =3D qemuDomainAttachNetDevice(&driver, vm, dev->data.net); - break; - - case VIR_DOMAIN_DEVICE_LEASE: - case VIR_DOMAIN_DEVICE_FS: - case VIR_DOMAIN_DEVICE_INPUT: - case VIR_DOMAIN_DEVICE_SOUND: - case VIR_DOMAIN_DEVICE_VIDEO: - case VIR_DOMAIN_DEVICE_CONTROLLER: - case VIR_DOMAIN_DEVICE_GRAPHICS: - case VIR_DOMAIN_DEVICE_HUB: - case VIR_DOMAIN_DEVICE_REDIRDEV: - case VIR_DOMAIN_DEVICE_NONE: - case VIR_DOMAIN_DEVICE_SMARTCARD: - case VIR_DOMAIN_DEVICE_MEMBALLOON: - case VIR_DOMAIN_DEVICE_NVRAM: - case VIR_DOMAIN_DEVICE_LAST: - case VIR_DOMAIN_DEVICE_RNG: - case VIR_DOMAIN_DEVICE_TPM: - case VIR_DOMAIN_DEVICE_PANIC: - case VIR_DOMAIN_DEVICE_MEMORY: - case VIR_DOMAIN_DEVICE_IOMMU: - case VIR_DOMAIN_DEVICE_VSOCK: - case VIR_DOMAIN_DEVICE_AUDIO: - case VIR_DOMAIN_DEVICE_CRYPTO: - default: - VIR_TEST_VERBOSE("device type '%s' cannot be attached", - virDomainDeviceTypeToString(dev->type)); - break; - } - - return ret; -} - static int testQemuHotplugUpdate(virDomainObj *vm, virDomainDeviceDef *dev) @@ -325,6 +265,12 @@ testQemuHotplug(const void *data) goto cleanup; } =20 + /* After successful attach, we list all aliases. We don't care for tha= t in + * the test. Add a dummy reply. */ + if (test->action =3D=3D ATTACH && + qemuMonitorTestAddItem(test_mon, "qom-list", "{\"return\":[]}") < = 0) + goto cleanup; + priv =3D vm->privateData; priv->mon =3D qemuMonitorTestGetMonitor(test_mon); =20 @@ -335,7 +281,7 @@ testQemuHotplug(const void *data) =20 switch (test->action) { case ATTACH: - ret =3D testQemuHotplugAttach(vm, dev); + ret =3D qemuDomainAttachDeviceLive(vm, dev, &driver); if (ret =3D=3D 0) { /* vm->def stolen dev->data.* so we just need to free the dev * envelope */ --=20 2.39.2