SIGSEGV during backup via gvfs-dav
Since today, I am getting a reproducible crash when doing a backup via gvfs-dav, which seems to originate in libsoup
. My guess is that this is an issue in the library itself, but feel free to point me to gvfs-dav
, if this doesn't belong here. :)
Description
After some time during a computer backup (restic in deja-dup on a webdav share), gvfs-dav crashes reproducibly with a SIGSEGV (apparently always on the same file) and the backtrace from the core dump originates in libsoup
(see below).
Before exiting, gvfs-dav
logs a warning from libsoup
about unreachable code. This warning was removed a few days ago, however, so when compiling libsoup
from master this warning is no longer logged, and the application just crashes immediately.
Backtrace
#0 on_data_source_read_callback
(session=<optimized out>, stream_id=<optimized out>, buf=0x560f25d918aa "\\\016l>B\337\024\370\305\r{\335/\221B\336v/\352\322!\372\025~\240$p\213\270\025e\236C\314\005I$\363G<j\317\020ׯ\327*\353\221^\252\nH-\030Q\033W|7\331@\211\356\035\024\330 ", length=16384, data_flags=0x7ffedbd8e380, source=0x560f25e278a0, user_data=0x560f25f0a430) at ../libsoup/libsoup/http2/soup-client-message-io-http2.c:1049
#1 0x00007fdcad5cefce in () at /usr/lib/libnghttp2.so.14
#2 0x00007fdcad5d03be in nghttp2_session_mem_send () at /usr/lib/libnghttp2.so.14
#3 0x00007fdcadd62da2 in io_write (io=0x560f25f0a430, blocking=0, cancellable=0x0, error=0x7ffedbd8e420) at ../libsoup/libsoup/http2/soup-client-message-io-http2.c:309
#4 0x00007fdcadd65ebf in io_try_write (io=io@entry=0x560f25f0a430, blocking=blocking@entry=0) at ../libsoup/libsoup/http2/soup-client-message-io-http2.c:369
#5 0x00007fdcadd65f3a in io_read (io=0x560f25f0a430, blocking=0, cancellable=0x0, error=0x7ffedbd90490) at ../libsoup/libsoup/http2/soup-client-message-io-http2.c:397
#6 0x00007fdcadd6610f in io_read_ready (stream=<optimized out>, io=0x560f25f0a430) at ../libsoup/libsoup/http2/soup-client-message-io-http2.c:437
#7 0x00007fdcade1e81b in g_main_dispatch (context=0x560f259dedd0) at ../glib/glib/gmain.c:3444
#8 g_main_context_dispatch (context=0x560f259dedd0) at ../glib/glib/gmain.c:4162
#9 0x00007fdcade74ec9 in g_main_context_iterate.constprop.0 (context=0x560f259dedd0, block=1, dispatch=1, self=<optimized out>) at ../glib/glib/gmain.c:4238
#10 0x00007fdcade1dd7f in g_main_loop_run (loop=0x560f259bc650) at ../glib/glib/gmain.c:4438
#11 0x0000560f25045abf in daemon_main
(argc=argc@entry=4, argv=argv@entry=0x7ffedbd908a8, max_job_threads=max_job_threads@entry=1, default_type=default_type@entry=0x560f25050732 "dav", mountable_name=mountable_name@entry=0x0, first_type_name=first_type_name@entry=0x560f25050732 "dav") at ../gvfs/daemon/daemon-main.c:398
#12 0x0000560f2504208e in main (argc=4, argv=0x7ffedbd908a8) at ../gvfs/daemon/daemon-main-generic.c:45
The libsoup messages from gvfsd can be found here: gvfsd.log
Software
OS: Arch Linux
libsoup: 3.2.0
as well as 3.2.0+r5+gd86d3464-1
(libsoup3-git from AUR)
Let me know if you need anything else from me!