From nobody Wed Mar 12 18:04:14 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 1741703455303850.5640231645169; Tue, 11 Mar 2025 07:30:55 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 996) id A8179978; Tue, 11 Mar 2025 10:30:54 -0400 (EDT) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 86BA91DB7; Tue, 11 Mar 2025 10:25:14 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 996) id 0FBE61D3B; Tue, 11 Mar 2025 10:25:10 -0400 (EDT) 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 69F5D1D26 for ; Tue, 11 Mar 2025 10:24:48 -0400 (EDT) Received: from mx-prod-mc-03.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-586-mg2OrNC_M8GIjvvSNf1zlA-1; Tue, 11 Mar 2025 10:24:45 -0400 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (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-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id AD7FD1955BC9 for ; Tue, 11 Mar 2025 14:24:44 +0000 (UTC) Received: from toolbx.redhat.com (unknown [10.42.28.44]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id B55541955BCB; Tue, 11 Mar 2025 14:24:43 +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=1741703088; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iCQwuufP/MFYQGpn05BAOx8h2+RVHZVakigE9qi26mY=; b=RGGHcRZ//5yDSTJUM5xFzGUzNFK22yGHjyaVkqUgNiKtY3fiZ36iyQZnjOXottl6nfNiZ6 YYrwsHz/QIbRt14V+11c8BGCS1UOpKw8gtVajzdBOvgH8h/umdo3AuAS/lxu8swEANshqP nI1RdNrDShbcpseMTE/hVN0tZTlFCic= X-MC-Unique: mg2OrNC_M8GIjvvSNf1zlA-1 X-Mimecast-MFC-AGG-ID: mg2OrNC_M8GIjvvSNf1zlA_1741703084 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: devel@lists.libvirt.org Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH v2 08/23] src: add constants for guest info 'load.' parameters Date: Tue, 11 Mar 2025 14:24:14 +0000 Message-ID: <20250311142429.1326816-9-berrange@redhat.com> In-Reply-To: <20250311142429.1326816-1-berrange@redhat.com> References: <20250311142429.1326816-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: yv6e2p-RY4ni202ITO-cfSJnbLQVxotxna7jlc6Ait8_1741703084 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: O34MQGBWC6HLSQ3RNLLJKCOFKCQP64DM X-Message-ID-Hash: O34MQGBWC6HLSQ3RNLLJKCOFKCQP64DM X-MailFrom: berrange@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: 1741703456704019000 Content-Type: text/plain; charset="utf-8" Contrary to most APIs returning typed parameters, there are no constants defined for the guest info data keys. This is was because many of the keys needs to be dynamically constructed using one or more array index values. It is possible to define constants while still supporting dynamic array indexes by simply defining the prefixes and suffixes as constants. The consuming code can then combine the constants with array index value. With this approach, it is practical to add constants for the guest info API keys. Signed-off-by: Daniel P. Berrang=C3=A9 Reviewed-by: Peter Krempa --- include/libvirt/libvirt-domain.h | 28 ++++++++++++++++++++++++++++ src/libvirt-domain.c | 8 +++----- src/qemu/qemu_driver.c | 6 +++--- 3 files changed, 34 insertions(+), 8 deletions(-) diff --git a/include/libvirt/libvirt-domain.h b/include/libvirt/libvirt-dom= ain.h index 38139ed8ec..d8161e148e 100644 --- a/include/libvirt/libvirt-domain.h +++ b/include/libvirt/libvirt-domain.h @@ -6943,6 +6943,34 @@ int virDomainSetLaunchSecurityState(virDomainPtr dom= ain, */ #define VIR_DOMAIN_GUEST_INFO_IF_SUFFIX_ADDR_SUFFIX_PREFIX ".prefix" =20 + +/** + * VIR_DOMAIN_GUEST_INFO_LOAD_1M: + * + * The guest load averaged over 1 minute as a double + * + * Since: 11.2.0 + */ +#define VIR_DOMAIN_GUEST_INFO_LOAD_1M "load.1m" + +/** + * VIR_DOMAIN_GUEST_INFO_LOAD_5M: + * + * The guest load averaged over 5 minutes as a double + * + * Since: 11.2.0 + */ +#define VIR_DOMAIN_GUEST_INFO_LOAD_5M "load.5m" + +/** + * VIR_DOMAIN_GUEST_INFO_LOAD_15M: + * + * The guest load averaged over 15 minutes as a double + * + * Since: 11.2.0 + */ +#define VIR_DOMAIN_GUEST_INFO_LOAD_15M "load.15m" + /** * virDomainGuestInfoTypes: * diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c index 4e91e7bd20..557efcc0c0 100644 --- a/src/libvirt-domain.c +++ b/src/libvirt-domain.c @@ -13239,11 +13239,9 @@ virDomainSetVcpu(virDomainPtr domain, * * VIR_DOMAIN_GUEST_INFO_LOAD: * Returns load (the number of processes in the runqueue or waiting for d= isk - * I/O) as double values: - * - * "load.1m" - load averaged over 1 minute - * "load.5m" - load averaged over 5 minutes - * "load.15m" - load averaged over 15 minutes + * I/O). + * The VIR_DOMAIN_GUEST_INFO_LOAD_* constants define the known typed para= meter + * keys. * * Using 0 for @types returns all information groups supported by the given * hypervisor. diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 248787784e..bb12beb6da 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -19488,9 +19488,9 @@ qemuDomainGetGuestInfo(virDomainPtr dom, } =20 if (format_load) { - virTypedParamListAddDouble(list, load1m, "load.1m"); - virTypedParamListAddDouble(list, load5m, "load.5m"); - virTypedParamListAddDouble(list, load15m, "load.15m"); + virTypedParamListAddDouble(list, load1m, VIR_DOMAIN_GUEST_INFO_LOA= D_1M); + virTypedParamListAddDouble(list, load5m, VIR_DOMAIN_GUEST_INFO_LOA= D_5M); + virTypedParamListAddDouble(list, load15m, VIR_DOMAIN_GUEST_INFO_LO= AD_15M); } =20 if (virTypedParamListSteal(list, params, nparams) < 0) --=20 2.48.1