All of lore.kernel.org
 help / color / mirror / Atom feed
* [PULL 0/7] qtest and misc patches
@ 2023-09-25  9:00 Thomas Huth
  2023-09-25  9:00 ` [PULL 1/7] meson.build: Make keyutils independent from keyring Thomas Huth
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:00 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

 Hi Stefan!

The following changes since commit b55e4b9c0525560577384adfc6d30eb0daa8d7be:

  Merge tag 'pull-trivial-patches' of https://gitlab.com/mjt0k/qemu into staging (2023-09-21 09:32:47 -0400)

are available in the Git repository at:

  https://gitlab.com/thuth/qemu.git tags/pull-request-2023-09-25

for you to fetch changes up to b821109583a035a17fa5b89c0ebd8917d09cc82d:

  tests/avocado: fix waiting for vm shutdown in replay_linux (2023-09-25 08:02:23 +0200)

----------------------------------------------------------------
* Make keyutils independent from keyring in meson.build
* Simplify the NIC init code of the jazz machine a little bit
* Minor qtest and avocado fixes

----------------------------------------------------------------
Pavel Dovgalyuk (1):
      tests/avocado: fix waiting for vm shutdown in replay_linux

Philippe Mathieu-Daudé (1):
      tests/qtest/netdev-socket: Do not test multicast on Darwin

Stefan Hajnoczi (1):
      tests/qtest/netdev-socket: Raise connection timeout to 120 seconds

Thomas Huth (4):
      meson.build: Make keyutils independent from keyring
      tests/qtest/m48t59-test: Silence compiler warning with -Wshadow
      hw/mips/jazz: Move the NIC init code into a separate function
      hw/mips/jazz: Simplify the NIC setup code

 meson.build                   |  6 ++--
 hw/mips/jazz.c                | 81 +++++++++++++++++++++----------------------
 tests/qtest/m48t59-test.c     | 12 +++----
 tests/qtest/netdev-socket.c   |  8 +++--
 meson_options.txt             |  2 ++
 scripts/meson-buildoptions.sh |  3 ++
 tests/avocado/replay_linux.py |  2 +-
 7 files changed, 60 insertions(+), 54 deletions(-)



^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PULL 1/7] meson.build: Make keyutils independent from keyring
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
@ 2023-09-25  9:00 ` Thomas Huth
  2023-09-25  9:00 ` [PULL 2/7] tests/qtest/netdev-socket: Raise connection timeout to 120 seconds Thomas Huth
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:00 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

Commit 0db0fbb5cf ("Add conditional dependency for libkeyutils")
tried to provide a possibility for the user to disable keyutils
if not required by makeing it depend on the keyring feature. This
looked reasonable at a first glance (the unit test in tests/unit/
needs both), but the condition in meson.build fails if the feature
is meant to be detected automatically, and there is also another
spot in backends/meson.build where keyutils is used independently
from keyring. So let's remove the dependency on keyring again and
introduce a proper meson build option instead.

Cc: qemu-stable@nongnu.org
Fixes: 0db0fbb5cf ("Add conditional dependency for libkeyutils")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1842
Message-ID: <20230824094208.255279-1-thuth@redhat.com>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 meson.build                   | 6 ++++--
 meson_options.txt             | 2 ++
 scripts/meson-buildoptions.sh | 3 +++
 3 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/meson.build b/meson.build
index f426861d90..5139db2ff7 100644
--- a/meson.build
+++ b/meson.build
@@ -1763,8 +1763,9 @@ if gnutls.found()
                      method: 'pkg-config')
 endif
 keyutils = not_found
-if get_option('keyring').enabled()
-  keyutils = dependency('libkeyutils', required: false, method: 'pkg-config')
+if not get_option('libkeyutils').auto() or have_block
+  keyutils = dependency('libkeyutils', required: get_option('libkeyutils'),
+                        method: 'pkg-config')
 endif
 
 has_gettid = cc.has_function('gettid')
@@ -4229,6 +4230,7 @@ endif
 summary_info += {'AF_ALG support':    have_afalg}
 summary_info += {'rng-none':          get_option('rng_none')}
 summary_info += {'Linux keyring':     have_keyring}
+summary_info += {'Linux keyutils':    keyutils}
 summary(summary_info, bool_yn: true, section: 'Crypto')
 
 # UI
diff --git a/meson_options.txt b/meson_options.txt
index 2ca40f22e9..57e265c871 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -121,6 +121,8 @@ option('avx512bw', type: 'feature', value: 'auto',
        description: 'AVX512BW optimizations')
 option('keyring', type: 'feature', value: 'auto',
        description: 'Linux keyring support')
+option('libkeyutils', type: 'feature', value: 'auto',
+       description: 'Linux keyutils support')
 
 option('af_xdp', type : 'feature', value : 'auto',
        description: 'AF_XDP network backend support')
diff --git a/scripts/meson-buildoptions.sh b/scripts/meson-buildoptions.sh
index 230119346a..e4b46d5715 100644
--- a/scripts/meson-buildoptions.sh
+++ b/scripts/meson-buildoptions.sh
@@ -122,6 +122,7 @@ meson_options_help() {
   printf "%s\n" '  libdaxctl       libdaxctl support'
   printf "%s\n" '  libdw           debuginfo support'
   printf "%s\n" '  libiscsi        libiscsi userspace initiator'
+  printf "%s\n" '  libkeyutils     Linux keyutils support'
   printf "%s\n" '  libnfs          libnfs block device driver'
   printf "%s\n" '  libpmem         libpmem support'
   printf "%s\n" '  libssh          ssh block device support'
@@ -345,6 +346,8 @@ _meson_option_parse() {
     --libexecdir=*) quote_sh "-Dlibexecdir=$2" ;;
     --enable-libiscsi) printf "%s" -Dlibiscsi=enabled ;;
     --disable-libiscsi) printf "%s" -Dlibiscsi=disabled ;;
+    --enable-libkeyutils) printf "%s" -Dlibkeyutils=enabled ;;
+    --disable-libkeyutils) printf "%s" -Dlibkeyutils=disabled ;;
     --enable-libnfs) printf "%s" -Dlibnfs=enabled ;;
     --disable-libnfs) printf "%s" -Dlibnfs=disabled ;;
     --enable-libpmem) printf "%s" -Dlibpmem=enabled ;;
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PULL 2/7] tests/qtest/netdev-socket: Raise connection timeout to 120 seconds
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
  2023-09-25  9:00 ` [PULL 1/7] meson.build: Make keyutils independent from keyring Thomas Huth
