[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v1 5/8] s390/sclp: use cpu offset to locate cpu entries
From: |
Collin Walling |
Subject: |
[PATCH v1 5/8] s390/sclp: use cpu offset to locate cpu entries |
Date: |
Fri, 8 May 2020 19:08:20 -0400 |
The start of the CPU entry region in the Read SCP Info
response data is denoted by the offset_cpu field. As such,
QEMU needs to begin creating entries at this address.
This is in preparation for when Read SCP Info inevitably
introduces new bytes that push the start of its CPUEntry
field further away.
Read CPU Info is unlikely to ever change, so let's not
bother accounting for the offset there.
Signed-off-by: Collin Walling <address@hidden>
---
hw/s390x/sclp.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/hw/s390x/sclp.c b/hw/s390x/sclp.c
index 748d04a0e2..c47bd3b5ab 100644
--- a/hw/s390x/sclp.c
+++ b/hw/s390x/sclp.c
@@ -103,15 +103,17 @@ static void read_SCP_info(SCLPDevice *sclp, SCCB *sccb)
int cpu_count;
int rnsize, rnmax;
IplParameterBlock *ipib = s390_ipl_get_iplb();
+ int offset_cpu = offsetof(ReadInfo, entries);
+ CPUEntry *entries_start = (void *)sccb + offset_cpu;
if (!check_sufficient_sccb_len(sccb, sizeof(ReadInfo))) {
return;
}
/* CPU information */
- prepare_cpu_entries(read_info->entries, &cpu_count);
+ prepare_cpu_entries(entries_start, &cpu_count);
read_info->entries_cpu = cpu_to_be16(cpu_count);
- read_info->offset_cpu = cpu_to_be16(offsetof(ReadInfo, entries));
+ read_info->offset_cpu = cpu_to_be16(offset_cpu);
read_info->highest_cpu = cpu_to_be16(machine->smp.max_cpus - 1);
read_info->ibc_val = cpu_to_be32(s390_get_ibc_val());
--
2.21.1
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, (continued)
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Janosch Frank, 2020/05/11
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, David Hildenbrand, 2020/05/11
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Cornelia Huck, 2020/05/12
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Collin Walling, 2020/05/12
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Cornelia Huck, 2020/05/12
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Collin Walling, 2020/05/12
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Janosch Frank, 2020/05/13
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Cornelia Huck, 2020/05/13
- Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, Collin Walling, 2020/05/14
Re: [PATCH v1 2/8] s390/sclp: check sccb len before filling in data, David Hildenbrand, 2020/05/18
[PATCH v1 5/8] s390/sclp: use cpu offset to locate cpu entries,
Collin Walling <=
[PATCH v1 1/8] s390/sclp: remove SCLPDevice param from prepare_cpu_entries, Collin Walling, 2020/05/08
[PATCH v1 6/8] s390/sclp: add extended-length sccb support for kvm guest, Collin Walling, 2020/05/08
[PATCH v1 8/8] s390: diagnose 318 info reset and migration support, Collin Walling, 2020/05/08
Re: [PATCH v1 0/8] s390: Extended-Length SCCB & DIAGNOSE 0x318, no-reply, 2020/05/09
Re: [PATCH v1 0/8] s390: Extended-Length SCCB & DIAGNOSE 0x318, Cornelia Huck, 2020/05/12