[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 1/8] s390/sclp: get machine once during read scp/cpu info
From: |
Janosch Frank |
Subject: |
Re: [PATCH v3 1/8] s390/sclp: get machine once during read scp/cpu info |
Date: |
Fri, 19 Jun 2020 10:12:58 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 |
On 6/19/20 12:22 AM, Collin Walling wrote:
> Functions within read scp/cpu info will need access to the machine
> state. Let's make a call to retrieve the machine state once and
> pass the appropriate data to the respective functions.
>
> Signed-off-by: Collin Walling <walling@linux.ibm.com>
> Reviewed-by: David Hildenbrand <david@redhat.com>
> Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
> ---
> hw/s390x/sclp.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/hw/s390x/sclp.c b/hw/s390x/sclp.c
> index 20aca30ac4..7875334037 100644
> --- a/hw/s390x/sclp.c
> +++ b/hw/s390x/sclp.c
> @@ -49,9 +49,8 @@ static inline bool sclp_command_code_valid(uint32_t code)
> return false;
> }
>
> -static void prepare_cpu_entries(SCLPDevice *sclp, CPUEntry *entry, int
> *count)
> +static void prepare_cpu_entries(MachineState *ms, CPUEntry *entry, int
> *count)
> {
> - MachineState *ms = MACHINE(qdev_get_machine());
> uint8_t features[SCCB_CPU_FEATURE_LEN] = { 0 };
> int i;
>
> @@ -77,7 +76,7 @@ static void read_SCP_info(SCLPDevice *sclp, SCCB *sccb)
> IplParameterBlock *ipib = s390_ipl_get_iplb();
>
> /* CPU information */
> - prepare_cpu_entries(sclp, read_info->entries, &cpu_count);
> + prepare_cpu_entries(machine, read_info->entries, &cpu_count);
> read_info->entries_cpu = cpu_to_be16(cpu_count);
> read_info->offset_cpu = cpu_to_be16(offsetof(ReadInfo, entries));
> read_info->highest_cpu = cpu_to_be16(machine->smp.max_cpus - 1);
> @@ -132,10 +131,11 @@ static void read_SCP_info(SCLPDevice *sclp, SCCB *sccb)
> /* Provide information about the CPU */
> static void sclp_read_cpu_info(SCLPDevice *sclp, SCCB *sccb)
> {
> + MachineState *machine = MACHINE(qdev_get_machine());
> ReadCpuInfo *cpu_info = (ReadCpuInfo *) sccb;
> int cpu_count;
>
> - prepare_cpu_entries(sclp, cpu_info->entries, &cpu_count);
> + prepare_cpu_entries(machine, cpu_info->entries, &cpu_count);
> cpu_info->nr_configured = cpu_to_be16(cpu_count);
> cpu_info->offset_configured = cpu_to_be16(offsetof(ReadCpuInfo,
> entries));
> cpu_info->nr_standby = cpu_to_be16(0);
>
signature.asc
Description: OpenPGP digital signature
- [PATCH v3 0/8] s390: Extended-Length SCCB & DIAGNOSE 0x318, Collin Walling, 2020/06/18
- [PATCH v3 2/8] s390/sclp: check sccb len before filling in data, Collin Walling, 2020/06/18
- [PATCH v3 1/8] s390/sclp: get machine once during read scp/cpu info, Collin Walling, 2020/06/18
- [PATCH v3 5/8] s390/sclp: use cpu offset to locate cpu entries, Collin Walling, 2020/06/18
- [PATCH v3 4/8] s390/sclp: read sccb from mem based on sccb length, Collin Walling, 2020/06/18
- [PATCH v3 3/8] s390/sclp: rework sclp boundary and length checks, Collin Walling, 2020/06/18