@ 2023-09-25  9:00 ` Thomas Huth
  2023-09-25  9:00 ` [PULL 3/7] tests/qtest/m48t59-test: Silence compiler warning with -Wshadow Thomas Huth
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:00 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

From: Stefan Hajnoczi <stefanha@redhat.com>

The test still fails intermittently with a 60 second timeout in the
GitLab CI environment. Raise the timeout to 120 seconds.

  576/839 ERROR:../tests/qtest/netdev-socket.c:293:test_stream_unix:
   assertion failed (resp == expect):
   ("st0: index=0,type=stream,connection error\r\n" == "st0: index=0,type=stream,unix:/tmp/netdev-socket.UW5IA2/stream_unix\r\n") ERROR
  576/839 qemu:qtest+qtest-sh4 / qtest-sh4/netdev-socket
                              ERROR          62.85s   killed by signal 6 SIGABRT
  >>> MALLOC_PERTURB_=249 QTEST_QEMU_BINARY=./qemu-system-sh4
   QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
   G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/-LCfcJ2T/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
   QTEST_QEMU_IMG=./qemu-img /home/gitlab-runner/builds/-LCfcJ2T/0/qemu-project/qemu/build/tests/qtest/netdev-socket --tap -k
  ――――――――――――――――――――――――――――――――――――― ✀  ―――――――――――――――――――――――――――――――――――――
  stderr:
  **
  ERROR:../tests/qtest/netdev-socket.c:293:test_stream_unix: assertion failed (resp == expect): ("st0: index=0,type=stream,connection error\r\n" == "st0: index=0,type=stream,unix:/tmp/netdev-socket.UW5IA2/stream_unix\r\n")
  (test program exited with status code -6)

