machine: Add SMP Sockets in CpuTopology
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 <babu.moger@amd.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> Message-Id: <158396718647.58170.2278448323151215741.stgit@naples-babu.amd.com>
This commit is contained in:
parent
f20dec0b63
commit
8cb30e3aec
@ -757,6 +757,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) {
|
||||
|
@ -781,6 +781,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;
|
||||
}
|
||||
|
||||
|
@ -236,12 +236,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;
|
||||
|
||||
|
@ -3946,6 +3946,7 @@ void qemu_init(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));
|
||||
|
Loading…
x
Reference in New Issue
Block a user