diff mbox series

[mickledore,04/15] glib-networking: Add test retry to avoid failures

Message ID 6282f64a6673bcd9b0a6cedfcb8cd3d1a6de1077.1684081748.git.steve@sakoman.com
State New
Headers show
Series [mickledore,01/15] waffle: upgrade 1.7.0 -> 1.7.2 | expand

Commit Message

Steve Sakoman May 14, 2023, 4:31 p.m. UTC
From: Richard Purdie <richard.purdie@linuxfoundation.org>

In autobuilder testing we regularly see glib-networking ptest fail with a
"Resource temporarily unavailable (g-io-error-quark, 27)" error.

Add a patch to see if a retry can resolve the issue.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4deb03ee5af8fcf7c2b1c81c686839341cf753c4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 .../glib-networking/eagain.patch              | 29 +++++++++++++++++++
 .../glib-networking/glib-networking_2.74.0.bb |  1 +
 2 files changed, 30 insertions(+)
 create mode 100644 meta/recipes-core/glib-networking/glib-networking/eagain.patch
diff mbox series

Patch

diff --git a/meta/recipes-core/glib-networking/glib-networking/eagain.patch b/meta/recipes-core/glib-networking/glib-networking/eagain.patch
new file mode 100644
index 0000000000..6dfbb2736c
--- /dev/null
+++ b/meta/recipes-core/glib-networking/glib-networking/eagain.patch
@@ -0,0 +1,29 @@ 
+In autobuilder testing we regularly see glib-networking ptest fail with:
+
+GLib-Net:ERROR:/usr/src/debug/glib-networking/2.74.0-r0/tls/tests/connection.c:1944:simul_read_thread: assertion failed (error == NULL): Resource temporarily unavailable (g-io-error-quark, 27)
+Bail out! GLib-Net:ERROR:/usr/src/debug/glib-networking/2.74.0-r0/tls/tests/connection.c:1944:simul_read_thread: assertion failed (error == NULL): Resource temporarily unavailable (g-io-error-quark, 27)
+FAIL: glib-networking/connection-openssl.test (Child process killed by signal 6)
+SUMMARY: total=4; passed=3; skipped=0; failed=1; user=0.9s; system=0.4s; maxrss=10708
+FAIL: glib-networking/connection-openssl.test (Child process killed by signal 6)
+
+The test should probably retry in this situation so test a patch which does this.
+
+Upstream-Status: Pending [testing to see if patch resolves the issue]
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Index: glib-networking-2.74.0/tls/tests/connection.c
+===================================================================
+--- glib-networking-2.74.0.orig/tls/tests/connection.c
++++ glib-networking-2.74.0/tls/tests/connection.c
+@@ -1941,6 +1941,10 @@ simul_read_thread (gpointer user_data)
+                                    test->buf + test->nread,
+                                    MIN (TEST_DATA_LENGTH / 2, TEST_DATA_LENGTH - test->nread),
+                                    NULL, &error);
++
++      if (error == G_IO_STATUS_AGAIN)
++          continue;
++
+       g_assert_no_error (error);
+ 
+       test->nread += nread;
diff --git a/meta/recipes-core/glib-networking/glib-networking_2.74.0.bb b/meta/recipes-core/glib-networking/glib-networking_2.74.0.bb
index dc0be23357..b3a88aca8d 100644
--- a/meta/recipes-core/glib-networking/glib-networking_2.74.0.bb
+++ b/meta/recipes-core/glib-networking/glib-networking_2.74.0.bb
@@ -24,6 +24,7 @@  GNOMEBASEBUILDCLASS = "meson"
 inherit gnomebase gettext upstream-version-is-even gio-module-cache ptest-gnome
 
 SRC_URI += "file://run-ptest"
+SRC_URI += "file://eagain.patch"
 
 FILES:${PN} += "\
                 ${libdir}/gio/modules/libgio*.so \