qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: qemu-devel@nongnu.org
Cc: Peter Maydell <peter.maydell@linaro.org>,
	Eric Auger <eric.auger@redhat.com>,
	Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>,
	Shannon Zhao <shannon.zhaosl@gmail.com>,
	qemu-arm@nongnu.org, Igor Mammedov <imammedo@redhat.com>
Subject: [PULL 07/19] hw/arm/virt-acpi-build: Add PC-DIMM in SRAT
Date: Sat, 5 Oct 2019 17:59:11 -0400	[thread overview]
Message-ID: <20190918130633.4872-7-shameerali.kolothum.thodi@huawei.com> (raw)
Message-ID: <20191005215911.GBIvEKv8BzI9VTRqpzFY1YUAhiPnSzokY-B5OG3u6zQ@z> (raw)
In-Reply-To: <20191005215508.28754-1-mst@redhat.com>

From: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>

Generate Memory Affinity Structures for PC-DIMM ranges.

Also, Linux and Windows need ACPI SRAT table to make memory hotplug
work properly, however currently QEMU doesn't create SRAT table if
numa options aren't present on CLI. Hence add support(>=4.2) to
create numa node automatically (auto_enable_numa_with_memhp) when
QEMU is started with memory hotplug enabled but without '-numa'
options on CLI.

Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
Signed-off-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20190918130633.4872-7-shameerali.kolothum.thodi@huawei.com>
Acked-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
 hw/arm/virt-acpi-build.c | 8 ++++++++
 hw/arm/virt.c            | 2 ++
 2 files changed, 10 insertions(+)

diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
index cadeea0f41..c97661ad68 100644
--- a/hw/arm/virt-acpi-build.c
+++ b/hw/arm/virt-acpi-build.c
@@ -546,6 +546,14 @@ build_srat(GArray *table_data, BIOSLinker *linker, VirtMachineState *vms)
         }
     }
 
+    if (ms->device_memory) {
+        numamem = acpi_data_push(table_data, sizeof *numamem);
+        build_srat_memory(numamem, ms->device_memory->base,
+                          memory_region_size(&ms->device_memory->mr),
+                          ms->numa_state->num_nodes - 1,
+                          MEM_AFFINITY_HOTPLUGGABLE | MEM_AFFINITY_ENABLED);
+    }
+
     build_header(linker, table_data, (void *)(table_data->data + srat_start),
                  "SRAT", table_data->len - srat_start, 3, NULL, NULL);
 }
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index f926477ba5..d221841c42 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -2051,6 +2051,7 @@ static void virt_machine_class_init(ObjectClass *oc, void *data)
     hc->plug = virt_machine_device_plug_cb;
     hc->unplug_request = virt_machine_device_unplug_request_cb;
     mc->numa_mem_supported = true;
+    mc->auto_enable_numa_with_memhp = true;
 }
 
 static void virt_instance_init(Object *obj)
@@ -2156,6 +2157,7 @@ static void virt_machine_4_1_options(MachineClass *mc)
     virt_machine_4_2_options(mc);
     compat_props_add(mc->compat_props, hw_compat_4_1, hw_compat_4_1_len);
     vmc->no_ged = true;
+    mc->auto_enable_numa_with_memhp = false;
 }
 DEFINE_VIRT_MACHINE(4, 1)
 
