[PATCH] numa: Skip invalidation of cluster and NUMA node boundary for qtest

Gavin Shan posted 1 patch 9 months, 2 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230721104437.1199866-1-gshan@redhat.com
Maintainers: Eduardo Habkost <eduardo@habkost.net>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Yanan Wang <wangyanan55@huawei.com>
hw/core/machine.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] numa: Skip invalidation of cluster and NUMA node boundary for qtest
Posted by Gavin Shan 9 months, 2 weeks ago
There are warning messages printed from tests/qtest/numa-test.c,
to complain the CPU cluster and NUMA node boundary is broken. Since
the broken boundary is expected, we don't want to see the warning
messages.

  # cd /home/gavin/sandbox/qemu.main/build
  # MALLOC_PERTURB_=255 QTEST_QEMU_BINARY=./qemu-system-aarch64           \
    G_TEST_DBUS_DAEMON=../tests/dbus-vmstate-daemon.sh                    \
    QTEST_QEMU_IMG=./qemu-img                                             \
    QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon \
    tests/qtest/numa-test --tap -k
      :
    qemu-system-aarch64: warning: CPU-0 and CPU-4 in socket-0-cluster-0   \
    have been associated with node-0 and node-1 respectively.             \
    It can cause OSes like Linux to misbehave
      :

Skip the invalidation of CPU cluster and NUMA node boundary when
qtest is enabled, to avoid the warning messages.

Fixes: a494fdb715 ("numa: Validate cluster and NUMA node boundary if required")
Signed-off-by: Gavin Shan <gshan@redhat.com>
---
 hw/core/machine.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/core/machine.c b/hw/core/machine.c
index f0d35c6401..1c5136e735 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -1271,7 +1271,7 @@ static void validate_cpu_cluster_to_numa_boundary(MachineState *ms)
     const CPUArchId *cpus = possible_cpus->cpus;
     int i, j;
 
-    if (state->num_nodes <= 1 || possible_cpus->len <= 1) {
+    if (qtest_enabled() || state->num_nodes <= 1 || possible_cpus->len <= 1) {
         return;
     }
 
-- 
2.41.0
Re: [PATCH] numa: Skip invalidation of cluster and NUMA node boundary for qtest
Posted by Peter Maydell 9 months, 2 weeks ago
On Fri, 21 Jul 2023 at 11:44, Gavin Shan <gshan@redhat.com> wrote:
>
> There are warning messages printed from tests/qtest/numa-test.c,
> to complain the CPU cluster and NUMA node boundary is broken. Since
> the broken boundary is expected, we don't want to see the warning
> messages.
>
>   # cd /home/gavin/sandbox/qemu.main/build
>   # MALLOC_PERTURB_=255 QTEST_QEMU_BINARY=./qemu-system-aarch64           \
>     G_TEST_DBUS_DAEMON=../tests/dbus-vmstate-daemon.sh                    \
>     QTEST_QEMU_IMG=./qemu-img                                             \
>     QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon \
>     tests/qtest/numa-test --tap -k
>       :
>     qemu-system-aarch64: warning: CPU-0 and CPU-4 in socket-0-cluster-0   \
>     have been associated with node-0 and node-1 respectively.             \
>     It can cause OSes like Linux to misbehave
>       :
>
> Skip the invalidation of CPU cluster and NUMA node boundary when
> qtest is enabled, to avoid the warning messages.
>
> Fixes: a494fdb715 ("numa: Validate cluster and NUMA node boundary if required")
> Signed-off-by: Gavin Shan <gshan@redhat.com>

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

thanks
-- PMM
Re: [PATCH] numa: Skip invalidation of cluster and NUMA node boundary for qtest
Posted by Peter Maydell 3 months, 3 weeks ago
On Fri, 21 Jul 2023 at 12:29, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Fri, 21 Jul 2023 at 11:44, Gavin Shan <gshan@redhat.com> wrote:
> >
> > There are warning messages printed from tests/qtest/numa-test.c,
> > to complain the CPU cluster and NUMA node boundary is broken. Since
> > the broken boundary is expected, we don't want to see the warning
> > messages.
> >
> >   # cd /home/gavin/sandbox/qemu.main/build
> >   # MALLOC_PERTURB_=255 QTEST_QEMU_BINARY=./qemu-system-aarch64           \
> >     G_TEST_DBUS_DAEMON=../tests/dbus-vmstate-daemon.sh                    \
> >     QTEST_QEMU_IMG=./qemu-img                                             \
> >     QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon \
> >     tests/qtest/numa-test --tap -k
> >       :
> >     qemu-system-aarch64: warning: CPU-0 and CPU-4 in socket-0-cluster-0   \
> >     have been associated with node-0 and node-1 respectively.             \
> >     It can cause OSes like Linux to misbehave
> >       :
> >
> > Skip the invalidation of CPU cluster and NUMA node boundary when
> > qtest is enabled, to avoid the warning messages.
> >
> > Fixes: a494fdb715 ("numa: Validate cluster and NUMA node boundary if required")
> > Signed-off-by: Gavin Shan <gshan@redhat.com>
>
> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

Looks like this got lost last year. I'm going to pick it up and
apply it since the warnings it suppresses are still in the
test output.

thanks
-- PMM