g_assert (!io->close_task) fails in soup_client_message_io_http2_close_async
I first thought this was #313, but it's actually different. I've hit this network process crash four times in the past 24 hours:
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0)
at pthread_kill.c:44
#1 0x00007fc78aa911f3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
#2 0x00007fc78aa3f00e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x00007fc78aa287fc in __GI_abort () at abort.c:79
#4 0x00007fc7870fae3e in g_assertion_message
(domain=<optimized out>, file=0x7fc7874f60f8 "../libsoup/http2/soup-client-message-io-http2.c", line=<optimized out>, func=<optimized out>, message=<optimized out>) at ../glib/gtestutils.c:3450
#5 0x00007fc787164dc7 in g_assertion_message_expr
(domain=domain@entry=0x7fc7874f6497 "libsoup-http2", file=file@entry=0x7fc7874f60f8 "../libsoup/http2/soup-client-message-io-http2.c", line=line@entry=1791, func=func@entry=0x7fc7874f6aa0 <__func__.15> "soup_client_message_io_http2_close_async", expr=expr@entry=0x7fc7874f668f "!io->close_task") at ../glib/gtestutils.c:3476
#6 0x00007fc7874ba535 in soup_client_message_io_http2_close_async
(iface=0x55cdf7e92020, conn=0x55cdf7c37e90 [SoupConnection], callback=0x7fc7874d1d50 <client_message_io_closed_cb>) at ../libsoup/http2/soup-client-message-io-http2.c:1791
#7 0x00007fc7874d2ed2 in soup_connection_disconnect (conn=0x55cdf7c37e90 [SoupConnection],
conn@entry=<error reading variable: value has been optimized out>) at ../libsoup/soup-connection.c:1040
#8 0x00007fc7874d2efd in idle_timeout (conn=<error reading variable: value has been optimized out>)
at ../libsoup/soup-connection.c:393
#9 0x00007fc787138a4f in g_timeout_dispatch
(source=0x55cdf7c66cb0, callback=<optimized out>, user_data=<optimized out>) at ../glib/gmain.c:5054
#10 0x00007fc787137d49 in g_main_dispatch (context=<optimized out>) at ../glib/gmain.c:3460
#11 g_main_context_dispatch (context=<optimized out>) at ../glib/gmain.c:4200
#12 0x00007fc7871382a8 in g_main_context_iterate
(context=0x55cdf7820920, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
at ../glib/gmain.c:4276
#13 0x00007fc78713858f in g_main_loop_run (loop=0x55cdf7820a60) at ../glib/gmain.c:4479
#14 0x00007fc78a489456 in WTF::RunLoop::run() ()
at /buildstream/gnome/sdk/webkitgtk-6.0.bst/Source/WTF/wtf/glib/RunLoopGLib.cpp:108
#15 0x00007fc78b82b8a8 in WebKit::AuxiliaryProcessMainBase<WebKit::NetworkProcess, false>::run(int, char**)
(this=0x7ffc9894b160, argc=<optimized out>, argv=0x7ffc9894b2f8)
at /buildstream/gnome/sdk/webkitgtk-6.0.bst/Source/WebKit/Shared/AuxiliaryProcessMain.h:72
#16 WebKit::AuxiliaryProcessMain<WebKit::NetworkProcessMainSoup>(int, char**)
(argc=<optimized out>, argv=0x7ffc9894b2f8)
at /buildstream/gnome/sdk/webkitgtk-6.0.bst/Source/WebKit/Shared/AuxiliaryProcessMain.h:98
#17 0x00007fc78aa2954a in __libc_start_call_main
(main=main@entry=0x55cdf6eb8150 <main>, argc=argc@entry=3, argv=argv@entry=0x7ffc9894b2f8)
at ../sysdeps/nptl/libc_start_call_main.h:58
#18 0x00007fc78aa2960b in __libc_start_main_impl
(main=0x55cdf6eb8150 <main>, argc=3, argv=0x7ffc9894b2f8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=<optimized out>) at ../csu/libc-start.c:389
#19 0x000055cdf6eb8085 in _start ()
It's this assert in soup_client_message_io_http2_close_async(): g_assert (!io->close_task);
This is using the GNOME master runtime, which currently has libsoup commit b9f4f036