|
|
ddf19c |
From e3a1c2ff0d7b930b1782d59d093fd15471d3aee1 Mon Sep 17 00:00:00 2001
|
|
|
ddf19c |
From: "plai@redhat.com" <plai@redhat.com>
|
|
|
ddf19c |
Date: Thu, 21 May 2020 23:56:46 +0100
|
|
|
ddf19c |
Subject: [PATCH 03/12] numa: properly check if numa is supported
|
|
|
ddf19c |
|
|
|
ddf19c |
RH-Author: plai@redhat.com
|
|
|
ddf19c |
Message-id: <20200521235655.27141-3-plai@redhat.com>
|
|
|
ddf19c |
Patchwork-id: 96732
|
|
|
ddf19c |
O-Subject: [RHEL8.2.1 AV qemu-kvm PATCH 02/11] numa: properly check if numa is supported
|
|
|
ddf19c |
Bugzilla: 1600217
|
|
|
ddf19c |
RH-Acked-by: Michael S. Tsirkin <mst@redhat.com>
|
|
|
ddf19c |
RH-Acked-by: Igor Mammedov <imammedo@redhat.com>
|
|
|
ddf19c |
RH-Acked-by: Eduardo Habkost <ehabkost@redhat.com>
|
|
|
ddf19c |
|
|
|
ddf19c |
From: Igor Mammedov <imammedo@redhat.com>
|
|
|
ddf19c |
|
|
|
ddf19c |
Commit aa57020774b, by mistake used MachineClass::numa_mem_supported
|
|
|
ddf19c |
to check if NUMA is supported by machine and also as unrelated change
|
|
|
ddf19c |
set it to true for sbsa-ref board.
|
|
|
ddf19c |
|
|
|
ddf19c |
Luckily change didn't break machines that support NUMA, as the field
|
|
|
ddf19c |
is set to true for them.
|
|
|
ddf19c |
|
|
|
ddf19c |
But the field is not intended for checking if NUMA is supported and
|
|
|
ddf19c |
will be flipped to false within this release for new machine types.
|
|
|
ddf19c |
|
|
|
ddf19c |
Fix it:
|
|
|
ddf19c |
- by using previously used condition
|
|
|
ddf19c |
!mc->cpu_index_to_instance_props || !mc->get_default_cpu_node_id
|
|
|
ddf19c |
the first time and then use MachineState::numa_state down the road
|
|
|
ddf19c |
to check if NUMA is supported
|
|
|
ddf19c |
- dropping stray sbsa-ref chunk
|
|
|
ddf19c |
|
|
|
ddf19c |
Fixes: aa57020774b690a22be72453b8e91c9b5a68c516
|
|
|
ddf19c |
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
|
|
|
ddf19c |
Message-Id: <1576154936-178362-3-git-send-email-imammedo@redhat.com>
|
|
|
ddf19c |
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
|
|
|
ddf19c |
(cherry picked from commit fcd3f2cc124600385dba46c69a80626985c15b50)
|
|
|
ddf19c |
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
|
|
|
ddf19c |
---
|
|
|
ddf19c |
hw/arm/sbsa-ref.c | 1 -
|
|
|
ddf19c |
hw/core/machine.c | 4 ++--
|
|
|
ddf19c |
2 files changed, 2 insertions(+), 3 deletions(-)
|
|
|
ddf19c |
|
|
|
ddf19c |
diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
|
|
|
ddf19c |
index 27046cc..c6261d4 100644
|
|
|
ddf19c |
--- a/hw/arm/sbsa-ref.c
|
|
|
ddf19c |
+++ b/hw/arm/sbsa-ref.c
|
|
|
ddf19c |
@@ -791,7 +791,6 @@ static void sbsa_ref_class_init(ObjectClass *oc, void *data)
|
|
|
ddf19c |
mc->possible_cpu_arch_ids = sbsa_ref_possible_cpu_arch_ids;
|
|
|
ddf19c |
mc->cpu_index_to_instance_props = sbsa_ref_cpu_index_to_props;
|
|
|
ddf19c |
mc->get_default_cpu_node_id = sbsa_ref_get_default_cpu_node_id;
|
|
|
ddf19c |
- mc->numa_mem_supported = true;
|
|
|
ddf19c |
}
|
|
|
ddf19c |
|
|
|
ddf19c |
static const TypeInfo sbsa_ref_info = {
|
|
|
ddf19c |
diff --git a/hw/core/machine.c b/hw/core/machine.c
|
|
|
ddf19c |
index 5a025d1..19c78c6 100644
|
|
|
ddf19c |
--- a/hw/core/machine.c
|
|
|
ddf19c |
+++ b/hw/core/machine.c
|
|
|
ddf19c |
@@ -1128,7 +1128,7 @@ static void machine_initfn(Object *obj)
|
|
|
ddf19c |
NULL);
|
|
|
ddf19c |
}
|
|
|
ddf19c |
|
|
|
ddf19c |
- if (mc->numa_mem_supported) {
|
|
|
ddf19c |
+ if (mc->cpu_index_to_instance_props && mc->get_default_cpu_node_id) {
|
|
|
ddf19c |
ms->numa_state = g_new0(NumaState, 1);
|
|
|
ddf19c |
}
|
|
|
ddf19c |
|
|
|
ddf19c |
@@ -1272,7 +1272,7 @@ void machine_run_board_init(MachineState *machine)
|
|
|
ddf19c |
{
|
|
|
ddf19c |
MachineClass *machine_class = MACHINE_GET_CLASS(machine);
|
|
|
ddf19c |
|
|
|
ddf19c |
- if (machine_class->numa_mem_supported) {
|
|
|
ddf19c |
+ if (machine->numa_state) {
|
|
|
ddf19c |
numa_complete_configuration(machine);
|
|
|
ddf19c |
if (machine->numa_state->num_nodes) {
|
|
|
ddf19c |
machine_numa_finish_cpu_init(machine);
|
|
|
ddf19c |
--
|
|
|
ddf19c |
1.8.3.1
|
|
|
ddf19c |
|