Buglink: https://gitlab.com/qemu-project/qemu/-/issues/1881
Fixes: 417296c8d858 ("tests/qtest/netdev-socket: Raise connection timeout to 60 seconds")
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Laurent Vivier <lvivier@redhat.com>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Message-ID: <20230912133310.60583-1-stefanha@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/netdev-socket.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/qtest/netdev-socket.c b/tests/qtest/netdev-socket.c
index 8eed54801f..b2501d72a1 100644
--- a/tests/qtest/netdev-socket.c
+++ b/tests/qtest/netdev-socket.c
@@ -16,7 +16,7 @@
 #include "qapi/qobject-input-visitor.h"
 #include "qapi/qapi-visit-sockets.h"
 
-#define CONNECTION_TIMEOUT    60
+#define CONNECTION_TIMEOUT    120
 
 #define EXPECT_STATE(q, e, t)                             \
 do {                                                      \
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PULL 3/7] tests/qtest/m48t59-test: Silence compiler warning with -Wshadow
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
  2023-09-25  9:00 ` [PULL 1/7] meson.build: Make keyutils independent from keyring Thomas Huth
  2023-09-25  9:00 ` [PULL 2/7] tests/qtest/netdev-socket: Raise connection timeout to 120 seconds Thomas Huth
@ 2023-09-25  9:00 ` Thomas Huth
  2023-09-25  9:00 ` [PULL 4/7] tests/qtest/netdev-socket: Do not test multicast on Darwin Thomas Huth
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:00 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

When compiling this file with -Wshadow=local , we get:

../tests/qtest/m48t59-test.c: In function ‘bcd_check_time’:
../tests/qtest/m48t59-test.c:195:17: warning: declaration of ‘s’
 shadows a previous local [-Wshadow=local]
  195 |         long t, s;
      |                 ^
../tests/qtest/m48t59-test.c:158:17: note: shadowed declaration is here
  158 |     QTestState *s = m48t59_qtest_start();
      |                 ^

Rename the QTestState variable to "qts" which is the common
naming for such a variable in other tests.

Reported-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20230922163742.149444-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/m48t59-test.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/tests/qtest/m48t59-test.c b/tests/qtest/m48t59-test.c
index 843d2ced8e..9487faff1a 100644
--- a/tests/qtest/m48t59-test.c
+++ b/tests/qtest/m48t59-test.c
@@ -155,7 +155,7 @@ static void bcd_check_time(void)
     struct tm *datep;
     time_t ts;
     const int wiggle = 2;
-    QTestState *s = m48t59_qtest_start();
+    QTestState *qts = m48t59_qtest_start();
 
     /*
      * This check assumes a few things.  First, we cannot guarantee that we get
@@ -173,10 +173,10 @@ static void bcd_check_time(void)
     ts = time(NULL);
     gmtime_r(&ts, &start);
 
-    cmos_get_date_time(s, &date[0]);
-    cmos_get_date_time(s, &date[1]);
-    cmos_get_date_time(s, &date[2]);
-    cmos_get_date_time(s, &date[3]);
+    cmos_get_date_time(qts, &date[0]);
+    cmos_get_date_time(qts, &date[1]);
+    cmos_get_date_time(qts, &date[2]);
+    cmos_get_date_time(qts, &date[3]);
 
     ts = time(NULL);
     gmtime_r(&ts, &end);
@@ -207,7 +207,7 @@ static void bcd_check_time(void)
         g_assert_cmpint(ABS(t - s), <=, wiggle);
     }
 
-    qtest_quit(s);
+    qtest_quit(qts);
 }
 
 /* success if no crash or abort */
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PULL 4/7] tests/qtest/netdev-socket: Do not test multicast on Darwin
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
                   ` (2 preceding siblings ...)
  2023-09-25  9:00 ` [PULL 3/7] tests/qtest/m48t59-test: Silence compiler warning with -Wshadow Thomas Huth
@ 2023-09-25  9:00 ` Thomas Huth
  2023-09-25  9:00 ` [PULL 5/7] hw/mips/jazz: Move the NIC init code into a separate function Thomas Huth
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:00 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

From: Philippe Mathieu-Daudé <philmd@linaro.org>