-- 
MST



  parent reply	other threads:[~2019-10-05 22:10 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-18 13:06 [Qemu-devel] [PATCH-for-4.2 v11 00/11] ARM virt: ACPI memory hotplug support Shameer Kolothum
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 01/11] hw/acpi: Make ACPI IO address space configurable Shameer Kolothum
2019-10-05 21:58   ` [PULL 02/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 02/11] hw/acpi: Do not create memory hotplug method when handler is not defined Shameer Kolothum
2019-10-05 21:58   ` [PULL 03/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 03/11] hw/acpi: Add ACPI Generic Event Device Support Shameer Kolothum
2019-09-25 15:03   ` Igor Mammedov
2019-10-05 21:58   ` [PULL 04/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 04/11] hw/arm/virt: Add memory hotplug framework Shameer Kolothum
2019-10-05 21:58   ` [PULL 05/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 05/11] hw/arm/virt: Enable device memory cold/hot plug with ACPI boot Shameer Kolothum
2019-09-25 15:06   ` Igor Mammedov
2019-10-05 21:59   ` [PULL 06/19] " Michael S. Tsirkin
2019-09-18 13:06 ` Shameer Kolothum [this message]
2019-10-05 21:59   ` [PULL 07/19] hw/arm/virt-acpi-build: Add PC-DIMM in SRAT Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 07/11] hw/arm: Factor out powerdown notifier from GPIO Shameer Kolothum
2019-10-05 21:59   ` [PULL 08/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 08/11] hw/arm: Use GED for system_powerdown event Shameer Kolothum
2019-10-05 21:59   ` [PULL 09/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 09/11] docs/specs: Add ACPI GED documentation Shameer Kolothum
2019-09-25 15:09   ` Igor Mammedov
2019-10-05 21:59   ` [PULL 10/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 10/11] tests: Update ACPI tables list for upcoming arm/virt tests Shameer Kolothum
2019-09-25 15:11   ` Igor Mammedov
2019-10-05 21:59   ` [PULL 11/19] " Michael S. Tsirkin
2019-09-18 13:06 ` [Qemu-devel] [PATCH-for-4.2 v11 11/11] tests: Add bios tests to arm/virt Shameer Kolothum
2019-09-25 15:26   ` Michael S. Tsirkin
2019-09-25 17:36     ` Igor Mammedov
2019-10-05 21:59   ` [PULL 14/19] " Michael S. Tsirkin
2019-09-19  4:53 ` [Qemu-devel] [PATCH-for-4.2 v11 00/11] ARM virt: ACPI memory hotplug support no-reply
2019-09-19 20:36 ` no-reply
2019-09-20 15:49 ` no-reply
2019-09-25 15:28 ` Michael S. Tsirkin
2019-09-25 15:37   ` Igor Mammedov
2019-09-25 16:20     ` Michael S. Tsirkin
2019-09-27 10:37       ` Peter Maydell
2019-09-25 15:30 ` Michael S. Tsirkin
2019-09-30 10:51 [PATCH v4 0/3] Add virtio-fs Dr. David Alan Gilbert (git)
2019-09-30 10:51 ` [PATCH v4 1/3] virtio: Add virtio_fs linux headers Dr. David Alan Gilbert (git)
2019-10-05 22:00   ` [PULL 17/19] " Michael S. Tsirkin
2019-09-30 10:51 ` [PATCH v4 2/3] virtio: add vhost-user-fs base device Dr. David Alan Gilbert (git)
2019-09-30 11:06   ` Marc-André Lureau
2019-10-01 17:29     ` Dr. David Alan Gilbert
2019-10-02 15:07       ` Marc-André Lureau
2019-10-05 22:00   ` [PULL 18/19] " Michael S. Tsirkin
2019-10-07  5:57   ` Igor Mammedov
2019-10-07  7:28     ` Michael S. Tsirkin
2019-09-30 10:51 ` [PATCH v4 3/3] virtio: add vhost-user-fs-pci device Dr. David Alan Gilbert (git)
2019-10-05 22:00   ` [PULL 19/19] " Michael S. Tsirkin
2019-10-05 21:58 [PULL 00/19] virtio, vhost, acpi: features, fixes, tests Michael S. Tsirkin
2019-09-24 16:20 ` [PATCH v3] vhost-user: save features if the char dev is closed Adrian Moreno
2019-09-25  4:14   ` Jason Wang
2019-10-05 21:58   ` [PULL 01/19] " Michael S. Tsirkin
2019-10-05 21:59 ` [PULL 12/19] tests/acpi: add empty files Michael S. Tsirkin
2019-10-05 21:59 ` [PULL 13/19] tests: allow empty expected files Michael S. Tsirkin
2019-10-05 21:59 ` [PULL 15/19] tests: document how to update acpi tables Michael S. Tsirkin
2019-10-05 21:59 ` [PULL 16/19] tests/acpi: add expected tables for arm/virt Michael S. Tsirkin
2019-10-07 16:31 ` [PULL 00/19] virtio, vhost, acpi: features, fixes, tests Peter Maydell
2019-10-15 21:03   ` Michael S. Tsirkin
2019-10-17 15:48 ` Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190918130633.4872-7-shameerali.kolothum.thodi@huawei.com \
    --to=mst@redhat.com \
    --cc=eric.auger@redhat.com \
    --cc=imammedo@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=shameerali.kolothum.thodi@huawei.com \
    --cc=shannon.zhaosl@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).