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 (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK))
+          continue;
+
       g_assert_no_error (error);
 
       test->nread += nread;
