[Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support

Shameer Kolothum posted 8 patches 4 years, 9 months ago
Test docker-clang@ubuntu passed
Test s390x passed
Test asan passed
Test docker-mingw@fedora passed
Test FreeBSD passed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190625121421.22280-1-shameerali.kolothum.thodi@huawei.com
Maintainers: Eduardo Habkost <ehabkost@redhat.com>, Shannon Zhao <shannon.zhaosl@gmail.com>, "Michael S. Tsirkin" <mst@redhat.com>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, Igor Mammedov <imammedo@redhat.com>, Richard Henderson <rth@twiddle.net>, Peter Maydell <peter.maydell@linaro.org>
There is a newer version of this series
hw/acpi/Kconfig                        |   4 +
hw/acpi/Makefile.objs                  |   1 +
hw/acpi/generic_event_device.c         | 352 +++++++++++++++++++++++++
hw/acpi/memory_hotplug.c               |  35 +--
hw/arm/Kconfig                         |   4 +
hw/arm/virt-acpi-build.c               |  58 ++--
hw/arm/virt.c                          |  88 ++++++-
hw/i386/acpi-build.c                   |   3 +-
include/hw/acpi/generic_event_device.h | 106 ++++++++
include/hw/acpi/memory_hotplug.h       |   9 +-
include/hw/arm/virt.h                  |   3 +
11 files changed, 607 insertions(+), 56 deletions(-)
create mode 100644 hw/acpi/generic_event_device.c
create mode 100644 include/hw/acpi/generic_event_device.h
[Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Shameer Kolothum 4 years, 9 months ago
This series is an attempt to provide device memory hotplug support 
on ARM virt platform. This is based on Eric's recent works here[1]
and carries some of the pc-dimm related patches dropped from his
series.

The kernel support for arm64 memory hot add was added recently by
Robin and hence the guest kernel should be => 5.0-rc1.

NVDIM support is not included currently as we still have an unresolved
issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
can be included, but not done for now, for keeping it simple.

This makes use of GED device to sent hotplug ACPI events to the
Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
Sebastien to add the hardware-reduced support to Nemu using GED
device[3]. (Please shout if I got the author/signed-off wrong for
those patches or missed any names).

This is sanity tested on a HiSilicon ARM64 platform and appreciate
any further testing.

Thanks,
Shameer

[1] https://patchwork.kernel.org/cover/10837565/
[2] https://patchwork.kernel.org/cover/10783589/
[3] https://github.com/intel/nemu/blob/topic/virt-x86/hw/acpi/ged.c
[4] http://lists.infradead.org/pipermail/linux-arm-kernel/2019-May/651763.html

v5 --> v6

-Addressed comments from Eric.
-Added R-by from Eric and Igor.

v4 --> v5
-Removed gsi/ged-irq routing in virt.
-Added Migration support.
-Dropped support for DT coldplug case based on the discussions
 here[4]
-Added system_powerdown support through GED.

v3 --> v4
Addressed comments from Igor and Eric,
-Renamed "virt-acpi" to "acpi-ged".
-Changed ged device parent to TYPE_DEVICE.
-Introduced DT memory node property "hotpluggable" to resolve device
 memory being treated as early boot memory issue(patch #7).
-Combined patches #3 and #9 from v3 into #3.

v2 --> v3

Addressed comments from Igor and Eric,
-Made virt acpi device platform independent and moved
 to hw/acpi/generic_event_device.c
-Moved ged specific code into hw/acpi/generic_event_device.c
-Introduced an opt-in feature "fdt" to resolve device-memory being
 treated as early boot memory.
-Dropped patch #1 from v2.

RFC --> v2

-Use GED device instead of GPIO for ACPI hotplug events.
-Removed NVDIMM support for now.
-Includes dropped patches from Eric's v9 series.

Eric Auger (1):
  hw/arm/virt: Add memory hotplug framework

Samuel Ortiz (2):
  hw/acpi: Do not create memory hotplug method when handler is not
    defined
  hw/acpi: Add ACPI Generic Event Device Support

Shameer Kolothum (5):
  hw/acpi: Make ACPI IO address space configurable
  hw/arm/virt: Enable device memory cold/hot plug with ACPI boot
  hw/arm/virt-acpi-build: Add PC-DIMM in SRAT
  hw/acpi: Add system power down support to GED
  hw/arm: Use GED for system_powerdown event

 hw/acpi/Kconfig                        |   4 +
 hw/acpi/Makefile.objs                  |   1 +
 hw/acpi/generic_event_device.c         | 352 +++++++++++++++++++++++++
 hw/acpi/memory_hotplug.c               |  35 +--
 hw/arm/Kconfig                         |   4 +
 hw/arm/virt-acpi-build.c               |  58 ++--
 hw/arm/virt.c                          |  88 ++++++-
 hw/i386/acpi-build.c                   |   3 +-
 include/hw/acpi/generic_event_device.h | 106 ++++++++
 include/hw/acpi/memory_hotplug.h       |   9 +-
 include/hw/arm/virt.h                  |   3 +
 11 files changed, 607 insertions(+), 56 deletions(-)
 create mode 100644 hw/acpi/generic_event_device.c
 create mode 100644 include/hw/acpi/generic_event_device.h

-- 
2.17.1



Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Auger Eric 4 years, 9 months ago
Hi Shameer,

On 6/25/19 2:14 PM, Shameer Kolothum wrote:
> This series is an attempt to provide device memory hotplug support 
> on ARM virt platform. This is based on Eric's recent works here[1]
> and carries some of the pc-dimm related patches dropped from his
> series.
> 
> The kernel support for arm64 memory hot add was added recently by
> Robin and hence the guest kernel should be => 5.0-rc1.
> 
> NVDIM support is not included currently as we still have an unresolved
> issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
> can be included, but not done for now, for keeping it simple.
> 
> This makes use of GED device to sent hotplug ACPI events to the
> Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
> Sebastien to add the hardware-reduced support to Nemu using GED
> device[3]. (Please shout if I got the author/signed-off wrong for
> those patches or missed any names).
> 
> This is sanity tested on a HiSilicon ARM64 platform and appreciate
> any further testing.

Tested-by: Eric Auger <eric.auger@redhat.com>

Thanks

Eric
> 
> Thanks,
> Shameer
> 
> [1] https://patchwork.kernel.org/cover/10837565/
> [2] https://patchwork.kernel.org/cover/10783589/
> [3] https://github.com/intel/nemu/blob/topic/virt-x86/hw/acpi/ged.c
> [4] http://lists.infradead.org/pipermail/linux-arm-kernel/2019-May/651763.html
> 
> v5 --> v6
> 
> -Addressed comments from Eric.
> -Added R-by from Eric and Igor.
> 
> v4 --> v5
> -Removed gsi/ged-irq routing in virt.
> -Added Migration support.
> -Dropped support for DT coldplug case based on the discussions
>  here[4]
> -Added system_powerdown support through GED.
> 
> v3 --> v4
> Addressed comments from Igor and Eric,
> -Renamed "virt-acpi" to "acpi-ged".
> -Changed ged device parent to TYPE_DEVICE.
> -Introduced DT memory node property "hotpluggable" to resolve device
>  memory being treated as early boot memory issue(patch #7).
> -Combined patches #3 and #9 from v3 into #3.
> 
> v2 --> v3
> 
> Addressed comments from Igor and Eric,
> -Made virt acpi device platform independent and moved
>  to hw/acpi/generic_event_device.c
> -Moved ged specific code into hw/acpi/generic_event_device.c
> -Introduced an opt-in feature "fdt" to resolve device-memory being
>  treated as early boot memory.
> -Dropped patch #1 from v2.
> 
> RFC --> v2
> 
> -Use GED device instead of GPIO for ACPI hotplug events.
> -Removed NVDIMM support for now.
> -Includes dropped patches from Eric's v9 series.
> 
> Eric Auger (1):
>   hw/arm/virt: Add memory hotplug framework
> 
> Samuel Ortiz (2):
>   hw/acpi: Do not create memory hotplug method when handler is not
>     defined
>   hw/acpi: Add ACPI Generic Event Device Support
> 
> Shameer Kolothum (5):
>   hw/acpi: Make ACPI IO address space configurable
>   hw/arm/virt: Enable device memory cold/hot plug with ACPI boot
>   hw/arm/virt-acpi-build: Add PC-DIMM in SRAT
>   hw/acpi: Add system power down support to GED
>   hw/arm: Use GED for system_powerdown event
> 
>  hw/acpi/Kconfig                        |   4 +
>  hw/acpi/Makefile.objs                  |   1 +
>  hw/acpi/generic_event_device.c         | 352 +++++++++++++++++++++++++
>  hw/acpi/memory_hotplug.c               |  35 +--
>  hw/arm/Kconfig                         |   4 +
>  hw/arm/virt-acpi-build.c               |  58 ++--
>  hw/arm/virt.c                          |  88 ++++++-
>  hw/i386/acpi-build.c                   |   3 +-
>  include/hw/acpi/generic_event_device.h | 106 ++++++++
>  include/hw/acpi/memory_hotplug.h       |   9 +-
>  include/hw/arm/virt.h                  |   3 +
>  11 files changed, 607 insertions(+), 56 deletions(-)
>  create mode 100644 hw/acpi/generic_event_device.c
>  create mode 100644 include/hw/acpi/generic_event_device.h
> 

Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Peter Maydell 4 years, 9 months ago
On Tue, 25 Jun 2019 at 13:15, Shameer Kolothum
<shameerali.kolothum.thodi@huawei.com> wrote:
>
> This series is an attempt to provide device memory hotplug support
> on ARM virt platform. This is based on Eric's recent works here[1]
> and carries some of the pc-dimm related patches dropped from his
> series.
>
> The kernel support for arm64 memory hot add was added recently by
> Robin and hence the guest kernel should be => 5.0-rc1.
>
> NVDIM support is not included currently as we still have an unresolved
> issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
> can be included, but not done for now, for keeping it simple.
>
> This makes use of GED device to sent hotplug ACPI events to the
> Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
> Sebastien to add the hardware-reduced support to Nemu using GED
> device[3]. (Please shout if I got the author/signed-off wrong for
> those patches or missed any names).
>
> This is sanity tested on a HiSilicon ARM64 platform and appreciate
> any further testing.

Hi; this seems to fail 'make check' (on an x86 host):

acpi-test: Warning! DSDT binary file mismatch. Actual
[aml:/tmp/aml-01P83Z], Expected [aml:tests/data/acpi/virt/DSDT].
acpi-test: Warning! DSDT mismatch. Actual [asl:/tmp/asl-4ZP83Z.dsl,
aml:/tmp/aml-01P83Z], Expected [asl:/tmp/asl-H7UE4Z.dsl,
aml:tests/data/acpi/virt/DSDT].
**
ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/tests/bios-tables-test.c:434:test_acpi_asl:
assertion failed: (all_tables_match)
ERROR - Bail out!
ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/tests/bios-tables-test.c:434:test_acpi_asl:
assertion failed: (all_tables_match)
Aborted (core dumped)
/home/petmay01/linaro/qemu-from-laptop/qemu/tests/Makefile.include:894:
recipe for target 'check-qtest-aarch64' failed

Is there a need to update the reference DSDT used by the test?

thanks
-- PMM

Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Auger Eric 4 years, 9 months ago
Hi Peter,

On 7/1/19 3:52 PM, Peter Maydell wrote:
> On Tue, 25 Jun 2019 at 13:15, Shameer Kolothum
> <shameerali.kolothum.thodi@huawei.com> wrote:
>>
>> This series is an attempt to provide device memory hotplug support
>> on ARM virt platform. This is based on Eric's recent works here[1]
>> and carries some of the pc-dimm related patches dropped from his
>> series.
>>
>> The kernel support for arm64 memory hot add was added recently by
>> Robin and hence the guest kernel should be => 5.0-rc1.
>>
>> NVDIM support is not included currently as we still have an unresolved
>> issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
>> can be included, but not done for now, for keeping it simple.
>>
>> This makes use of GED device to sent hotplug ACPI events to the
>> Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
>> Sebastien to add the hardware-reduced support to Nemu using GED
>> device[3]. (Please shout if I got the author/signed-off wrong for
>> those patches or missed any names).
>>
>> This is sanity tested on a HiSilicon ARM64 platform and appreciate
>> any further testing.
> 
> Hi; this seems to fail 'make check' (on an x86 host):
> 
> acpi-test: Warning! DSDT binary file mismatch. Actual
> [aml:/tmp/aml-01P83Z], Expected [aml:tests/data/acpi/virt/DSDT].
> acpi-test: Warning! DSDT mismatch. Actual [asl:/tmp/asl-4ZP83Z.dsl,
> aml:/tmp/aml-01P83Z], Expected [asl:/tmp/asl-H7UE4Z.dsl,
> aml:tests/data/acpi/virt/DSDT].
> **
> ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/tests/bios-tables-test.c:434:test_acpi_asl:
> assertion failed: (all_tables_match)
I fail to reproduce on my laptop:

make check-qtest-x86_64 executes

  TEST    check-qtest-x86_64: tests/bios-tables-test

and it does not seem to complain. But maybe I misunderstand the framework.

If I were able to reproduce I understand this is a matter to regenerate
the files we compare with by using
tests/data/acpi/rebuild-expected-aml.sh, right?

Thanks

Eric


> ERROR - Bail out!
> ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/tests/bios-tables-test.c:434:test_acpi_asl:
> assertion failed: (all_tables_match)
> Aborted (core dumped)
> /home/petmay01/linaro/qemu-from-laptop/qemu/tests/Makefile.include:894:
> recipe for target 'check-qtest-aarch64' failed
> 
> Is there a need to update the reference DSDT used by the test?
> 
> thanks
> -- PMM
> 

Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Auger Eric 4 years, 9 months ago
Hi Peter,

On 7/1/19 5:55 PM, Auger Eric wrote:
> Hi Peter,
> 
> On 7/1/19 3:52 PM, Peter Maydell wrote:
>> On Tue, 25 Jun 2019 at 13:15, Shameer Kolothum
>> <shameerali.kolothum.thodi@huawei.com> wrote:
>>>
>>> This series is an attempt to provide device memory hotplug support
>>> on ARM virt platform. This is based on Eric's recent works here[1]
>>> and carries some of the pc-dimm related patches dropped from his
>>> series.
>>>
>>> The kernel support for arm64 memory hot add was added recently by
>>> Robin and hence the guest kernel should be => 5.0-rc1.
>>>
>>> NVDIM support is not included currently as we still have an unresolved
>>> issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
>>> can be included, but not done for now, for keeping it simple.
>>>
>>> This makes use of GED device to sent hotplug ACPI events to the
>>> Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
>>> Sebastien to add the hardware-reduced support to Nemu using GED
>>> device[3]. (Please shout if I got the author/signed-off wrong for
>>> those patches or missed any names).
>>>
>>> This is sanity tested on a HiSilicon ARM64 platform and appreciate
>>> any further testing.
>>
>> Hi; this seems to fail 'make check' (on an x86 host):
>>
>> acpi-test: Warning! DSDT binary file mismatch. Actual
>> [aml:/tmp/aml-01P83Z], Expected [aml:tests/data/acpi/virt/DSDT].
>> acpi-test: Warning! DSDT mismatch. Actual [asl:/tmp/asl-4ZP83Z.dsl,
>> aml:/tmp/aml-01P83Z], Expected [asl:/tmp/asl-H7UE4Z.dsl,
>> aml:tests/data/acpi/virt/DSDT].
>> **
>> ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/tests/bios-tables-test.c:434:test_acpi_asl:
>> assertion failed: (all_tables_match)
> I fail to reproduce on my laptop:
> 
> make check-qtest-x86_64 executes
> 
>   TEST    check-qtest-x86_64: tests/bios-tables-test
> 
> and it does not seem to complain. But maybe I misunderstand the framework.
> 
> If I were able to reproduce I understand this is a matter to regenerate
> the files we compare with by using
> tests/data/acpi/rebuild-expected-aml.sh, right?

I reproduced the failure with a TCG aarch64 target on x86.
I sent a separate
"[PATCH] tests: Update DSDT ACPI table for arm/virt board with PCDIMM
related changes" patch that should fix the issue.

checkpatch complains with an "ERROR: Does not appear to be a
unified-diff format patch" but I checked similar patches like d2a1b1d602
("tests: update acpi expected files") produce the same so I hope it's fine.

Thanks

Eric

Thanks

Eric
> 
> Thanks
> 
> Eric
> 
> 
>> ERROR - Bail out!
>> ERROR:/home/petmay01/linaro/qemu-from-laptop/qemu/tests/bios-tables-test.c:434:test_acpi_asl:
>> assertion failed: (all_tables_match)
>> Aborted (core dumped)
>> /home/petmay01/linaro/qemu-from-laptop/qemu/tests/Makefile.include:894:
>> recipe for target 'check-qtest-aarch64' failed
>>
>> Is there a need to update the reference DSDT used by the test?
>>
>> thanks
>> -- PMM
>>
> 

Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Igor Mammedov 4 years, 9 months ago
On Tue, 25 Jun 2019 13:14:13 +0100
Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> wrote:

> This series is an attempt to provide device memory hotplug support 
> on ARM virt platform. This is based on Eric's recent works here[1]
> and carries some of the pc-dimm related patches dropped from his
> series.
> 
> The kernel support for arm64 memory hot add was added recently by
> Robin and hence the guest kernel should be => 5.0-rc1.
> 
> NVDIM support is not included currently as we still have an unresolved
> issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
> can be included, but not done for now, for keeping it simple.
> 
> This makes use of GED device to sent hotplug ACPI events to the
> Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
> Sebastien to add the hardware-reduced support to Nemu using GED
> device[3]. (Please shout if I got the author/signed-off wrong for
> those patches or missed any names).
> 
> This is sanity tested on a HiSilicon ARM64 platform and appreciate
> any further testing.

There are several things I'd fix/amend but it's nothing that couldn't
be done on top as bugfixes (I'll comment later on specific issues).

However as a whole from ACPI and memory hotplug POV series looks more
or less ready for merging.

I've asked Eric to test migration (I'm quite not sure about that part),
(CCed David)so on condition it works:

  Reviewed-by: Igor Mammedov <imammedo@redhat.com>


> Thanks,
> Shameer
> 
> [1] https://patchwork.kernel.org/cover/10837565/
> [2] https://patchwork.kernel.org/cover/10783589/
> [3] https://github.com/intel/nemu/blob/topic/virt-x86/hw/acpi/ged.c
> [4] http://lists.infradead.org/pipermail/linux-arm-kernel/2019-May/651763.html
> 
> v5 --> v6
> 
> -Addressed comments from Eric.
> -Added R-by from Eric and Igor.
> 
> v4 --> v5
> -Removed gsi/ged-irq routing in virt.
> -Added Migration support.
> -Dropped support for DT coldplug case based on the discussions
>  here[4]
> -Added system_powerdown support through GED.
> 
> v3 --> v4
> Addressed comments from Igor and Eric,
> -Renamed "virt-acpi" to "acpi-ged".
> -Changed ged device parent to TYPE_DEVICE.
> -Introduced DT memory node property "hotpluggable" to resolve device
>  memory being treated as early boot memory issue(patch #7).
> -Combined patches #3 and #9 from v3 into #3.
> 
> v2 --> v3
> 
> Addressed comments from Igor and Eric,
> -Made virt acpi device platform independent and moved
>  to hw/acpi/generic_event_device.c
> -Moved ged specific code into hw/acpi/generic_event_device.c
> -Introduced an opt-in feature "fdt" to resolve device-memory being
>  treated as early boot memory.
> -Dropped patch #1 from v2.
> 
> RFC --> v2
> 
> -Use GED device instead of GPIO for ACPI hotplug events.
> -Removed NVDIMM support for now.
> -Includes dropped patches from Eric's v9 series.
> 
> Eric Auger (1):
>   hw/arm/virt: Add memory hotplug framework
> 
> Samuel Ortiz (2):
>   hw/acpi: Do not create memory hotplug method when handler is not
>     defined
>   hw/acpi: Add ACPI Generic Event Device Support
> 
> Shameer Kolothum (5):
>   hw/acpi: Make ACPI IO address space configurable
>   hw/arm/virt: Enable device memory cold/hot plug with ACPI boot
>   hw/arm/virt-acpi-build: Add PC-DIMM in SRAT
>   hw/acpi: Add system power down support to GED
>   hw/arm: Use GED for system_powerdown event
> 
>  hw/acpi/Kconfig                        |   4 +
>  hw/acpi/Makefile.objs                  |   1 +
>  hw/acpi/generic_event_device.c         | 352 +++++++++++++++++++++++++
>  hw/acpi/memory_hotplug.c               |  35 +--
>  hw/arm/Kconfig                         |   4 +
>  hw/arm/virt-acpi-build.c               |  58 ++--
>  hw/arm/virt.c                          |  88 ++++++-
>  hw/i386/acpi-build.c                   |   3 +-
>  include/hw/acpi/generic_event_device.h | 106 ++++++++
>  include/hw/acpi/memory_hotplug.h       |   9 +-
>  include/hw/arm/virt.h                  |   3 +
>  11 files changed, 607 insertions(+), 56 deletions(-)
>  create mode 100644 hw/acpi/generic_event_device.c
>  create mode 100644 include/hw/acpi/generic_event_device.h
> 


Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Peter Maydell 4 years, 9 months ago
On Tue, 2 Jul 2019 at 12:07, Igor Mammedov <imammedo@redhat.com> wrote:
>
> On Tue, 25 Jun 2019 13:14:13 +0100
> Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> wrote:
>
> > This series is an attempt to provide device memory hotplug support
> > on ARM virt platform. This is based on Eric's recent works here[1]
> > and carries some of the pc-dimm related patches dropped from his
> > series.
> >
> > The kernel support for arm64 memory hot add was added recently by
> > Robin and hence the guest kernel should be => 5.0-rc1.
> >
> > NVDIM support is not included currently as we still have an unresolved
> > issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
> > can be included, but not done for now, for keeping it simple.
> >
> > This makes use of GED device to sent hotplug ACPI events to the
> > Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
> > Sebastien to add the hardware-reduced support to Nemu using GED
> > device[3]. (Please shout if I got the author/signed-off wrong for
> > those patches or missed any names).
> >
> > This is sanity tested on a HiSilicon ARM64 platform and appreciate
> > any further testing.
>
> There are several things I'd fix/amend but it's nothing that couldn't
> be done on top as bugfixes (I'll comment later on specific issues).
>
> However as a whole from ACPI and memory hotplug POV series looks more
> or less ready for merging.
>
> I've asked Eric to test migration (I'm quite not sure about that part),
> (CCed David)so on condition it works:
>
>   Reviewed-by: Igor Mammedov <imammedo@redhat.com>

If we want to get this into 4.1 I'll need somebody to do a respin
with all the relevant fixes pretty soon (ie within a day or two,
and that is pushing it because really it's missed the freeze
deadline already). It might be easier just to let it go into 4.2
instead...

thanks
-- PMM

Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Auger Eric 4 years, 9 months ago
Hi Peter,

On 7/2/19 1:46 PM, Peter Maydell wrote:
> On Tue, 2 Jul 2019 at 12:07, Igor Mammedov <imammedo@redhat.com> wrote:
>>
>> On Tue, 25 Jun 2019 13:14:13 +0100
>> Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> wrote:
>>
>>> This series is an attempt to provide device memory hotplug support
>>> on ARM virt platform. This is based on Eric's recent works here[1]
>>> and carries some of the pc-dimm related patches dropped from his
>>> series.
>>>
>>> The kernel support for arm64 memory hot add was added recently by
>>> Robin and hence the guest kernel should be => 5.0-rc1.
>>>
>>> NVDIM support is not included currently as we still have an unresolved
>>> issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
>>> can be included, but not done for now, for keeping it simple.
>>>
>>> This makes use of GED device to sent hotplug ACPI events to the
>>> Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
>>> Sebastien to add the hardware-reduced support to Nemu using GED
>>> device[3]. (Please shout if I got the author/signed-off wrong for
>>> those patches or missed any names).
>>>
>>> This is sanity tested on a HiSilicon ARM64 platform and appreciate
>>> any further testing.
>>
>> There are several things I'd fix/amend but it's nothing that couldn't
>> be done on top as bugfixes (I'll comment later on specific issues).
>>
>> However as a whole from ACPI and memory hotplug POV series looks more
>> or less ready for merging.
>>
>> I've asked Eric to test migration (I'm quite not sure about that part),
>> (CCed David)so on condition it works:
>>
>>   Reviewed-by: Igor Mammedov <imammedo@redhat.com>
> 
> If we want to get this into 4.1 I'll need somebody to do a respin
> with all the relevant fixes pretty soon (ie within a day or two,
> and that is pushing it because really it's missed the freeze
> deadline already). It might be easier just to let it go into 4.2
> instead...

OK so after those late attempts to get it in, I agree with you. If it
missed the deadline already then let's stick to the process and try to
get this just after 4.1.

I have just checked migration and it fails between a qemu 4.1 and qemu
4.0 with

"qemu-system-aarch64: Unknown savevm section or instance 'acpi-ged' 0.
Make sure that your current VM setup matches your saved VM setup,
including any hotplugged devices
qemu-system-aarch64: load of migration failed: Invalid argument"

so we would need to have a no_acpi_dev class field to avoid using the
GED device < 4.1 I think.

+ troubles with the DSDT ref files / bios-tables-test.c to be fixed.

Thanks

Eric
> 
> thanks
> -- PMM
> 

Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug support
Posted by Shameerali Kolothum Thodi 4 years, 9 months ago

> -----Original Message-----
> From: Auger Eric [mailto:eric.auger@redhat.com]
> Sent: 02 July 2019 13:00
> To: Peter Maydell <peter.maydell@linaro.org>; Igor Mammedov
> <imammedo@redhat.com>
> Cc: Shameerali Kolothum Thodi <shameerali.kolothum.thodi@huawei.com>;
> QEMU Developers <qemu-devel@nongnu.org>; qemu-arm
> <qemu-arm@nongnu.org>; Samuel Ortiz <sameo@linux.intel.com>; Ard
> Biesheuvel <ard.biesheuvel@linaro.org>; Linuxarm <linuxarm@huawei.com>;
> xuwei (O) <xuwei5@huawei.com>; Shannon Zhao
> <shannon.zhaosl@gmail.com>; sebastien.boeuf@intel.com; Laszlo Ersek
> <lersek@redhat.com>; Dr. David Alan Gilbert <dgilbert@redhat.com>
> Subject: Re: [Qemu-devel] [PATCH v6 0/8] ARM virt: ACPI memory hotplug
> support
> 
> Hi Peter,
> 
> On 7/2/19 1:46 PM, Peter Maydell wrote:
> > On Tue, 2 Jul 2019 at 12:07, Igor Mammedov <imammedo@redhat.com>
> wrote:
> >>
> >> On Tue, 25 Jun 2019 13:14:13 +0100
> >> Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> wrote:
> >>
> >>> This series is an attempt to provide device memory hotplug support
> >>> on ARM virt platform. This is based on Eric's recent works here[1]
> >>> and carries some of the pc-dimm related patches dropped from his
> >>> series.
> >>>
> >>> The kernel support for arm64 memory hot add was added recently by
> >>> Robin and hence the guest kernel should be => 5.0-rc1.
> >>>
> >>> NVDIM support is not included currently as we still have an unresolved
> >>> issue while hot adding NVDIMM[2]. However NVDIMM cold plug patches
> >>> can be included, but not done for now, for keeping it simple.
> >>>
> >>> This makes use of GED device to sent hotplug ACPI events to the
> >>> Guest. GED code is based on Nemu. Thanks to the efforts of Samuel and
> >>> Sebastien to add the hardware-reduced support to Nemu using GED
> >>> device[3]. (Please shout if I got the author/signed-off wrong for
> >>> those patches or missed any names).
> >>>
> >>> This is sanity tested on a HiSilicon ARM64 platform and appreciate
> >>> any further testing.
> >>
> >> There are several things I'd fix/amend but it's nothing that couldn't
> >> be done on top as bugfixes (I'll comment later on specific issues).
> >>
> >> However as a whole from ACPI and memory hotplug POV series looks more
> >> or less ready for merging.
> >>
> >> I've asked Eric to test migration (I'm quite not sure about that part),
> >> (CCed David)so on condition it works:
> >>
> >>   Reviewed-by: Igor Mammedov <imammedo@redhat.com>
> >
> > If we want to get this into 4.1 I'll need somebody to do a respin
> > with all the relevant fixes pretty soon (ie within a day or two,
> > and that is pushing it because really it's missed the freeze
> > deadline already). It might be easier just to let it go into 4.2
> > instead...
> 
> OK so after those late attempts to get it in, I agree with you. If it
> missed the deadline already then let's stick to the process and try to
> get this just after 4.1.
> 
> I have just checked migration and it fails between a qemu 4.1 and qemu
> 4.0 with

Thanks Eric for verifying that. I didn’t attempt migration test with different
versions.

> "qemu-system-aarch64: Unknown savevm section or instance 'acpi-ged' 0.
> Make sure that your current VM setup matches your saved VM setup,
> including any hotplugged devices
> qemu-system-aarch64: load of migration failed: Invalid argument"
> 
> so we would need to have a no_acpi_dev class field to avoid using the
> GED device < 4.1 I think.

Ok. 

> 
> + troubles with the DSDT ref files / bios-tables-test.c to be fixed.

I am on travel at the moment and not in a position to respin this quickly.
So as suggested above will target 4.2 if that’s fine.

Thanks,
Shameer

 
> Thanks
> 
> Eric
> >
> > thanks
> > -- PMM
> >