[Qemu-devel] [PATCH v3] vhost-user: disable the *broken* subprocess tests

Philippe Mathieu-Daudé posted 1 patch 6 years, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170905180602.28698-1-f4bug@amsat.org
Test checkpatch passed
Test docker passed
Test s390x passed
tests/vhost-user-test.c | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
[Qemu-devel] [PATCH v3] vhost-user: disable the *broken* subprocess tests
Posted by Philippe Mathieu-Daudé 6 years, 6 months ago
tests/vhost-user-test keeps failing on build-system since Aug 15:

  ERROR:tests/vhost-user-test.c:835:test_flags_mismatch: child process (/i386/vhost-user/flags-mismatch/subprocess [4836]) failed unexpectedly
...
  ERROR:tests/vhost-user-test.c:807:test_connect_fail: child process (/x86_64/vhost-user/connect-fail/subprocess [58910]) failed unexpectedly

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Suggested-by: Daniel P. Berrange <berrange@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
v3: only disable tests using glib subprocess,
    migrate/multiqueue/guest-mem are still tested.

v2: remove unuseful warning

 tests/vhost-user-test.c | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c
index d4da09f147..4b98018478 100644
--- a/tests/vhost-user-test.c
+++ b/tests/vhost-user-test.c
@@ -31,6 +31,8 @@
 #include <linux/virtio_net.h>
 #include <sys/vfs.h>
 
+#define VHOST_USER_NET_TESTS_WORKING 0 /* broken as of 2.10.0 */
+
 /* GLIB version compatibility flags */
 #if !GLIB_CHECK_VERSION(2, 26, 0)
 #define G_TIME_SPAN_SECOND              (G_GINT64_CONSTANT(1000000))
@@ -472,11 +474,6 @@ static void test_server_listen(TestServer *server)
     test_server_create_chr(server, ",server,nowait");
 }
 
-static inline void test_server_connect(TestServer *server)
-{
-    test_server_create_chr(server, ",reconnect=1");
-}
-
 #define GET_QEMU_CMD(s)                                         \
     g_strdup_printf(QEMU_CMD, 512, 512, (root), (s)->chr_name,  \
                     (s)->socket_path, "", (s)->chr_name)
@@ -722,7 +719,12 @@ static void wait_for_rings_started(TestServer *s, size_t count)
     g_mutex_unlock(&s->data_mutex);
 }
 
