On Wed, 23 Aug 2017 21:35:29 +0800 Dou Liyang <douly.f...@cn.fujitsu.com> wrote:
> Hi Igor, > > At 08/23/2017 08:45 PM, Igor Mammedov wrote: > > On Wed, 23 Aug 2017 20:12:51 +0800 > > Dou Liyang <douly.f...@cn.fujitsu.com> wrote: > > > >> Hi Igor, > >> > >> At 08/23/2017 04:40 PM, Igor Mammedov wrote: > >>> On Tue, 22 Aug 2017 11:24:10 +0800 > >>> Dou Liyang <douly.f...@cn.fujitsu.com> wrote: > >>> > >>>> As QEMU supports the memory-less node, it is possible that there is > >>>> no RAM in the first numa node(also be called as node0). eg: > >>>> ... \ > >>>> -m 128,slots=3,maxmem=1G \ > >>>> -numa node -numa node,mem=128M \ > >>>> > >>>> But, this makes it hard for QEMU to build a known-to-work ACPI SRAT > >>>> table. Only fixing it is not enough. > >>>> > >>>> Add a testcase for this situation to make sure the ACPI table is > >>>> correct for guest. > >>>> > >>>> Suggested-by: Eduardo Habkost <ehabk...@redhat.com> > >>>> Signed-off-by: Dou Liyang <douly.f...@cn.fujitsu.com> > >>>> --- > >>>> tests/acpi-test-data/pc/DSDT.numamem | Bin 0 -> 6463 bytes > >>>> tests/acpi-test-data/pc/SLIT.numamem | Bin 0 -> 48 bytes > >>>> tests/acpi-test-data/pc/SRAT.numamem | Bin 0 -> 264 bytes > >>>> tests/acpi-test-data/q35/DSDT.numamem | Bin 0 -> 9147 bytes > >>>> tests/acpi-test-data/q35/SLIT.numamem | Bin 0 -> 48 bytes > >>>> tests/acpi-test-data/q35/SRAT.numamem | Bin 0 -> 264 bytes > >>>> tests/bios-tables-test.c | 30 > >>>> ++++++++++++++++++++++++++++++ > >>>> 7 files changed, 30 insertions(+) > >>>> create mode 100644 tests/acpi-test-data/pc/DSDT.numamem > >>>> create mode 100644 tests/acpi-test-data/pc/SLIT.numamem > >>>> create mode 100644 tests/acpi-test-data/pc/SRAT.numamem > >>>> create mode 100644 tests/acpi-test-data/q35/DSDT.numamem > >>>> create mode 100644 tests/acpi-test-data/q35/SLIT.numamem > >>>> create mode 100644 tests/acpi-test-data/q35/SRAT.numamem > >>> > >>> > >>> considering only SRAT table has been changed and the other > >>> tables match with default blobs, I'd suggest to keep only > >> > >> > >> Our testcase is: > >> > >> + test_acpi_one(" -m 128,slots=3,maxmem=1G" > >> + " -numa node -numa node,mem=128" > >> + " -numa dist,src=0,dst=1,val=21", > >> + &data); > >> > >> The DSDT and SLIT don't match with default blobs. > > do you actually need SLIT table /i.e. -numa dist/ for test at all? > > it looks not relevant for the test case at the hand, > > I'd suggest to drop '-numa dist' option for the test. > > > > OK, Got it, will drop '-numa dist' option in next version. > > >> > >> So, they can't be dropped. > > > > I wonder what's changed, could you post DSDT diff here? > > > > Just like memory hot-plug cases, when we use the '-m 128 > 128,slots=3,maxmem=1G' option, As the ACPI spec said, There may be some > Memory Device in the DSDT table. for your case '-numa node -numa node,mem=128', there is no need in enabling memory hotplug. If I recall it correctly the default memory for x86 is 128Mb, hence removing "-m" would probably make DSDT match default one. [...]