From nobody Tue Dec 16 16:31:24 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1740042586124459.20682490235595; Thu, 20 Feb 2025 01:09:46 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 800FA1DC2; Thu, 20 Feb 2025 04:09:45 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id A83491F59; Thu, 20 Feb 2025 04:02:43 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 4EF9C1D52; Thu, 20 Feb 2025 04:02:36 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 0EB311D91 for ; Thu, 20 Feb 2025 04:02:11 -0500 (EST) Received: from mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-542-F89xMkCqOdO25r6nCnCqCg-1; Thu, 20 Feb 2025 04:02:08 -0500 Received: from mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.40]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id D7978193578F for ; Thu, 20 Feb 2025 09:02:07 +0000 (UTC) Received: from speedmetal.lan (unknown [10.44.22.26]) by mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id B0DAA19412A4 for ; Thu, 20 Feb 2025 09:02:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=3.4.4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1740042130; h=from:from: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; bh=xUcEIgl0HpNmYo21MDEHj86/wGJmrtX4isuH7t3Flcw=; b=fbKG25By1jGX4uDg5lJY7W8VoloqYQgS8VgvJjGj8Xwt5LMcdjGmEYjKIk4sS3ZU8Rbl1J Aj9pGxHvv+RhdH0cslm/KbwtQdTJeOvZUKe8NcjhlJ+mUiSlBb9xGbzu58rOFwsW87Rq/O 6ZhSlm7eJtGHuOojMmEviHcTvGyAoK0= X-MC-Unique: F89xMkCqOdO25r6nCnCqCg-1 X-Mimecast-MFC-AGG-ID: F89xMkCqOdO25r6nCnCqCg_1740042128 From: Peter Krempa To: devel@lists.libvirt.org Subject: [PATCH 21/21] qemuDomainGetStats: Convert worker functions to void Date: Thu, 20 Feb 2025 10:01:34 +0100 Message-ID: <49c5f782a019cced4d1c2432c81cf00cda3e8124.1740041997.git.pkrempa@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.40 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: l8IHsMSg44HUXZlZXhVBHujqJR4XwqAdtDv7naw0_zI_1740042128 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: M36KOXBWK5MNB7US6BJ36W4YO7IMWROT X-Message-ID-Hash: M36KOXBWK5MNB7US6BJ36W4YO7IMWROT X-MailFrom: pkrempa@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1740042587984019000 Content-Type: text/plain; charset="utf-8" The presence of a return value made it seem that it's expected to fail on errors which is not the case. The function is designed to skip anything it can't fill and not fail when fetching individual stats. Convert the workers to void to make it clear that it's expected not to fail. Signed-off-by: Peter Krempa --- src/qemu/qemu_driver.c | 73 +++++++++++++++--------------------------- 1 file changed, 25 insertions(+), 48 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 9e125d8b24..80c918312b 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -16556,7 +16556,7 @@ qemuConnectGetDomainCapabilities(virConnectPtr conn, } -static int +static void qemuDomainGetStatsState(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -16564,8 +16564,6 @@ qemuDomainGetStatsState(virQEMUDriver *driver G_GNU= C_UNUSED, { virTypedParamListAddInt(params, dom->state.state, "state.state"); virTypedParamListAddInt(params, dom->state.reason, "state.reason"); - - return 0; } @@ -16939,7 +16937,7 @@ qemuDomainGetStatsCpuHaltPollTime(virDomainObj *dom, return; } -static int +static void qemuDomainGetStatsCpu(virQEMUDriver *driver, virDomainObj *dom, virTypedParamList *params, @@ -16956,12 +16954,10 @@ qemuDomainGetStatsCpu(virQEMUDriver *driver, qemuDomainGetStatsCpuCache(driver, dom, params); qemuDomainGetStatsCpuHaltPollTime(dom, params, privflags); - - return 0; } -static int +static void qemuDomainGetStatsMemory(virQEMUDriver *driver, virDomainObj *dom, virTypedParamList *params, @@ -16969,11 +16965,10 @@ qemuDomainGetStatsMemory(virQEMUDriver *driver, { qemuDomainGetStatsMemoryBandwidth(driver, dom, params); - return 0; } -static int +static void qemuDomainGetStatsBalloon(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -16994,12 +16989,12 @@ qemuDomainGetStatsBalloon(virQEMUDriver *driver G= _GNUC_UNUSED, virTypedParamListAddULLong(params, virDomainDefGetMemoryTotal(dom->def= ), "balloon.maximum"); if (!HAVE_JOB(privflags) || !virDomainObjIsActive(dom)) - return 0; + return; nr_stats =3D qemuDomainMemoryStatsInternal(dom, stats, VIR_DOMAIN_MEMORY_STAT_NR); if (nr_stats < 0) - return 0; + return; #define STORE_MEM_RECORD(TAG, NAME) \ if (stats[i].tag =3D=3D VIR_DOMAIN_MEMORY_STAT_ ##TAG) \ @@ -17021,8 +17016,6 @@ qemuDomainGetStatsBalloon(virQEMUDriver *driver G_G= NUC_UNUSED, } #undef STORE_MEM_RECORD - - return 0; } @@ -17085,7 +17078,7 @@ qemuDomainAddStatsFromHashTable(GHashTable *stats, } -static int +static void qemuDomainGetStatsVcpu(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -17118,7 +17111,7 @@ qemuDomainGetStatsVcpu(virQEMUDriver *driver G_GNUC= _UNUSED, virDomainDefGetVcpus(dom->def), NULL, 0) < 0) { virResetLastError(); - return 0; + return; } if (HAVE_JOB(privflags) && qemuDomainRefreshStatsSchema(dom) =3D=3D 0)= { @@ -17163,15 +17156,13 @@ qemuDomainGetStatsVcpu(virQEMUDriver *driver G_GN= UC_UNUSED, qemuDomainAddStatsFromHashTable(stats, priv->statsSchema, prefix, = params); } - - return 0; } #define QEMU_ADD_NET_PARAM(params, num, name, value) \ if (value >=3D 0)\ virTypedParamListAddULLong((params), (value), "net.%zu.%s", (num),= (name)); -static int +static void qemuDomainGetStatsInterface(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -17180,7 +17171,7 @@ qemuDomainGetStatsInterface(virQEMUDriver *driver G= _GNUC_UNUSED, size_t i; if (!virDomainObjIsActive(dom)) - return 0; + return; virTypedParamListAddUInt(params, dom->def->nnets, "net.count"); @@ -17219,8 +17210,6 @@ qemuDomainGetStatsInterface(virQEMUDriver *driver G= _GNUC_UNUSED, QEMU_ADD_NET_PARAM(params, i, "tx.errs", tmp.tx_errs); QEMU_ADD_NET_PARAM(params, i, "tx.drop", tmp.tx_drop); } - - return 0; } #undef QEMU_ADD_NET_PARAM @@ -17481,7 +17470,7 @@ qemuDomainGetStatsBlockExportDisk(virDomainDiskDef = *disk, } -static int +static void qemuDomainGetStatsBlock(virQEMUDriver *driver, virDomainObj *dom, virTypedParamList *params, @@ -17518,12 +17507,10 @@ qemuDomainGetStatsBlock(virQEMUDriver *driver, virTypedParamListAddUInt(params, visited, "block.count"); virTypedParamListConcat(params, &blockparams); - - return 0; } -static int +static void qemuDomainGetStatsIOThread(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -17534,17 +17521,17 @@ qemuDomainGetStatsIOThread(virQEMUDriver *driver = G_GNUC_UNUSED, int niothreads =3D 0; if (!HAVE_JOB(privflags) || !virDomainObjIsActive(dom)) - return 0; + return; if (qemuDomainGetIOThreadsMon(dom, &iothreads, &niothreads) < 0) { virResetLastError(); - return 0; + return; } /* qemuDomainGetIOThreadsMon returns a NULL-terminated list, so we mus= t free * it even if it returns 0 */ if (niothreads =3D=3D 0) - return 0; + return; virTypedParamListAddUInt(params, niothreads, "iothread.count"); @@ -17564,8 +17551,6 @@ qemuDomainGetStatsIOThread(virQEMUDriver *driver G_= GNUC_UNUSED, for (i =3D 0; i < niothreads; i++) VIR_FREE(iothreads[i]); - - return 0; } @@ -17582,7 +17567,7 @@ qemuDomainGetStatsPerfOneEvent(virPerf *perf, virTypedParamListAddULLong(params, value, "perf.%s", virPerfEventTypeT= oString(type)); } -static int +static void qemuDomainGetStatsPerf(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -17597,12 +17582,10 @@ qemuDomainGetStatsPerf(virQEMUDriver *driver G_GN= UC_UNUSED, qemuDomainGetStatsPerfOneEvent(priv->perf, i, params); } - - return 0; } -static int +static void qemuDomainGetStatsDirtyRate(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -17613,7 +17596,7 @@ qemuDomainGetStatsDirtyRate(virQEMUDriver *driver G= _GNUC_UNUSED, int rv; if (!HAVE_JOB(privflags) || !virDomainObjIsActive(dom)) - return 0; + return; qemuDomainObjEnterMonitor(dom); rv =3D qemuMonitorQueryDirtyRate(priv->mon, &info); @@ -17621,7 +17604,7 @@ qemuDomainGetStatsDirtyRate(virQEMUDriver *driver G= _GNUC_UNUSED, if (rv < 0) { virResetLastError(); - return 0; + return; } virTypedParamListAddInt(params, info.status, "dirtyrate.calc_status"); @@ -17642,12 +17625,10 @@ qemuDomainGetStatsDirtyRate(virQEMUDriver *driver= G_GNUC_UNUSED, } } } - - return 0; } -static int +static void qemuDomainGetStatsVm(virQEMUDriver *driver G_GNUC_UNUSED, virDomainObj *dom, virTypedParamList *params, @@ -17659,10 +17640,10 @@ qemuDomainGetStatsVm(virQEMUDriver *driver G_GNUC= _UNUSED, virJSONValue *stats_obj =3D NULL; if (!HAVE_JOB(privflags) || !virDomainObjIsActive(dom)) - return 0; + return; if (qemuDomainRefreshStatsSchema(dom) < 0) - return 0; + return; qemuDomainObjEnterMonitor(dom); queried_stats =3D qemuMonitorQueryStats(priv->mon, @@ -17671,17 +17652,15 @@ qemuDomainGetStatsVm(virQEMUDriver *driver G_GNUC= _UNUSED, qemuDomainObjExitMonitor(dom); if (!queried_stats || virJSONValueArraySize(queried_stats) !=3D 1) - return 0; + return; stats_obj =3D virJSONValueArrayGet(queried_stats, 0); stats =3D qemuMonitorExtractQueryStats(stats_obj); qemuDomainAddStatsFromHashTable(stats, priv->statsSchema, "vm", params= ); - - return 0; } -typedef int +typedef void (*qemuDomainGetStatsFunc)(virQEMUDriver *driver, virDomainObj *dom, virTypedParamList *list, @@ -17795,9 +17774,7 @@ qemuDomainGetStats(virConnectPtr conn, for (i =3D 0; qemuDomainGetStatsWorkers[i].func; i++) { if (stats & qemuDomainGetStatsWorkers[i].stats) { - if (qemuDomainGetStatsWorkers[i].func(conn->privateData, dom, = params, - flags) < 0) - return -1; + qemuDomainGetStatsWorkers[i].func(conn->privateData, dom, para= ms, flags); } } --=20 2.48.1