diff options
author | Igor Mammedov <imammedo@redhat.com> | 2015-03-19 17:09:21 +0000 |
---|---|---|
committer | Eduardo Habkost <ehabkost@redhat.com> | 2015-03-19 16:12:09 -0300 |
commit | 57924bcd87cb03cc21ebd7efed880d16ca048dce (patch) | |
tree | 6c64141a2db6ef60b6445a204d633dbb7608063a /include/sysemu | |
parent | 3ef7197505e483e2f28c5fbd6ed54b4061221200 (diff) |
numa: introduce machine callback for VCPU to node mapping
Current default round-robin way of distributing VCPUs among
NUMA nodes might be wrong in case on multi-core/threads
CPUs. Making guests confused wrt topology where cores from
the same socket are on different nodes.
Allow a machine to override default mapping by providing
MachineClass::cpu_index_to_socket_id()
callback which would allow it group VCPUs from a socket
on the same NUMA node.
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'include/sysemu')
-rw-r--r-- | include/sysemu/numa.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/sysemu/numa.h b/include/sysemu/numa.h index 5633b856a8..6523b4d7f9 100644 --- a/include/sysemu/numa.h +++ b/include/sysemu/numa.h @@ -6,6 +6,7 @@ #include "qemu/option.h" #include "sysemu/sysemu.h" #include "sysemu/hostmem.h" +#include "hw/boards.h" extern int nb_numa_nodes; /* Number of NUMA nodes */ @@ -16,7 +17,7 @@ typedef struct node_info { bool present; } NodeInfo; extern NodeInfo numa_info[MAX_NODES]; -void parse_numa_opts(void); +void parse_numa_opts(MachineClass *mc); void numa_post_machine_init(void); void query_numa_node_mem(uint64_t node_mem[]); extern QemuOptsList qemu_numa_opts; |