- vdpa: support vdpa device migrate - vdpa: support vdpa device hot plug/unplug - vdpa: Introduce the new device type vdpa to hostdev - node_device: fix leak of DIR* - Include vdpa devices in node device list - lxc: fix lxcContainerMountAllFS() DEREF_BEFORE_CHECK - qemu: Return perf status that affect next boot for shutoff domains While we set up perf events for a shutoff domain and check the settings, All of perf events are reported as 'disabled', unless we add --config, This is redundant for a shutoff domain. - tests: upstream Fixing compiler warning in cputest - qemu_migration_cookie: Rename ret in qemuDomainExtractTLSSubject - virrandom: Fix printf format string in virRandomGenerateWWN() - fix the issue of errors when saving after 'virsh edit' - Use (un)signed printf specifiers correctly - admin: fix leak of typed parameters on error - esx: call freeaddrinfo earlier in esxUtil_ResolveHostname Call freeaddrinfo() as soon as @result is not needed anymore, i.e. right after getnameinfo(); this avoids calling freeaddrinfo() in two branches. - qemu: Fix incorrect command name in error messages Signed-off-by: Jiabo Feng <fengjiabo1@huawei.com>
96 lines
2.8 KiB
Diff
96 lines
2.8 KiB
Diff
From 1686b198dcf9b695a864f82d18fbc9b2e76f54df Mon Sep 17 00:00:00 2001
|
|
From: tangbinzy <tangbin_yewu@cmss.chinamobile.com>
|
|
Date: Thu, 16 Mar 2023 02:17:30 +0000
|
|
Subject: [PATCH] qemu: Return perf status that affect next boot for shutoff
|
|
domains While we set up perf events for a shutoff domain and check the
|
|
settings, All of perf events are reported as 'disabled', unless we add
|
|
--config, This is redundant for a shutoff domain.
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
# virsh domstate $GUEST
|
|
shut off
|
|
|
|
# virsh perf --domain $GUEST
|
|
cmt : disabled
|
|
mbmt : disabled
|
|
mbml : disabled
|
|
......
|
|
|
|
# virsh perf --domain $GUEST --enable mbmt
|
|
mbmt : enabled
|
|
|
|
# virsh perf --domain $GUEST
|
|
cmt : disabled
|
|
mbmt : disabled
|
|
mbml : disabled
|
|
......
|
|
|
|
Use virDomainObjGetOneDefState instead of virDomainObjGetOneDef to fix
|
|
the issue. After patch, The perf event status of a shutoff domain is
|
|
reported correctly:
|
|
|
|
# virsh domstate $GUEST
|
|
shut off
|
|
|
|
# virsh perf --domain $GUEST
|
|
cmt : disabled
|
|
mbmt : disabled
|
|
mbml : disabled
|
|
......
|
|
|
|
# virsh perf --domain $GUEST --enable mbmt
|
|
mbmt : enabled
|
|
|
|
# virsh perf --domain $GUEST
|
|
cmt : disabled
|
|
mbmt : enabled
|
|
mbml : disabled
|
|
......
|
|
|
|
Signed-off-by: Lin Ma <lma@suse.de>
|
|
Reviewed-by: Erik Skultety <eskultet@redhat.com>
|
|
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
|
Signed-off-by: Ján Tomko <jtomko@redhat.com>
|
|
|
|
Signed-off-by: tangbin <tangbin_yewu@cmss.chinamobile.com>
|
|
(cherry-pick from 10841b6cb612fed1a4cb9be05c4f5e150008cac7)
|
|
---
|
|
src/qemu/qemu_driver.c | 5 +++--
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
|
|
index 32b3ef3cf1..ed621262aa 100644
|
|
--- a/src/qemu/qemu_driver.c
|
|
+++ b/src/qemu/qemu_driver.c
|
|
@@ -9952,6 +9952,7 @@ qemuDomainGetPerfEvents(virDomainPtr dom,
|
|
int npar = 0;
|
|
size_t i;
|
|
int ret = -1;
|
|
+ bool live = false;
|
|
|
|
virCheckFlags(VIR_DOMAIN_AFFECT_LIVE |
|
|
VIR_DOMAIN_AFFECT_CONFIG |
|
|
@@ -9966,7 +9967,7 @@ qemuDomainGetPerfEvents(virDomainPtr dom,
|
|
if (qemuDomainObjBeginJob(driver, vm, QEMU_JOB_QUERY) < 0)
|
|
goto cleanup;
|
|
|
|
- if (!(def = virDomainObjGetOneDef(vm, flags)))
|
|
+ if (!(def = virDomainObjGetOneDefState(vm, flags, &live)))
|
|
goto endjob;
|
|
|
|
priv = vm->privateData;
|
|
@@ -9974,7 +9975,7 @@ qemuDomainGetPerfEvents(virDomainPtr dom,
|
|
for (i = 0; i < VIR_PERF_EVENT_LAST; i++) {
|
|
bool perf_enabled;
|
|
|
|
- if (flags & VIR_DOMAIN_AFFECT_CONFIG)
|
|
+ if ((flags & VIR_DOMAIN_AFFECT_CONFIG) || !live)
|
|
perf_enabled = def->perf.events[i] == VIR_TRISTATE_BOOL_YES;
|
|
else
|
|
perf_enabled = virPerfEventIsEnabled(priv->perf, i);
|
|
--
|
|
2.27.0
|
|
|