SHA256
1
0
forked from pool/libvirt
libvirt/0001-qemu-Fix-query-cpus-fast-target-architecture-detecti.patch
James Fehlig 88680c1000 Accepting request 682298 from home:jfehlig:branches:Virtualization
- qemu: s390: show correct CPU status after guest crash
  0001-qemu-Fix-query-cpus-fast-target-architecture-detecti.patch
  bsc#1127841

OBS-URL: https://build.opensuse.org/request/show/682298
OBS-URL: https://build.opensuse.org/package/show/Virtualization/libvirt?expand=0&rev=736
2019-03-06 22:27:20 +00:00

41 lines
1.6 KiB
Diff

From 85001fd799deb33338aed627b3c3a6870cb70d2d Mon Sep 17 00:00:00 2001
From: Viktor Mihajlovski <mihajlov@linux.ibm.com>
Date: Fri, 1 Mar 2019 11:29:51 +0100
Subject: [PATCH] qemu: Fix query-cpus-fast target architecture detection
Since qemu 2.13 reports the target architecture in a property called
'target' additionally to the property 'arch', that has been used in
qemu 2.12 in the response data of 'query-cpus-fast'.
Libvirts monitor code prefers the 'target' property over 'arch'.
At least for s390(x), target is reported as 's390x' while arch is 's390'.
In a later step a comparison is performed against 's390' which fails for
qemu 2.13 and later.
In consequence the architecture specific data for s390 won't be extracted
from the returned data, leading to incorrect values being reported by
virsh domstats --vcpu.
Changing to check explicitly for 's390' and 's390x'.
Signed-off-by: Viktor Mihajlovski <mihajlov@linux.ibm.com>
Reviewed-by: Bjoern Walk <bwalk@linux.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
---
src/qemu/qemu_monitor_json.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: libvirt-5.1.0/src/qemu/qemu_monitor_json.c
===================================================================
--- libvirt-5.1.0.orig/src/qemu/qemu_monitor_json.c
+++ libvirt-5.1.0/src/qemu/qemu_monitor_json.c
@@ -1772,7 +1772,7 @@ qemuMonitorJSONExtractCPUInfo(virJSONVal
goto cleanup;
/* process optional architecture-specific data */
- if (STREQ_NULLABLE(arch, "s390"))
+ if (STREQ_NULLABLE(arch, "s390") || STREQ_NULLABLE(arch, "s390x"))
qemuMonitorJSONExtractCPUS390Info(entry, cpus + i);
}