-#ifdef CONFIG_HAS_GLIB_SUBPROCESS_TESTS
+#if VHOST_USER_NET_TESTS_WORKING && defined(CONFIG_HAS_GLIB_SUBPROCESS_TESTS)
+static inline void test_server_connect(TestServer *server)
+{
+    test_server_create_chr(server, ",reconnect=1");
+}
+
 static gboolean
 reconnect_cb(gpointer user_data)
 {
@@ -962,7 +964,8 @@ int main(int argc, char **argv)
     qtest_add_data_func("/vhost-user/read-guest-mem", server, read_guest_mem);
     qtest_add_func("/vhost-user/migrate", test_migrate);
     qtest_add_func("/vhost-user/multiqueue", test_multiqueue);
-#ifdef CONFIG_HAS_GLIB_SUBPROCESS_TESTS
+
+#if VHOST_USER_NET_TESTS_WORKING && defined(CONFIG_HAS_GLIB_SUBPROCESS_TESTS)
     qtest_add_func("/vhost-user/reconnect/subprocess",
                    test_reconnect_subprocess);
     qtest_add_func("/vhost-user/reconnect", test_reconnect);
-- 
2.14.1


Re: [Qemu-devel] [PATCH v3] vhost-user: disable the *broken* subprocess tests
Posted by Philippe Mathieu-Daudé 6 years, 6 months ago
not vhost-user-test, but this still failed:

ERROR:tests/rcutorture.c:388:gtest_stress: assertion failed (n_mberror 
== 0): (1 == 0)
GTester: last random seed: R02S8905ef6a0d8ed82670297d559c40e919
make: *** [check-tests/rcutorture] Error 1

CONFIG="--enable-debug --enable-debug-tcg --enable-trace-backends=log"

https://travis-ci.org/philmd/qemu/jobs/272168998

On 09/05/2017 03:06 PM, Philippe Mathieu-Daudé wrote:
> tests/vhost-user-test keeps failing on build-system since Aug 15:
> 
>    ERROR:tests/vhost-user-test.c:835:test_flags_mismatch: child process (/i386/vhost-user/flags-mismatch/subprocess [4836]) failed unexpectedly
> ...
>    ERROR:tests/vhost-user-test.c:807:test_connect_fail: child process (/x86_64/vhost-user/connect-fail/subprocess [58910]) failed unexpectedly
> 
> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> Suggested-by: Daniel P. Berrange <berrange@redhat.com>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> v3: only disable tests using glib subprocess,
>      migrate/multiqueue/guest-mem are still tested.
> 
> v2: remove unuseful warning
> 
>   tests/vhost-user-test.c | 17 ++++++++++-------
>   1 file changed, 10 insertions(+), 7 deletions(-)
> 
> diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c
> index d4da09f147..4b98018478 100644
> --- a/tests/vhost-user-test.c
> +++ b/tests/vhost-user-test.c
> @@ -31,6 +31,8 @@
>   #include <linux/virtio_net.h>
>   #include <sys/vfs.h>
>   
> +#define VHOST_USER_NET_TESTS_WORKING 0 /* broken as of 2.10.0 */
> +
>   /* GLIB version compatibility flags */
>   #if !GLIB_CHECK_VERSION(2, 26, 0)
>   #define G_TIME_SPAN_SECOND              (G_GINT64_CONSTANT(1000000))
> @@ -472,11 +474,6 @@ static void test_server_listen(TestServer *server)
>       test_server_create_chr(server, ",server,nowait");
>   }
>   
> -static inline void test_server_connect(TestServer *server)
> -{
> -    test_server_create_chr(server, ",reconnect=1");
> -}
> -
>   #define GET_QEMU_CMD(s)                                         \
>       g_strdup_printf(QEMU_CMD, 512, 512, (root), (s)->chr_name,  \
>                       (s)->socket_path, "", (s)->chr_name)
> @@ -722,7 +719,12 @@ static void wait_for_rings_started(TestServer *s, size_t count)
>       g_mutex_unlock(&s->data_mutex);
>   }
>   
> -#ifdef CONFIG_HAS_GLIB_SUBPROCESS_TESTS
> +#if VHOST_USER_NET_TESTS_WORKING && defined(CONFIG_HAS_GLIB_SUBPROCESS_TESTS)
> +static inline void test_server_connect(TestServer *server)
> +{
> +    test_server_create_chr(server, ",reconnect=1");
> +}
> +
>   static gboolean
>   reconnect_cb(gpointer user_data)
>   {
> @@ -962,7 +964,8 @@ int main(int argc, char **argv)
>       qtest_add_data_func("/vhost-user/read-guest-mem", server, read_guest_mem);
>       qtest_add_func("/vhost-user/migrate", test_migrate);
>       qtest_add_func("/vhost-user/multiqueue", test_multiqueue);
> -#ifdef CONFIG_HAS_GLIB_SUBPROCESS_TESTS
> +
> +#if VHOST_USER_NET_TESTS_WORKING && defined(CONFIG_HAS_GLIB_SUBPROCESS_TESTS)
>       qtest_add_func("/vhost-user/reconnect/subprocess",
>                      test_reconnect_subprocess);
>       qtest_add_func("/vhost-user/reconnect", test_reconnect);
> 

Re: [Qemu-devel] [PATCH v3] vhost-user: disable the *broken* subprocess tests
Posted by Marc-André Lureau 6 years, 6 months ago
Hi

On Tue, Sep 5, 2017 at 9:41 PM Philippe Mathieu-Daudé <f4bug@amsat.org>
wrote:

> not vhost-user-test, but this still failed:
>
> ERROR:tests/rcutorture.c:388:gtest_stress: assertion failed (n_mberror
> == 0): (1 == 0)
> GTester: last random seed: R02S8905ef6a0d8ed82670297d559c40e919
> make: *** [check-tests/rcutorture] Error 1
>
> CONFIG="--enable-debug --enable-debug-tcg --enable-trace-backends=log"
>
> https://travis-ci.org/philmd/qemu/jobs/272168998
>
> On 09/05/2017 03:06 PM, Philippe Mathieu-Daudé wrote:
> > tests/vhost-user-test keeps failing on build-system since Aug 15:
> >
> >    ERROR:tests/vhost-user-test.c:835:test_flags_mismatch: child process
> (/i386/vhost-user/flags-mismatch/subprocess [4836]) failed unexpectedly
> > ...
> >    ERROR:tests/vhost-user-test.c:807:test_connect_fail: child process
> (/x86_64/vhost-user/connect-fail/subprocess [58910]) failed unexpectedly
> >
> > Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> > Suggested-by: Daniel P. Berrange <berrange@redhat.com>
> > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> > ---
> > v3: only disable tests using glib subprocess,
> >      migrate/multiqueue/guest-mem are still tested.
> >
> > v2: remove unuseful warning
> >
> >   tests/vhost-user-test.c | 17 ++++++++++-------
> >   1 file changed, 10 insertions(+), 7 deletions(-)
> >
> > diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c
> > index d4da09f147..4b98018478 100644
> > --- a/tests/vhost-user-test.c
> > +++ b/tests/vhost-user-test.c
> > @@ -31,6 +31,8 @@
> >   #include <linux/virtio_net.h>
> >   #include <sys/vfs.h>
> >
> > +#define VHOST_USER_NET_TESTS_WORKING 0 /* broken as of 2.10.0 */
>

Not so, at least I can't reproduce locally yet.

If it's only reproducible on travis for now, shouldn't the failing tests be
disabled if getenv("TRAVIS") instead?

> +
> >   /* GLIB version compatibility flags */
> >   #if !GLIB_CHECK_VERSION(2, 26, 0)
> >   #define G_TIME_SPAN_SECOND              (G_GINT64_CONSTANT(1000000))
> > @@ -472,11 +474,6 @@ static void test_server_listen(TestServer *server)
> >       test_server_create_chr(server, ",server,nowait");
> >   }
> >
> > -static inline void test_server_connect(TestServer *server)
> > -{
> > -    test_server_create_chr(server, ",reconnect=1");
> > -}
> > -
> >   #define GET_QEMU_CMD(s)                                         \
> >       g_strdup_printf(QEMU_CMD, 512, 512, (root), (s)->chr_name,  \
> >                       (s)->socket_path, "", (s)->chr_name)
> > @@ -722,7 +719,12 @@ static void wait_for_rings_started(TestServer *s,
> size_t count)
> >       g_mutex_unlock(&s->data_mutex);
> >   }
> >
> > -#ifdef CONFIG_HAS_GLIB_SUBPROCESS_TESTS
> > +#if VHOST_USER_NET_TESTS_WORKING &&
> defined(CONFIG_HAS_GLIB_SUBPROCESS_TESTS)
> > +static inline void test_server_connect(TestServer *server)
> > +{
> > +    test_server_create_chr(server, ",reconnect=1");
> > +}
> > +
> >   static gboolean
> >   reconnect_cb(gpointer user_data)
> >   {
> > @@ -962,7 +964,8 @@ int main(int argc, char **argv)
> >       qtest_add_data_func("/vhost-user/read-guest-mem", server,
> read_guest_mem);
> >       qtest_add_func("/vhost-user/migrate", test_migrate);
> >       qtest_add_func("/vhost-user/multiqueue", test_multiqueue);
> > -#ifdef CONFIG_HAS_GLIB_SUBPROCESS_TESTS
> > +
> > +#if VHOST_USER_NET_TESTS_WORKING &&
> defined(CONFIG_HAS_GLIB_SUBPROCESS_TESTS)
> >       qtest_add_func("/vhost-user/reconnect/subprocess",
> >                      test_reconnect_subprocess);
> >       qtest_add_func("/vhost-user/reconnect", test_reconnect);
> >
>
> --
Marc-André Lureau
Re: [Qemu-devel] [PATCH v3] vhost-user: disable the *broken* subprocess tests
Posted by Philippe Mathieu-Daudé 6 years, 6 months ago
>     not vhost-user-test, but this still failed:
> 
>     ERROR:tests/rcutorture.c:388:gtest_stress: assertion failed (n_mberror
>     == 0): (1 == 0)
>     GTester: last random seed: R02S8905ef6a0d8ed82670297d559c40e919
>     make: *** [check-tests/rcutorture] Error 1
> 
>     CONFIG="--enable-debug --enable-debug-tcg --enable-trace-backends=log"
> 
>     https://travis-ci.org/philmd/qemu/jobs/272168998
> 
[...]
> 
> Not so, at least I can't reproduce locally yet.
> 
> If it's only reproducible on travis for now, shouldn't the failing tests 
> be disabled if getenv("TRAVIS") instead?

I restarted the Travis job and it succeeded so this seems to be another 
problem, not the vhost-user-test one :)

https://travis-ci.org/philmd/qemu/builds/272168994

Re: [Qemu-devel] [PATCH v3] vhost-user: disable the *broken* subprocess tests
Posted by Peter Maydell 6 years, 6 months ago
On 5 September 2017 at 19:06, Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
> tests/vhost-user-test keeps failing on build-system since Aug 15:
>
>   ERROR:tests/vhost-user-test.c:835:test_flags_mismatch: child process (/i386/vhost-user/flags-mismatch/subprocess [4836]) failed unexpectedly
> ...
>   ERROR:tests/vhost-user-test.c:807:test_connect_fail: child process (/x86_64/vhost-user/connect-fail/subprocess [58910]) failed unexpectedly
>
> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> Suggested-by: Daniel P. Berrange <berrange@redhat.com>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> v3: only disable tests using glib subprocess,
>     migrate/multiqueue/guest-mem are still tested.
>
> v2: remove unuseful warning

Applied, thanks.

-- PMM