[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 22/38] s390x/sclp: factor out preparation of cpu entr
From: |
Cornelia Huck |
Subject: |
[Qemu-devel] [PULL 22/38] s390x/sclp: factor out preparation of cpu entries |
Date: |
Tue, 6 Sep 2016 09:46:54 +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] [PULL 36/38] s390x/cpumodel: implement QMP interface "query-cpu-model-expansion", (continued)
- [Qemu-devel] [PULL 36/38] s390x/cpumodel: implement QMP interface "query-cpu-model-expansion", Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 37/38] s390x/cpumodel: implement QMP interface "query-cpu-model-comparison", Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 30/38] s390x/kvm: disable host model for problematic compat machines, Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 33/38] qmp: add QMP interface "query-cpu-model-expansion", Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 34/38] qmp: add QMP interface "query-cpu-model-comparison", Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 16/38] s390x/cpumodel: introduce CPU feature group definitions, Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 31/38] s390x/kvm: let the CPU model control CMM(A), Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 25/38] s390x/sclp: propagate the ibc val (lowest and unblocked ibc), Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 26/38] s390x/sclp: propagate the mha via sclp, Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 22/38] s390x/sclp: factor out preparation of cpu entries,
Cornelia Huck <=
- [Qemu-devel] [PULL 24/38] s390x/sclp: indicate sclp features, Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 38/38] s390x/cpumodel: implement QMP interface "query-cpu-model-baseline", Cornelia Huck, 2016/09/06
- [Qemu-devel] [PULL 35/38] qmp: add QMP interface "query-cpu-model-baseline", Cornelia Huck, 2016/09/06
- Re: [Qemu-devel] [PULL 00/38] First set of s390x patches for 2.8, no-reply, 2016/09/06
- Re: [Qemu-devel] [PULL 00/38] First set of s390x patches for 2.8, Peter Maydell, 2016/09/06