Do not run this test on Darwin, otherwise we get:

  qemu-system-arm: -netdev dgram,id=st0,remote.type=inet,remote.host=230.0.0.1,remote.port=1234:
   can't add socket to multicast group 230.0.0.1: Can't assign requested address
  Broken pipe
  ../../tests/qtest/libqtest.c:191: kill_qemu() tried to terminate QEMU
   process but encountered exit status 1 (expected 0)
  Abort trap: 6

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20230918062549.2363-1-philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/netdev-socket.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tests/qtest/netdev-socket.c b/tests/qtest/netdev-socket.c
index b2501d72a1..7ba1eff120 100644
--- a/tests/qtest/netdev-socket.c
+++ b/tests/qtest/netdev-socket.c
@@ -401,7 +401,7 @@ static void test_dgram_inet(void)
     qtest_quit(qts0);
 }
 
-#ifndef _WIN32
+#if !defined(_WIN32) && !defined(CONFIG_DARWIN)
 static void test_dgram_mcast(void)
 {
     QTestState *qts;
@@ -414,7 +414,9 @@ static void test_dgram_mcast(void)
 
     qtest_quit(qts);
 }
+#endif
 
+#ifndef _WIN32
 static void test_dgram_unix(void)
 {
     QTestState *qts0, *qts1;
@@ -511,7 +513,7 @@ int main(int argc, char **argv)
     if (has_ipv4) {
         qtest_add_func("/netdev/stream/inet/ipv4", test_stream_inet_ipv4);
         qtest_add_func("/netdev/dgram/inet", test_dgram_inet);
-#ifndef _WIN32
+#if !defined(_WIN32) && !defined(CONFIG_DARWIN)
         qtest_add_func("/netdev/dgram/mcast", test_dgram_mcast);
 #endif
     }
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PULL 5/7] hw/mips/jazz: Move the NIC init code into a separate function
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
                   ` (3 preceding siblings ...)
  2023-09-25  9:00 ` [PULL 4/7] tests/qtest/netdev-socket: Do not test multicast on Darwin Thomas Huth
@ 2023-09-25  9:00 ` Thomas Huth
  2023-09-25  9:00 ` [PULL 6/7] hw/mips/jazz: Simplify the NIC setup code Thomas Huth
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:00 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

The mips_jazz_init() function is already quite big, so moving
away some code here can help to make it more understandable.
Additionally, by moving this code into a separate function, the
next patch (that will refactor the for-loop around the NIC init
code) will be much shorter and easier to understand.

Message-ID: <20230913160922.355640-2-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/mips/jazz.c | 62 ++++++++++++++++++++++++++++----------------------
 1 file changed, 35 insertions(+), 27 deletions(-)

diff --git a/hw/mips/jazz.c b/hw/mips/jazz.c
index 0081dcf921..829c9248e5 100644
--- a/hw/mips/jazz.c
+++ b/hw/mips/jazz.c
@@ -114,6 +114,40 @@ static const MemoryRegionOps dma_dummy_ops = {
     .endianness = DEVICE_NATIVE_ENDIAN,
 };
 
+static void mips_jazz_init_net(NICInfo *nd, IOMMUMemoryRegion *rc4030_dma_mr,
+                               DeviceState *rc4030, MemoryRegion *dp8393x_prom)
+{
+    DeviceState *dev;
+    SysBusDevice *sysbus;
+    int checksum, i;
+    uint8_t *prom;
+
+    qemu_check_nic_model(nd, "dp83932");
+
+    dev = qdev_new("dp8393x");
+    qdev_set_nic_properties(dev, nd);
+    qdev_prop_set_uint8(dev, "it_shift", 2);
+    qdev_prop_set_bit(dev, "big_endian", TARGET_BIG_ENDIAN);
+    object_property_set_link(OBJECT(dev), "dma_mr",
+                             OBJECT(rc4030_dma_mr), &error_abort);
+    sysbus = SYS_BUS_DEVICE(dev);
+    sysbus_realize_and_unref(sysbus, &error_fatal);
+    sysbus_mmio_map(sysbus, 0, 0x80001000);
+    sysbus_connect_irq(sysbus, 0, qdev_get_gpio_in(rc4030, 4));
+
+    /* Add MAC address with valid checksum to PROM */
+    prom = memory_region_get_ram_ptr(dp8393x_prom);
+    checksum = 0;
+    for (i = 0; i < 6; i++) {
+        prom[i] = nd->macaddr.a[i];
+        checksum += prom[i];
+        if (checksum > 0xff) {
+            checksum = (checksum + 1) & 0xff;
+        }
+    }
+    prom[7] = 0xff - checksum;
+}
+
 #define MAGNUM_BIOS_SIZE_MAX 0x7e000
 #define MAGNUM_BIOS_SIZE                                                       \
         (BIOS_SIZE < MAGNUM_BIOS_SIZE_MAX ? BIOS_SIZE : MAGNUM_BIOS_SIZE_MAX)
