From nobody Wed Mar 12 13:07:22 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 1740498759531502.650501303384; Tue, 25 Feb 2025 07:52:39 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 7E66B1E98; Tue, 25 Feb 2025 10:52:37 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id D950B1E7F; Tue, 25 Feb 2025 10:51:57 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 3F9DE1D95; Tue, 25 Feb 2025 10:51:50 -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 C337F2157 for ; Tue, 25 Feb 2025 10:51:40 -0500 (EST) Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-656-ZP2QzoVJONCNh6AFUFIaPA-1; Tue, 25 Feb 2025 10:51:39 -0500 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-38f2726c0faso6123256f8f.0 for ; Tue, 25 Feb 2025 07:51:38 -0800 (PST) Received: from wheatley.localdomain (nat-pool-brq-t.redhat.com. [213.175.37.10]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-390cd8e7165sm2726063f8f.73.2025.02.25.07.51.34 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Feb 2025 07:51:37 -0800 (PST) Received: from wheatley.pinto-pinecone.ts.net (wheatley.k8r.cz [127.0.0.1]) by wheatley.localdomain (Postfix) with ESMTP id 034E48CC8001 for ; Tue, 25 Feb 2025 15:52:41 +0100 (CET) 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=1740498700; 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=wZjHfeyT/zgqMY69hIPqBJfQHmtWuJFL3oamQzPLPqs=; b=O+dRezZ9Wm7ki9C4VOFLLHInxMoZtY5n3LN5eMwPsiV51vfbF6Mj5rGzk7IGojToDm6keB bWtregUOZhPrgTfJw1xKktIZ43yZdb5F+JqZ7iVXVBNRn98BRwVPpnFBU2IdylQIuNSEUU oU75/KPB9lPRp60uZqFNS+TvVJCmchA= X-MC-Unique: ZP2QzoVJONCNh6AFUFIaPA-1 X-Mimecast-MFC-AGG-ID: ZP2QzoVJONCNh6AFUFIaPA_1740498698 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740498698; x=1741103498; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wZjHfeyT/zgqMY69hIPqBJfQHmtWuJFL3oamQzPLPqs=; b=PqdUvN/e88Y0PV9C/HjcIJdKL35INkTPwWEMJ+dzNKBMs0W76v56RF7flHjQ64lStX YBY+752QM8mJ6RVvFsJePWvZOFu0ABM4ZqZ//6fwz/CegnxGkr3XQ0O69TufGcKQYRuy +qv0d4Z3Tz/NqRizB8fWXU+Fc8hMP6b9ielrplnszDatZl/I2cgadvtDKa+UzOOE+tvC vKqTSbPM+bMVZc4J9jNWrg0bQ9ieqfSiUB05SM1TR5m5pAXB2cdWc5QbSfp4BzgfvelN SfY2O1mFFUVFVAAqyVwlR3xfcWtSHg+Rcf+8Am65emdr/b9Ey4gWXhH9zTK1D+kMstrH cCTw== X-Gm-Message-State: AOJu0Yy8v946Cgigm5TWRzEIGPiZ3TZ4dKNKlbak0pzWGwCqDXo74hm5 YCqU1N6hC76RhrYGmQ5mS1BNm1eU6Trg728dsRrd5ABf0ipKrfqYYfpUyen/FgxVB1kz3E83bgg a60sRg78o7hqK1ZbYggQQv3kC38BViNvi3f/NamQRASicOemBTXwN5CWEoo8Z1xlrp6wdUCX2nM hgo/lZGXnogTfl43nCxr2vZ5RJa5aojr/VUyYTbGc= X-Gm-Gg: ASbGncsiFsOQS1grsQtv0wxVvoufaMpU5Sy58hDW9DrIeVu0CyS+ymgXicgh79+dJ1X CU+60qlrTJhE2ENn9Auax3Bi3G5Twfa91axvPVQkJH0spV6prtl5R/PTIrNd+G63C+515mmsNxO K36Fk5ygtulNdztZ0Mu191I9CVaag2TikWr+lyK5M2fissnD+jur9B1y0u8c5SurLRA8pfiPzXp orfNkJfjsURbYjbuTT5vIlafjMjBwjphgGuvGeMdhaZY+AhrQ/MSuLReOP2cPgzAXVelUcH7zCq b+zU2Ly1oRQd/gI/YiYxVN+nkpashYt+t3vsy25k6WQznczX/W4= X-Received: by 2002:adf:e80a:0:b0:38d:af14:cb1 with SMTP id ffacd0b85a97d-390cc63c5a1mr3284136f8f.54.1740498697985; Tue, 25 Feb 2025 07:51:37 -0800 (PST) X-Google-Smtp-Source: AGHT+IETnDmWvEvj4UiR5i/xyhnnKz+nbB3dopbKZldc2y7v94G2h+Oy4LUPzcJkJk14rEYNGKaAtA== X-Received: by 2002:adf:e80a:0:b0:38d:af14:cb1 with SMTP id ffacd0b85a97d-390cc63c5a1mr3284115f8f.54.1740498697554; Tue, 25 Feb 2025 07:51:37 -0800 (PST) From: Martin Kletzander To: devel@lists.libvirt.org Subject: [PATCH v2 1/4] Add load average information type into virDomainGetGuestInfo Date: Tue, 25 Feb 2025 15:52:29 +0100 Message-ID: X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: PJ7ea8L1iluu_M-WHY5xak0ycIT8DK4OSML9GQFJRiA_1740498698 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: 7WGOUASPV5ZESFM5MHCDUE3BMSARK4VJ X-Message-ID-Hash: 7WGOUASPV5ZESFM5MHCDUE3BMSARK4VJ X-MailFrom: mkletzan@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: 1740498761211019100 Content-Type: text/plain; charset="utf-8"; x-default="true" The public API part. Signed-off-by: Martin Kletzander Reviewed-by: Peter Krempa --- include/libvirt/libvirt-domain.h | 1 + src/libvirt-domain.c | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/include/libvirt/libvirt-domain.h b/include/libvirt/libvirt-dom= ain.h index f5420bca6e23..2d27f96be94d 100644 --- a/include/libvirt/libvirt-domain.h +++ b/include/libvirt/libvirt-domain.h @@ -6455,6 +6455,7 @@ typedef enum { VIR_DOMAIN_GUEST_INFO_FILESYSTEM =3D (1 << 4), /* return filesystem in= formation (Since: 5.7.0) */ VIR_DOMAIN_GUEST_INFO_DISKS =3D (1 << 5), /* return disks information = (Since: 7.0.0) */ VIR_DOMAIN_GUEST_INFO_INTERFACES =3D (1 << 6), /* return interfaces in= formation (Since: 7.10.0) */ + VIR_DOMAIN_GUEST_INFO_LOAD =3D (1 << 7), /* return load averages (Sinc= e: 11.2.0) */ } virDomainGuestInfoTypes; =20 int virDomainGetGuestInfo(virDomainPtr domain, diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c index 072cc3225579..ae15ab1e5a94 100644 --- a/src/libvirt-domain.c +++ b/src/libvirt-domain.c @@ -13292,6 +13292,14 @@ virDomainSetVcpu(virDomainPtr domain, * "if..addr..addr" - the IP address of addr * "if..addr..prefix" - the prefix of IP address of addr <= num1> * + * 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 + * * Using 0 for @types returns all information groups supported by the given * hypervisor. * --=20 2.48.1 From nobody Wed Mar 12 13:07:22 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 1740498846479526.0019215005907; Tue, 25 Feb 2025 07:54:06 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 6BCF01F2A; Tue, 25 Feb 2025 10:54:05 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 4ADE2218A; Tue, 25 Feb 2025 10:52:07 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 13C921E76; Tue, 25 Feb 2025 10:51:57 -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 D5E6A1F6B for ; Tue, 25 Feb 2025 10:51:46 -0500 (EST) Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-80-34ODLIwyPfuaC5BoClBCtA-1; Tue, 25 Feb 2025 10:51:39 -0500 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-38f255d44acso2532185f8f.0 for ; Tue, 25 Feb 2025 07:51:37 -0800 (PST) Received: from wheatley.localdomain (nat-pool-brq-t.redhat.com. [213.175.37.10]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-390cd8fc1cbsm2726093f8f.92.2025.02.25.07.51.34 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Feb 2025 07:51:34 -0800 (PST) Received: from wheatley.pinto-pinecone.ts.net (wheatley.k8r.cz [127.0.0.1]) by wheatley.localdomain (Postfix) with ESMTP id 113998CC8003 for ; Tue, 25 Feb 2025 15:52:41 +0100 (CET) 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=1740498706; 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=/DjJePXozH9cn/5aZcoV5y5oko3k2lyAEHL5JVvKoco=; b=ErA6gI2MsvXKFJOieQ3hP071U63FU2nb0ziw/86nV9EWxi5UjVR8et0GWc+2nOgVfkTUnn L4qV8j1rO3c9ejUg0M2qYShQb1WZqD0lMC18K2jEmLK4j0f56beigyWh+JXYiuNEBWhfmu B8pirJfrq25XCcDCtlYpwa8CeNhIoEM= X-MC-Unique: 34ODLIwyPfuaC5BoClBCtA-1 X-Mimecast-MFC-AGG-ID: 34ODLIwyPfuaC5BoClBCtA_1740498697 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740498697; x=1741103497; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/DjJePXozH9cn/5aZcoV5y5oko3k2lyAEHL5JVvKoco=; b=An5ATA8rN5nJl924oQCYFpYjmXnlMMLPaTggQVpd1cLd5NcF9SPRrc+G09eqD3xgk9 5o9mwWBI5P4D4y1kg97lxFFF1Nw4+Ux0GJdthKbAQNvPZwDJnKhKPZu/X99hOfQjjeum BZ5OIOqC2SyO8XCFAXE57MevpgRj3JklkL5S+Rb/6uKnVQA3ObQUjnO5wHDrPcimbjzT xFEw6QHONNg7FkB3LthHyhvv0VnNuenlhXnUc13fSviC3Fzdmea5aH+FknSur1IYRcIK nHaz+6HP01loocokEgzN2r2ADRK7YLFyw+S5ntr/DH/WqYw52RFK+bg294EL/0q69sHX 5HIw== X-Gm-Message-State: AOJu0YxmXSi7CX1fbrPFkP8LFdu+Km5qRBdaWncynMxuM1h43/fZSe55 /yEP7K+Qb4AC6d/afm47apUv8918yNA0pNEHbB3eSTpaXeJlGIO5yXcTJ2jxWqAuhCDxNzh4WSg Kq2FmgGm2kyTBFT4W46M6131Xol/ldr8G9HG7RMiPrhnlC0ubYY7fH3+UrO59CopPTq4laq8pDg 2SONnSi2FncV5KgnNqqAoaBzvQoeMO8YvtHPEdJ/8= X-Gm-Gg: ASbGncvrUy3uI2iJQBwrFeblgkVBtFQ+cm6HsQqtLvdSohs8RE7NvYcgSK0RY0W90Lp 1sfQzn5AaAY6S2jsjGo6s7wsTagBOGk/WuSlu6CKF2dNDKdchS51lee7p04/Yc6jRPjVVSRvgwP qHb2e/+d/lG2ImKG63bHqK6fCfJ6+vxSNU9lMRvNTZTuP1ZwwiL2SNEjN0liLD9IQwTwRXS+xA7 iYfPALQj8jTYL1OODlWPeQlEcTCfqQC5TQLQOd2K5YM4h1lH+r1WxdVbBfUjSngx9lSPs711fAJ 9y79EWNp/ieB4lrZtxBDkHCjYrgu0/J63fRc/x9PU/1hGhBAyVs= X-Received: by 2002:adf:ed4c:0:b0:38f:476f:e176 with SMTP id ffacd0b85a97d-38f6ec63868mr12945034f8f.31.1740498696825; Tue, 25 Feb 2025 07:51:36 -0800 (PST) X-Google-Smtp-Source: AGHT+IGyqKATLomJepuH8ObWEu/QIQXzcWelR3rk+SkwVculYH97ObEW19lGLd1rIc00DON55wBFcQ== X-Received: by 2002:adf:ed4c:0:b0:38f:476f:e176 with SMTP id ffacd0b85a97d-38f6ec63868mr12945012f8f.31.1740498696341; Tue, 25 Feb 2025 07:51:36 -0800 (PST) From: Martin Kletzander To: devel@lists.libvirt.org Subject: [PATCH v2 2/4] qemu_agent: Add qemuAgentGetLoadAvg() Date: Tue, 25 Feb 2025 15:52:30 +0100 Message-ID: X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: 1lY0zmsWpT4pi8v3E-C-lvl0gvcYL9j3TeBUntdGRow_1740498697 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: FLNLSAG6UMMPAUMKOESLVXQUUNJ6NRBP X-Message-ID-Hash: FLNLSAG6UMMPAUMKOESLVXQUUNJ6NRBP X-MailFrom: mkletzan@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: 1740498847287019100 Content-Type: text/plain; charset="utf-8"; x-default="true" With qemu guest agent 9.3 we are able to get the load averages with a new command. Signed-off-by: Martin Kletzander Reviewed-by: Peter Krempa --- src/qemu/qemu_agent.c | 55 +++++++++++++++++++++++++++++++++++++++++++ src/qemu/qemu_agent.h | 6 +++++ tests/qemuagenttest.c | 53 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 114 insertions(+) diff --git a/src/qemu/qemu_agent.c b/src/qemu/qemu_agent.c index 43fca86f10ed..27efb4b389ee 100644 --- a/src/qemu/qemu_agent.c +++ b/src/qemu/qemu_agent.c @@ -2568,3 +2568,58 @@ int qemuAgentGetDisks(qemuAgent *agent, g_free(*disks); return -1; } + + +int +qemuAgentGetLoadAvg(qemuAgent *agent, + double *load1m, + double *load5m, + double *load15m, + bool report_unsupported) +{ + g_autoptr(virJSONValue) cmd =3D NULL; + g_autoptr(virJSONValue) reply =3D NULL; + virJSONValue *data =3D NULL; + int rc; + + if (load1m) + *load1m =3D 0; + + if (load5m) + *load5m =3D 0; + + if (load15m) + *load15m =3D 0; + + if (!(cmd =3D qemuAgentMakeCommand("guest-get-load", NULL))) + return -1; + + if ((rc =3D qemuAgentCommandFull(agent, cmd, &reply, agent->timeout, + report_unsupported)) < 0) + return rc; + + if (!(data =3D virJSONValueObjectGetObject(reply, "return"))) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("qemu agent didn't return an array of loads")); + return -1; + } + +#define GET_NUMBER_PARAM(param_) \ + do { \ + if (param_ && \ + virJSONValueObjectGetNumberDouble(data, #param_, param_) < 0) = { \ + virReportError(VIR_ERR_INTERNAL_ERROR, \ + _("'%1$s' missing in reply of guest-get-load"),= \ + #param_); \ + return -1; \ + } \ + } while (0) + + GET_NUMBER_PARAM(load1m); + GET_NUMBER_PARAM(load5m); + GET_NUMBER_PARAM(load15m); + +#undef GET_NUMBER_PARAM + + return 0; +} diff --git a/src/qemu/qemu_agent.h b/src/qemu/qemu_agent.h index f98586e8f8ab..cd17a98d3924 100644 --- a/src/qemu/qemu_agent.h +++ b/src/qemu/qemu_agent.h @@ -195,3 +195,9 @@ int qemuAgentSSHRemoveAuthorizedKeys(qemuAgent *agent, int qemuAgentGetDisks(qemuAgent *mon, qemuAgentDiskInfo ***disks, bool report_unsupported); + +int qemuAgentGetLoadAvg(qemuAgent *agent, + double *load1m, + double *load5m, + double *load15m, + bool report_unsupported); diff --git a/tests/qemuagenttest.c b/tests/qemuagenttest.c index 328788024197..566571cf1107 100644 --- a/tests/qemuagenttest.c +++ b/tests/qemuagenttest.c @@ -1356,6 +1356,58 @@ testQemuAgentTimezone(const void *data) virTypedParamsFree(params, nparams); return ret; } + + +static const char testQemuAgentGetLoadAvgResponse[] =3D + "{" + " \"return\": {" + " \"load15m\": 0.03564453125," + " \"load5m\": 0.064453125," + " \"load1m\": 0.00390625" + " }" + "}"; + +static int +testQemuAgentGetLoadAvg(const void *data) +{ + virDomainXMLOption *xmlopt =3D (virDomainXMLOption *)data; + g_autoptr(qemuMonitorTest) test =3D qemuMonitorTestNewAgent(xmlopt); + double load1m =3D 0; + double load5m =3D 0; + double load15m =3D 0; + + if (!test) + return -1; + + if (qemuMonitorTestAddAgentSyncResponse(test) < 0) + return -1; + + if (qemuMonitorTestAddItem(test, "guest-get-load", + testQemuAgentGetLoadAvgResponse) < 0) + return -1; + + if (qemuAgentGetLoadAvg(qemuMonitorTestGetAgent(test), + &load1m, &load5m, &load15m, true) < 0) + return -1; + +#define VALIDATE_LOAD(value_, expected_) \ + do { \ + if (value_ !=3D expected_) { \ + virReportError(VIR_ERR_INTERNAL_ERROR, \ + "Expected " #value_ " '%.11f', got '%.11f'", \ + expected_, value_); \ + return -1; \ + } \ + } while (0) + + VALIDATE_LOAD(load1m, 0.00390625); + VALIDATE_LOAD(load5m, 0.064453125); + VALIDATE_LOAD(load15m, 0.03564453125); + + return 0; +} + + static int mymain(void) { @@ -1392,6 +1444,7 @@ mymain(void) DO_TEST(Timezone); DO_TEST(SSHKeys); DO_TEST(GetDisks); + DO_TEST(GetLoadAvg); =20 DO_TEST(Timeout); /* Timeout should always be called last */ =20 --=20 2.48.1 From nobody Wed Mar 12 13:07:22 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 1740498738255405.02610067186276; Tue, 25 Feb 2025 07:52:18 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 31D1B212A; Tue, 25 Feb 2025 10:52:17 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id CE03B1F19; Tue, 25 Feb 2025 10:51:54 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 008981D95; Tue, 25 Feb 2025 10:51:49 -0500 (EST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.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 9F7021ECB for ; Tue, 25 Feb 2025 10:51:40 -0500 (EST) Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-441-rn9qu6awNrabxM-wFJ0wfg-1; Tue, 25 Feb 2025 10:51:38 -0500 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-38f55ccb04bso4026515f8f.3 for ; Tue, 25 Feb 2025 07:51:38 -0800 (PST) Received: from wheatley.localdomain (nat-pool-brq-t.redhat.com. [213.175.37.10]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-390cd8fbef5sm2817075f8f.90.2025.02.25.07.51.34 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Feb 2025 07:51:34 -0800 (PST) Received: from wheatley.pinto-pinecone.ts.net (wheatley.k8r.cz [127.0.0.1]) by wheatley.localdomain (Postfix) with ESMTP id 1EECE8CC8004 for ; Tue, 25 Feb 2025 15:52:41 +0100 (CET) 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_H5,RCVD_IN_MSPIKE_WL,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=1740498700; 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=Tkpd6M7QWfq9WJjvpzPMy5JDabwF7gE0SotecCKRTIg=; b=KA27h8yUyuqP9lzFYnbjZQeTf1kq+ZsFU7rLbidsqWcGsmYXt7WVPavUEwg1E+JfJCNGVl LpeWIIgmE1YcBzIn/EigGk7e3KsWPfHrjHHBOn5D8Di0R19PRviIcpwAYQJVdNZylZjS67 lPg5ylQIOt87YKX9o0OTFBZ6Gouv4Jc= X-MC-Unique: rn9qu6awNrabxM-wFJ0wfg-1 X-Mimecast-MFC-AGG-ID: rn9qu6awNrabxM-wFJ0wfg_1740498698 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740498697; x=1741103497; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Tkpd6M7QWfq9WJjvpzPMy5JDabwF7gE0SotecCKRTIg=; b=VltgAkhR6KcQdYeBylxOZ16Q9tN4XlICjwPZigB4+pXPIknH0l1KqDpgnh0QcKQVez 8/s/eIGKbTp0K4dc5J8yC9YX8G8u8MxDbUEAlMnNWLnxPf9wiAXmLmakJxgDw5ZYcJS3 jRxCo/6LT21PMO2ejXH7uIafV66ZVQ/ZSAHNRqcj0EjSrtY38zi58/NbvEXD73/xf8Jq slMmg1ewIrOiCD5FnBmb+Hw8feaKMW/tymW8xIpq/dRhrRUvMyaxVjTcbsMly8aSd7FD PgR+y2iuCHL14FXTeG6gLjSlUQ9HL6kkCn20DErdNGTCstG39ZFEsYPcfGJBe5V9n9U7 ks0w== X-Gm-Message-State: AOJu0YwiKMDXt2+ehrCGPzyOuzn6eHS2zWpqBo8VEtdRiFsvQzlDEhLR 3ZfDbzymmHEn9gnQ4U1S3n0uUYn811VszcihP9BRy1Up0JfjJ+1LctSjL/M/I1mELaNBFLgM2Tl Dl5Np5f+c+AqGRSUGtBf/XJCnO4ga+PLRYjocTVa+gI32jOnTqzxsSYgHamas0oSAbovtk42uYn 4ES5QKdbc8xyDCClSXlURXKvTtORiNco3lx86mRNc= X-Gm-Gg: ASbGncsnTMKPUjPsZACt85H8+fv2menQUhLQ/M6BjsJmM5YZmgdr31PwN5zrmzrFbXs aS6bLFP8dgDWISyUybkTrwtDoPtUXtWwZY3AtgXYDZMZK/BegHLm2lhTIyrPtOq06z8fk7NEIIi 46gJx2mAyCPHXtBiKWFBFxjjPlOKOHztb8ABisMIOdV024HLAjOxqOum1jJoD4aFccc4+032gDw vAyZRRaBvCePYAVDL4m0mBoQhq3fYlJVEsZfDB5xGyS39zykb9hDk6RdE6j1uE4hopUPOljdl9o Cl8jc7cfeLMUsFIcW6X2BpUtsUegpdFV+ICUJYPkXww9BLKhKgA= X-Received: by 2002:a05:6000:144f:b0:38d:bec9:c8d with SMTP id ffacd0b85a97d-38f6f0c6be9mr18077796f8f.53.1740498697644; Tue, 25 Feb 2025 07:51:37 -0800 (PST) X-Google-Smtp-Source: AGHT+IEDdZUHgfCbKOn5rv7HRBzMrFZnc+CN13kYiDaC8ZmwFrNOpSMLE5GTuHpVWIEacB6Wd6QDjQ== X-Received: by 2002:a05:6000:144f:b0:38d:bec9:c8d with SMTP id ffacd0b85a97d-38f6f0c6be9mr18077780f8f.53.1740498697208; Tue, 25 Feb 2025 07:51:37 -0800 (PST) From: Martin Kletzander To: devel@lists.libvirt.org Subject: [PATCH v2 3/4] qemu: Add support for VIR_DOMAIN_GUEST_INFO_LOAD Date: Tue, 25 Feb 2025 15:52:31 +0100 Message-ID: <80980cb6240454f225238ddf63bb6a818b902260.1740494984.git.mkletzan@redhat.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: WEoIqqIDYRDO6NNwkeZANWRek_oOB-DCZUP-riWCMXk_1740498698 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: GOALZZ35CF2722ZHORJVVJVNVNKJTEIE X-Message-ID-Hash: GOALZZ35CF2722ZHORJVVJVNVNKJTEIE X-MailFrom: mkletzan@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: 1740498740864019100 Content-Type: text/plain; charset="utf-8"; x-default="true" Signed-off-by: Martin Kletzander Reviewed-by: Peter Krempa --- src/qemu/qemu_driver.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 80c918312b8f..3b8b2c0a1eda 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -19181,7 +19181,8 @@ static const unsigned int qemuDomainGetGuestInfoSup= portedTypes =3D VIR_DOMAIN_GUEST_INFO_HOSTNAME | VIR_DOMAIN_GUEST_INFO_FILESYSTEM | VIR_DOMAIN_GUEST_INFO_DISKS | - VIR_DOMAIN_GUEST_INFO_INTERFACES; + VIR_DOMAIN_GUEST_INFO_INTERFACES | + VIR_DOMAIN_GUEST_INFO_LOAD; =20 static int qemuDomainGetGuestInfoCheckSupport(unsigned int types, @@ -19468,6 +19469,10 @@ qemuDomainGetGuestInfo(virDomainPtr dom, qemuAgentDiskInfo **agentdiskinfo =3D NULL; virDomainInterfacePtr *ifaces =3D NULL; size_t nifaces =3D 0; + double load1m =3D 0; + double load5m =3D 0; + double load15m =3D 0; + bool format_load =3D false; size_t i; =20 virCheckFlags(0, -1); @@ -19538,6 +19543,14 @@ qemuDomainGetGuestInfo(virDomainPtr dom, nifaces =3D rc; } =20 + if (supportedTypes & VIR_DOMAIN_GUEST_INFO_LOAD) { + rc =3D qemuAgentGetLoadAvg(agent, &load1m, &load5m, &load15m, repo= rt_unsupported); + if (rc =3D=3D -1) + goto exitagent; + if (rc >=3D 0) + format_load =3D true; + } + qemuDomainObjExitAgent(vm, agent); virDomainObjEndAgentJob(vm); =20 @@ -19564,6 +19577,12 @@ qemuDomainGetGuestInfo(virDomainPtr dom, virDomainInterfaceFormatParams(ifaces, nifaces, params, nparams, &= maxparams); } =20 + if (format_load) { + virTypedParamsAddDouble(params, nparams, &maxparams, "load.1m", lo= ad1m); + virTypedParamsAddDouble(params, nparams, &maxparams, "load.5m", lo= ad5m); + virTypedParamsAddDouble(params, nparams, &maxparams, "load.15m", l= oad15m); + } + ret =3D 0; =20 cleanup: --=20 2.48.1 From nobody Wed Mar 12 13:07:22 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 174049879763766.91691980967255; Tue, 25 Feb 2025 07:53:17 -0800 (PST) Received: by lists.libvirt.org (Postfix, from userid 996) id 869F5214F; Tue, 25 Feb 2025 10:53:16 -0500 (EST) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 288381EEA; Tue, 25 Feb 2025 10:52:03 -0500 (EST) Received: by lists.libvirt.org (Postfix, from userid 996) id 9F2521D52; Tue, 25 Feb 2025 10:51:51 -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 CD8821F0B for ; Tue, 25 Feb 2025 10:51:41 -0500 (EST) Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-632-FCEOoO2KNs6Ex7o4pZbFiA-1; Tue, 25 Feb 2025 10:51:40 -0500 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-38f628ff78eso3092438f8f.1 for ; Tue, 25 Feb 2025 07:51:39 -0800 (PST) Received: from wheatley.localdomain (nat-pool-brq-t.redhat.com. [213.175.37.10]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-439b02f5b38sm145807375e9.24.2025.02.25.07.51.36 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Feb 2025 07:51:38 -0800 (PST) Received: from wheatley.pinto-pinecone.ts.net (wheatley.k8r.cz [127.0.0.1]) by wheatley.localdomain (Postfix) with ESMTP id 2E4268CC8005 for ; Tue, 25 Feb 2025 15:52:41 +0100 (CET) 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=1740498701; 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=nPusiFR8Tc8Rt+DYayc/jASRAHA044oe45GifC/0jnM=; b=AmYuJTP/A0EXJ+WzW3+MPy34lizfmwygatsKqMqw9ArFW8UGrE2ccY/R+DtSF4s9GSDMnJ Zvlrhb2a36d4WtC2t7oXzKkMuYK9WJzgksFjfzeBiANfDpft6lvJLBQmZlcWPeaoyyQye2 C+Slr6nfLkdOTJVpWfz+5RYXuDFuxv0= X-MC-Unique: FCEOoO2KNs6Ex7o4pZbFiA-1 X-Mimecast-MFC-AGG-ID: FCEOoO2KNs6Ex7o4pZbFiA_1740498699 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740498699; x=1741103499; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nPusiFR8Tc8Rt+DYayc/jASRAHA044oe45GifC/0jnM=; b=KDuYlbK7I365t7RaxFajnNe4HUk/AjK4ivAaLS+UtibsOYBR2LOKc0iOs058D4F4mh 57Drj/npouAc8K7oxrbixY+Ix7nV+dbypCmhaLUm7Ze0DYmMTxNv4sEYFHwlmi+5FmZB m3PxKYDgfbzT7H7T97Nr9/xWCf5ka4RwXbizwiRu1jICBrhCv30Hehj8A+TZV/FqFFFQ uaJygSOFoIVU8nIKrQl0SBAI1N+TBh6/gETA3zJaccyNNylBMyJaNoJ0bedICTasWybc TfAaGXMc9QG7moIqvGsze0YK0oejr39hIlX6orf7SLtcqQ/q7nNlbzjggHa/WIiuI7d0 txeQ== X-Gm-Message-State: AOJu0Yy+8N1mahJTF2QSt7aHIIOK2VdjyFZayULcNrddwIOwzo7EXWwW nZkd110YOwvadf+hbnphOoCck2ZRHUguDzX4KwUO7my5H6Ikkpk2fDh9KyepUoLX0pzQMvqNMQx 3FU4tfpFE3mvJXkhfM8pc8Ke393wi5w5x/uEVLxAJkXoYiRCJaLlIbK6v+LjWfGy5YnO3NG2wji uHb7QJ7N/hqJQ18pqxBEQboQgzyGyHi9IbuYxplko= X-Gm-Gg: ASbGncvQspYDNsXfkmLiIBCoz4UD2aNpVIw79eGqcgKDW3EYeceRAtny5fypfelRp2y ecB19TQf76NZW9QhIQfffHIoqvKRpfGgUbaLzHpgStBqAgxHzAh57CZWPPkxB5lJNKNW+B4YJHe mstXz5yTPZIzxRGjycRcRmP6UF/0RP27ktRGdw73zMclbeLk4drBqP9iof0BonV8pm/K0NmWCMT 445/RLTdkLWQk+w+m8MANl4+4wanxeG7TR0E+Y1Us5djcsswcquH2I+0CgJ7/OacOqVeyRV/MRJ tZij8/vZ8MLsHV2/8v2po0cKw7sUis8kz0k8vmv/HjDj9OOGc20= X-Received: by 2002:a05:6000:1a87:b0:38f:3ec3:4801 with SMTP id ffacd0b85a97d-38f616323bamr20094426f8f.25.1740498698782; Tue, 25 Feb 2025 07:51:38 -0800 (PST) X-Google-Smtp-Source: AGHT+IElcGd1vF4dvGNalLxbS5VfW3C6UXGJ8ccIenH6ZuwjUkRzcDTYhbF4+5mH9ex9+CVDalpXQA== X-Received: by 2002:a05:6000:1a87:b0:38f:3ec3:4801 with SMTP id ffacd0b85a97d-38f616323bamr20094411f8f.25.1740498698348; Tue, 25 Feb 2025 07:51:38 -0800 (PST) From: Martin Kletzander To: devel@lists.libvirt.org Subject: [PATCH v2 4/4] virsh: Add support for VIR_DOMAIN_GUEST_INFO_LOAD Date: Tue, 25 Feb 2025 15:52:32 +0100 Message-ID: <3522f41495cd4a3686ee39db9297ee7cf8297f52.1740494984.git.mkletzan@redhat.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: MuJJH3AU4rPX3Zxss8NXrooeX3UmwSG63sBNzLGJttI_1740498699 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Message-ID-Hash: 2EHGPL3TCKV7MGM3DYQX5YYBGLTDRFDL X-Message-ID-Hash: 2EHGPL3TCKV7MGM3DYQX5YYBGLTDRFDL X-MailFrom: mkletzan@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: 1740498799087019100 Content-Type: text/plain; charset="utf-8"; x-default="true" Resolves: https://issues.redhat.com/browse/RHEL-71883 Signed-off-by: Martin Kletzander Reviewed-by: Peter Krempa --- docs/manpages/virsh.rst | 8 +++++++- tools/virsh-domain.c | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/manpages/virsh.rst b/docs/manpages/virsh.rst index 06c2802b3f9f..f159c40631ec 100644 --- a/docs/manpages/virsh.rst +++ b/docs/manpages/virsh.rst @@ -2930,7 +2930,7 @@ Success is always reported in this case. =20 You can limit the types of information that are returned by specifying one= or more flags. Available information types flags are *--user*, *--os*, -*--timezone*, *--hostname*, *--filesystem*, *--disk* and *--interface*. +*--timezone*, *--hostname*, *--filesystem*, *--disk*, *--interface* and *-= -load*. If an explicitly requested information type is not supported by the guest = agent at that point, the processes will provide an exit code of 1. =20 @@ -3009,6 +3009,12 @@ returned: * ``if..addr..addr`` - the IP address of addr * ``if..addr..prefix`` - the prefix of IP address of addr =20 +*--load* returns: +* ``load.1m`` - average load in guest for last 1 minute +* ``load.5m`` - average load in guest for last 5 minutes +* ``load.15m`` - average load in guest for last 15 minutes + + guestvcpus ---------- =20 diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c index cc5ae6053606..93c34c497133 100644 --- a/tools/virsh-domain.c +++ b/tools/virsh-domain.c @@ -13095,6 +13095,10 @@ static const vshCmdOptDef opts_guestinfo[] =3D { .type =3D VSH_OT_BOOL, .help =3D N_("report interface information"), }, + {.name =3D "load", + .type =3D VSH_OT_BOOL, + .help =3D N_("report load averages information"), + }, {.name =3D NULL} }; =20 @@ -13122,6 +13126,8 @@ cmdGuestInfo(vshControl *ctl, const vshCmd *cmd) types |=3D VIR_DOMAIN_GUEST_INFO_DISKS; if (vshCommandOptBool(cmd, "interface")) types |=3D VIR_DOMAIN_GUEST_INFO_INTERFACES; + if (vshCommandOptBool(cmd, "load")) + types |=3D VIR_DOMAIN_GUEST_INFO_LOAD; =20 if (!(dom =3D virshCommandOptDomain(ctl, cmd, NULL))) return false; --=20 2.48.1