[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH for-2.8 22/38] s390x/sclp: factor out preparation of
From: |
Cornelia Huck |
Subject: |
[Qemu-devel] [PATCH for-2.8 22/38] s390x/sclp: factor out preparation of cpu entries |
Date: |
Mon, 29 Aug 2016 13:45:14 +0200 |
From: David Hildenbrand <address@hidden>
Let's factor out the common code of "read cpu info" and "read scp
info". This will make the introduction of new cpu entry fields easier.
Acked-by: Cornelia Huck <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
---
hw/s390x/sclp.c | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
diff --git a/hw/s390x/sclp.c b/hw/s390x/sclp.c
index 540226c..e88521c 100644
--- a/hw/s390x/sclp.c
+++ b/hw/s390x/sclp.c
@@ -34,6 +34,16 @@ static inline SCLPDevice *get_sclp_device(void)
return sclp;
}
+static void prepare_cpu_entries(SCLPDevice *sclp, CPUEntry *entry, int count)
+{
+ int i;
+
+ for (i = 0; i < count; i++) {
+ entry[i].address = i;
+ entry[i].type = 0;
+ }
+}
+
/* Provide information about the configuration, CPUs and storage */
static void read_SCP_info(SCLPDevice *sclp, SCCB *sccb)
{
@@ -42,7 +52,6 @@ static void read_SCP_info(SCLPDevice *sclp, SCCB *sccb)
sclpMemoryHotplugDev *mhd = get_sclp_memory_hotplug_dev();
CPUState *cpu;
int cpu_count = 0;
- int i = 0;
int rnsize, rnmax;
int slots = MIN(machine->ram_slots, s390_get_memslot_count(kvm_state));
@@ -55,10 +64,7 @@ static void read_SCP_info(SCLPDevice *sclp, SCCB *sccb)
read_info->offset_cpu = cpu_to_be16(offsetof(ReadInfo, entries));
read_info->highest_cpu = cpu_to_be16(max_cpus);
- for (i = 0; i < cpu_count; i++) {
- read_info->entries[i].address = i;
- read_info->entries[i].type = 0;
- }
+ prepare_cpu_entries(sclp, read_info->entries, cpu_count);
read_info->facilities = cpu_to_be64(SCLP_HAS_CPU_INFO |
SCLP_HAS_PCI_RECONFIG);
@@ -309,7 +315,6 @@ static void sclp_read_cpu_info(SCLPDevice *sclp, SCCB *sccb)
ReadCpuInfo *cpu_info = (ReadCpuInfo *) sccb;
CPUState *cpu;
int cpu_count = 0;
- int i = 0;
CPU_FOREACH(cpu) {
cpu_count++;
@@ -323,10 +328,7 @@ static void sclp_read_cpu_info(SCLPDevice *sclp, SCCB
*sccb)
cpu_info->offset_standby = cpu_to_be16(cpu_info->offset_configured
+ cpu_info->nr_configured*sizeof(CPUEntry));
- for (i = 0; i < cpu_count; i++) {
- cpu_info->entries[i].address = i;
- cpu_info->entries[i].type = 0;
- }
+ prepare_cpu_entries(sclp, cpu_info->entries, cpu_count);
sccb->h.response_code = cpu_to_be16(SCLP_RC_NORMAL_READ_COMPLETION);
}
--
2.9.3
- [Qemu-devel] [PATCH for-2.8 28/38] s390x/kvm: allow runtime-instrumentation for "none" machine, (continued)
- [Qemu-devel] [PATCH for-2.8 28/38] s390x/kvm: allow runtime-instrumentation for "none" machine, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 24/38] s390x/sclp: indicate sclp features, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 18/38] s390x/cpumodel: store the CPU model in the CPU instance, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 35/38] qmp: add QMP interface "query-cpu-model-baseline", Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 27/38] s390x/sclp: propagate hmfai, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 36/38] s390x/cpumodel: implement QMP interface "query-cpu-model-expansion", Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 29/38] s390x/kvm: implement CPU model support, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 33/38] qmp: add QMP interface "query-cpu-model-expansion", Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 08/38] linux-headers: update, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 11/38] s390x/cpumodel: "host" and "qemu" as CPU subclasses, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 22/38] s390x/sclp: factor out preparation of cpu entries,
Cornelia Huck <=
- [Qemu-devel] [PATCH for-2.8 30/38] s390x/kvm: disable host model for problematic compat machines, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 37/38] s390x/cpumodel: implement QMP interface "query-cpu-model-comparison", Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 02/38] s390x/pci: return directly if create zpci failed, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 34/38] qmp: add QMP interface "query-cpu-model-comparison", Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 13/38] s390x/cpumodel: introduce CPU features, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 32/38] s390x/kvm: don't enable key wrapping if msa3 is disabled, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 19/38] s390x/cpumodel: expose features and feature groups as properties, Cornelia Huck, 2016/08/29
- [Qemu-devel] [PATCH for-2.8 15/38] s390x/cpumodel: generate CPU feature group lists, Cornelia Huck, 2016/08/29
- Re: [Qemu-devel] [PATCH for-2.8 00/38] s390x patches for 2.8, no-reply, 2016/08/29