@@ -287,33 +321,7 @@ static void mips_jazz_init(MachineState *machine,
             nd->model = g_strdup("dp83932");
         }
         if (strcmp(nd->model, "dp83932") == 0) {
-            int checksum, i;
-            uint8_t *prom;
-
-            qemu_check_nic_model(nd, "dp83932");
-
-            dev = qdev_new("dp8393x");
-            qdev_set_nic_properties(dev, nd);
-            qdev_prop_set_uint8(dev, "it_shift", 2);
-            qdev_prop_set_bit(dev, "big_endian", TARGET_BIG_ENDIAN);
-            object_property_set_link(OBJECT(dev), "dma_mr",
-                                     OBJECT(rc4030_dma_mr), &error_abort);
-            sysbus = SYS_BUS_DEVICE(dev);
-            sysbus_realize_and_unref(sysbus, &error_fatal);
-            sysbus_mmio_map(sysbus, 0, 0x80001000);
-            sysbus_connect_irq(sysbus, 0, qdev_get_gpio_in(rc4030, 4));
-
-            /* Add MAC address with valid checksum to PROM */
-            prom = memory_region_get_ram_ptr(dp8393x_prom);
-            checksum = 0;
-            for (i = 0; i < 6; i++) {
-                prom[i] = nd->macaddr.a[i];
-                checksum += prom[i];
-                if (checksum > 0xff) {
-                    checksum = (checksum + 1) & 0xff;
-                }
-            }
-            prom[7] = 0xff - checksum;
+            mips_jazz_init_net(nd, rc4030_dma_mr, rc4030, dp8393x_prom);
             break;
         } else if (is_help_option(nd->model)) {
             error_report("Supported NICs: dp83932");
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PULL 6/7] hw/mips/jazz: Simplify the NIC setup code
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
                   ` (4 preceding siblings ...)
  2023-09-25  9:00 ` [PULL 5/7] hw/mips/jazz: Move the NIC init code into a separate function Thomas Huth
