From: Gavin Shan <gshan@redhat.com>
To: Igor Mammedov <imammedo@redhat.com>
Cc: qemu-arm@nongnu.org, qemu-devel@nongnu.org, lvivier@redhat.com,
eduardo@habkost.net, thuth@redhat.com, berrange@redhat.com,
shan.gavin@gmail.com, peter.maydell@linaro.org,
Jonathan.Cameron@Huawei.com, zhenyzha@redhat.com, mst@redhat.com,
armbru@redhat.com, ani@anisinha.ca, pbonzini@redhat.com,
drjones@redhat.com, eblake@redhat.com, f4bug@amsat.org,
wangyanan55@huawei.com
Subject: Re: [PATCH v8 2/5] qtest/numa-test: Specify CPU topology in aarch64_numa_cpu()
Date: Tue, 3 May 2022 21:47:04 +0800 [thread overview]
Message-ID: <dd218a15-8bbe-36ab-4297-db280343e348@redhat.com> (raw)
In-Reply-To: <20220503105408.60d9e07c@redhat.com>
Hi Igor,
On 5/3/22 4:54 PM, Igor Mammedov wrote:
> On Mon, 2 May 2022 18:07:00 +0800
> Gavin Shan <gshan@redhat.com> wrote:
>> On 5/2/22 4:52 PM, Igor Mammedov wrote:
>>> On Mon, 25 Apr 2022 11:27:59 +0800
>>> Gavin Shan <gshan@redhat.com> wrote:
>>>
>>>> The CPU topology isn't enabled on arm/virt machine yet, but we're
>>>> going to do it in next patch. After the CPU topology is enabled by
>>>> next patch, "thrad-id=1" becomes invalid because the CPU core is
>>> ^^^ typo
>>>
>>
>> hmm, my bad. Lets fix it in next revision.
>>
>>>> preferred on arm/virt machine. It means these two CPUs have 0/1
>>>> as their core IDs, but their thread IDs are all 0. It will trigger
>>>> test failure as the following message indicates:
>>>>
>>>> [14/21 qemu:qtest+qtest-aarch64 / qtest-aarch64/numa-test ERROR
>>>> 1.48s killed by signal 6 SIGABRT
>>>> >>> G_TEST_DBUS_DAEMON=/home/gavin/sandbox/qemu.main/tests/dbus-vmstate-daemon.sh \
>>>> QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon \
>>>> QTEST_QEMU_BINARY=./qemu-system-aarch64 \
>>>> QTEST_QEMU_IMG=./qemu-img MALLOC_PERTURB_=83 \
>>>> /home/gavin/sandbox/qemu.main/build/tests/qtest/numa-test --tap -k
>>>> ――――――――――――――――――――――――――――――――――――――――――――――
>>>> stderr:
>>>> qemu-system-aarch64: -numa cpu,node-id=0,thread-id=1: no match found
>>>>
>>>> This fixes the issue by providing comprehensive SMP configurations
>>>> in aarch64_numa_cpu(). The SMP configurations aren't used before
>>>> the CPU topology is enabled in next patch.
>>>>
>>>> Signed-off-by: Gavin Shan <gshan@redhat.com>
>>>> Reviewed-by: Yanan Wang <wangyanan55@huawei.com>
>>>> ---
>>>> tests/qtest/numa-test.c | 3 ++-
>>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/tests/qtest/numa-test.c b/tests/qtest/numa-test.c
>>>> index 90bf68a5b3..aeda8c774c 100644
>>>> --- a/tests/qtest/numa-test.c
>>>> +++ b/tests/qtest/numa-test.c
>>>> @@ -223,7 +223,8 @@ static void aarch64_numa_cpu(const void *data)
>>>> QTestState *qts;
>>>> g_autofree char *cli = NULL;
>>>>
>>>> - cli = make_cli(data, "-machine smp.cpus=2 "
>>>> + cli = make_cli(data, "-machine "
>>>> + "smp.cpus=2,smp.sockets=1,smp.clusters=1,smp.cores=1,smp.threads=2 "
>>>> "-numa node,nodeid=0,memdev=ram -numa node,nodeid=1 "
>>>> "-numa cpu,node-id=1,thread-id=0 "
>>> ^^^^
>>> make it sensible as well, i.e. socket/cluster/cores-ids ...
>>>
>>
>> Could you help if the following command lines are what you want? I don't
>> think we can do it. Without PATCH[v8 3/5] applied, {socket,cluster,core}-id
>> are invalid from arm/virt machine side and we will run into errors.
> you are right, you can only fix -numa after 3/5
>
> btw:
> splitting threads between several numa nodes here probably is unreal
> configuration. Should be fixed in follow up patches.
>
Lets fix it in PATCH[v9 4/6] with the following command lines. Besides,
socket/cluster/core/thread IDs should be checked when the NUMA IDs are
verified. It helps to check if the CPU topology is properly populated
at least.
v9 should be sent shortly after doing some tests. Please take a look.
-machine \
smp.cpus=2,smp.sockets=2,smp.clusters=1,smp.cores=1,smp.threads=1 \
-numa node,nodeid=0,memdev=ram -numa node,nodeid=1 \
-numa cpu,node-id=0,socket-id=1,cluster-id=0,core-id=0,thread-id=0 \
-numa cpu,node-id=1,socket-id=0,cluster-id=0,core-id=0,thread-id=0
[...]
Thanks,
Gavin
next prev parent reply other threads:[~2022-05-03 21:10 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-25 3:27 [PATCH v8 0/5] hw/arm/virt: Fix CPU's default NUMA node ID Gavin Shan
2022-04-25 3:27 ` [PATCH v8 1/5] qapi/machine.json: Add cluster-id Gavin Shan
2022-05-03 8:54 ` Igor Mammedov
2022-04-25 3:27 ` [PATCH v8 2/5] qtest/numa-test: Specify CPU topology in aarch64_numa_cpu() Gavin Shan
2022-05-02 8:52 ` Igor Mammedov
2022-05-02 10:07 ` Gavin Shan
2022-05-03 8:54 ` Igor Mammedov
2022-05-03 13:47 ` Gavin Shan [this message]
2022-04-25 3:28 ` [PATCH v8 3/5] hw/arm/virt: Consider SMP configuration in CPU topology Gavin Shan
2022-05-03 8:56 ` Igor Mammedov
2022-04-25 3:28 ` [PATCH v8 4/5] hw/arm/virt: Fix CPU's default NUMA node ID Gavin Shan
2022-04-25 3:28 ` [PATCH v8 5/5] hw/acpi/aml-build: Use existing CPU topology to build PPTT table Gavin Shan
2022-05-02 7:43 ` [PATCH v8 0/5] hw/arm/virt: Fix CPU's default NUMA node ID Gavin Shan
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=dd218a15-8bbe-36ab-4297-db280343e348@redhat.com \
--to=gshan@redhat.com \
--cc=Jonathan.Cameron@Huawei.com \
--cc=ani@anisinha.ca \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=drjones@redhat.com \
--cc=eblake@redhat.com \
--cc=eduardo@habkost.net \
--cc=f4bug@amsat.org \
--cc=imammedo@redhat.com \
--cc=lvivier@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=shan.gavin@gmail.com \
--cc=thuth@redhat.com \
--cc=wangyanan55@huawei.com \
--cc=zhenyzha@redhat.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).