aboutsummaryrefslogtreecommitdiff
path: root/target/s390x
diff options
context:
space:
mode:
authorPierre Morel <pmorel@linux.ibm.com>2023-10-16 20:39:14 +0200
committerThomas Huth <thuth@redhat.com>2023-10-20 07:16:53 +0200
commitad2d1afc1d7158e1d94f6f7a3efe6efc15dca51c (patch)
treee5e2a774ccae45c0fd8e6bb0536ac40cf35e7b1e /target/s390x
parenta457c2ab5af7d69fd96f0aef2d33800bdc082b8c (diff)
downloadqemu-ad2d1afc1d7158e1d94f6f7a3efe6efc15dca51c.zip
qemu-ad2d1afc1d7158e1d94f6f7a3efe6efc15dca51c.tar.gz
qemu-ad2d1afc1d7158e1d94f6f7a3efe6efc15dca51c.tar.bz2
machine: adding s390 topology to query-cpu-fast
S390x provides two more topology attributes, entitlement and dedication. Let's add these CPU attributes to the QAPI command query-cpu-fast. Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> Reviewed-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com> Co-developed-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Acked-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com> Message-ID: <20231016183925.2384704-11-nsg@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'target/s390x')
-rw-r--r--target/s390x/cpu.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c
index ba64646..6acfa1c 100644
--- a/target/s390x/cpu.c
+++ b/target/s390x/cpu.c
@@ -38,6 +38,7 @@
#ifndef CONFIG_USER_ONLY
#include "sysemu/reset.h"
#endif
+#include "hw/s390x/cpu-topology.h"
#define CR0_RESET 0xE0UL
#define CR14_RESET 0xC2000000UL;
@@ -146,6 +147,14 @@ static void s390_query_cpu_fast(CPUState *cpu, CpuInfoFast *value)
S390CPU *s390_cpu = S390_CPU(cpu);
value->u.s390x.cpu_state = s390_cpu->env.cpu_state;
+#if !defined(CONFIG_USER_ONLY)
+ if (s390_has_topology()) {
+ value->u.s390x.has_dedicated = true;
+ value->u.s390x.dedicated = s390_cpu->env.dedicated;
+ value->u.s390x.has_entitlement = true;
+ value->u.s390x.entitlement = s390_cpu->env.entitlement;
+ }
+#endif
}
/* S390CPUClass::reset() */