@ 2023-09-25  9:00 ` Thomas Huth
  2023-09-25  9:01 ` [PULL 7/7] tests/avocado: fix waiting for vm shutdown in replay_linux Thomas Huth
  2023-09-25 15:36 ` [PULL 0/7] qtest and misc patches Stefan Hajnoczi
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:00 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

The for-loop does not make much sense here - it is always left after
the first iteration, so we can also check for nb_nics == 1 instead
which is way easier to understand.

Also, the checks for nd->model are superfluous since the code in
mips_jazz_init_net() calls qemu_check_nic_model() that already
takes care of this (i.e. initializing nd->model if it has not been
set yet, and checking whether it is the "help" option or the
supported NIC model).

Message-ID: <20230913160922.355640-3-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/mips/jazz.c | 21 +++++----------------
 1 file changed, 5 insertions(+), 16 deletions(-)

diff --git a/hw/mips/jazz.c b/hw/mips/jazz.c
index 829c9248e5..c32d2b0b0a 100644
--- a/hw/mips/jazz.c
+++ b/hw/mips/jazz.c
@@ -172,7 +172,6 @@ static void mips_jazz_init(MachineState *machine,
     MemoryRegion *rtc = g_new(MemoryRegion, 1);
     MemoryRegion *dma_dummy = g_new(MemoryRegion, 1);
     MemoryRegion *dp8393x_prom = g_new(MemoryRegion, 1);
-    NICInfo *nd;
     DeviceState *dev, *rc4030;
     MMIOKBDState *i8042;
     SysBusDevice *sysbus;
@@ -315,21 +314,11 @@ static void mips_jazz_init(MachineState *machine,
     }
 
     /* Network controller */
-    for (n = 0; n < nb_nics; n++) {
-        nd = &nd_table[n];
-        if (!nd->model) {
-            nd->model = g_strdup("dp83932");
-        }
-        if (strcmp(nd->model, "dp83932") == 0) {
-            mips_jazz_init_net(nd, rc4030_dma_mr, rc4030, dp8393x_prom);
-            break;
-        } else if (is_help_option(nd->model)) {
-            error_report("Supported NICs: dp83932");
-            exit(1);
-        } else {
-            error_report("Unsupported NIC: %s", nd->model);
-            exit(1);
-        }
+    if (nb_nics == 1) {
+        mips_jazz_init_net(&nd_table[0], rc4030_dma_mr, rc4030, dp8393x_prom);
+    } else if (nb_nics > 1) {
+        error_report("This machine only supports one NIC");
+        exit(1);
     }
 
     /* SCSI adapter */
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PULL 7/7] tests/avocado: fix waiting for vm shutdown in replay_linux
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
                   ` (5 preceding siblings ...)
  2023-09-25  9:00 ` [PULL 6/7] hw/mips/jazz: Simplify the NIC setup code Thomas Huth
@ 2023-09-25  9:01 ` Thomas Huth
  2023-09-25 15:36 ` [PULL 0/7] qtest and misc patches Stefan Hajnoczi
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2023-09-25  9:01 UTC (permalink / raw)
  To: qemu-devel, Stefan Hajnoczi

From: Pavel Dovgalyuk <pavel.dovgalyuk@ispras.ru>

This patch fixes the race condition in waiting for shutdown
of the replay linux test.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
Suggested-by: John Snow <jsnow@redhat.com>
Message-ID: <20230811070608.3383343-4-pavel.dovgalyuk@ispras.ru>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/avocado/replay_linux.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/avocado/replay_linux.py b/tests/avocado/replay_linux.py
index a76dd507fc..270ccc1eae 100644
--- a/tests/avocado/replay_linux.py
+++ b/tests/avocado/replay_linux.py
@@ -93,7 +93,7 @@ def launch_and_wait(self, record, args, shift):
                 % os.path.getsize(replay_path))
         else:
             vm.event_wait('SHUTDOWN', self.timeout)
-            vm.shutdown(True)
+            vm.wait()
             logger.info('successfully fihished the replay')
         elapsed = time.time() - start_time
         logger.info('elapsed time %.2f sec' % elapsed)
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PULL 0/7] qtest and misc patches
  2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
                   ` (6 preceding siblings ...)
  2023-09-25  9:01 ` [PULL 7/7] tests/avocado: fix waiting for vm shutdown in replay_linux Thomas Huth
@ 2023-09-25 15:36 ` Stefan Hajnoczi
  7 siblings, 0 replies; 9+ messages in thread
From: Stefan Hajnoczi @ 2023-09-25 15:36 UTC (permalink / raw)
  To: Thomas Huth; +Cc: qemu-devel, Stefan Hajnoczi

[-- Attachment #1: Type: text/plain, Size: 115 bytes --]

Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/8.2 for any user-visible changes.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-09-25 15:37 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-25  9:00 [PULL 0/7] qtest and misc patches Thomas Huth
2023-09-25  9:00 ` [PULL 1/7] meson.build: Make keyutils independent from keyring Thomas Huth
2023-09-25  9:00 ` [PULL 2/7] tests/qtest/netdev-socket: Raise connection timeout to 120 seconds Thomas Huth
2023-09-25  9:00 ` [PULL 3/7] tests/qtest/m48t59-test: Silence compiler warning with -Wshadow Thomas Huth
2023-09-25  9:00 ` [PULL 4/7] tests/qtest/netdev-socket: Do not test multicast on Darwin Thomas Huth
2023-09-25  9:00 ` [PULL 5/7] hw/mips/jazz: Move the NIC init code into a separate function Thomas Huth
2023-09-25  9:00 ` [PULL 6/7] hw/mips/jazz: Simplify the NIC setup code Thomas Huth
2023-09-25  9:01 ` [PULL 7/7] tests/avocado: fix waiting for vm shutdown in replay_linux Thomas Huth
2023-09-25 15:36 ` [PULL 0/7] qtest and misc patches Stefan Hajnoczi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.