[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v5 04/16] machine: Add SMP Sockets in CpuTopology
From: |
Babu Moger |
Subject: |
Re: [PATCH v5 04/16] machine: Add SMP Sockets in CpuTopology |
Date: |
Mon, 9 Mar 2020 13:01:47 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 |
On 3/9/20 9:17 AM, Igor Mammedov wrote:
> On Tue, 03 Mar 2020 13:57:18 -0600
> Babu Moger <address@hidden> wrote:
>
>> Store the smp sockets in CpuTopology. The socket information required to
>> build the apic id in EPYC mode. Right now socket information is not passed
>> to down when decoding the apic id. Add the socket information here.
>>
>> Signed-off-by: Babu Moger <address@hidden>
>> Reviewed-by: Eduardo Habkost <address@hidden>
>> Reviewed-by: Igor Mammedov <address@hidden>
>> ---
>> hw/core/machine.c | 1 +
>> hw/i386/pc.c | 1 +
>> include/hw/boards.h | 2 ++
>> vl.c | 1 +
>
> this has been moved to softmmu, so patch needs to rebased against current
> master
Sure. Will do.
>
>> 4 files changed, 5 insertions(+)
>>
>> diff --git a/hw/core/machine.c b/hw/core/machine.c
>> index d8e30e4895..2582ce94f6 100644
>> --- a/hw/core/machine.c
>> +++ b/hw/core/machine.c
>> @@ -728,6 +728,7 @@ static void smp_parse(MachineState *ms, QemuOpts *opts)
>> ms->smp.cpus = cpus;
>> ms->smp.cores = cores;
>> ms->smp.threads = threads;
>> + ms->smp.sockets = sockets;
>> }
>>
>> if (ms->smp.cpus > 1) {
>> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
>> index ef23ae2af5..68bf08f285 100644
>> --- a/hw/i386/pc.c
>> +++ b/hw/i386/pc.c
>> @@ -780,6 +780,7 @@ void pc_smp_parse(MachineState *ms, QemuOpts *opts)
>> ms->smp.cpus = cpus;
>> ms->smp.cores = cores;
>> ms->smp.threads = threads;
>> + ms->smp.sockets = sockets;
>> x86ms->smp_dies = dies;
>> }
>>
>> diff --git a/include/hw/boards.h b/include/hw/boards.h
>> index fb1b43d5b9..320dd14e02 100644
>> --- a/include/hw/boards.h
>> +++ b/include/hw/boards.h
>> @@ -252,12 +252,14 @@ typedef struct DeviceMemoryState {
>> * @cpus: the number of present logical processors on the machine
>> * @cores: the number of cores in one package
>> * @threads: the number of threads in one core
>> + * @sockets: the number of sockets on the machine
>> * @max_cpus: the maximum number of logical processors on the machine
>> */
>> typedef struct CpuTopology {
>> unsigned int cpus;
>> unsigned int cores;
>> unsigned int threads;
>> + unsigned int sockets;
>> unsigned int max_cpus;
>> } CpuTopology;
>>
>> diff --git a/vl.c b/vl.c
>> index 7dcb0879c4..f77b1285c6 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -3949,6 +3949,7 @@ int main(int argc, char **argv, char **envp)
>> current_machine->smp.max_cpus = machine_class->default_cpus;
>> current_machine->smp.cores = 1;
>> current_machine->smp.threads = 1;
>> + current_machine->smp.sockets = 1;
>>
>> machine_class->smp_parse(current_machine,
>> qemu_opts_find(qemu_find_opts("smp-opts"), NULL));
>>
>
- [PATCH v5 00/16] APIC ID fixes for AMD EPYC CPU model, Babu Moger, 2020/03/03
- [PATCH v5 01/16] hw/i386: Rename X86CPUTopoInfo structure to X86CPUTopoIDs, Babu Moger, 2020/03/03
- [PATCH v5 03/16] hw/i386: Consolidate topology functions, Babu Moger, 2020/03/03
- [PATCH v5 05/16] hw/i386: Remove unnecessary initialization in x86_cpu_new, Babu Moger, 2020/03/03
- [PATCH v5 02/16] hw/i386: Introduce X86CPUTopoInfo to contain topology info, Babu Moger, 2020/03/03
- [PATCH v5 04/16] machine: Add SMP Sockets in CpuTopology, Babu Moger, 2020/03/03
- [PATCH v5 06/16] hw/i386: Update structures to save the number of nodes per package, Babu Moger, 2020/03/03
- [PATCH v5 08/16] hw/386: Add EPYC mode topology decoding functions, Babu Moger, 2020/03/03
- [PATCH v5 07/16] hw/i386: Rename apicid_from_topo_ids to x86_apicid_from_topo_ids, Babu Moger, 2020/03/03
- [PATCH v5 11/16] target/i386: Load apicid model specific handlers from X86CPUDefinition, Babu Moger, 2020/03/03
- [PATCH v5 09/16] target/i386: Cleanup and use the EPYC mode topology functions, Babu Moger, 2020/03/03