On Wed, 02 Oct 2019 at 12:12:06 +0100, Simon McVittie wrote: > On Tue, 01 Oct 2019 at 23:07:13 +0100, Simon McVittie wrote: > > glib2.0 2.62.0-2 failed tests a couple of times on s390x, with a > > segmentation fault running gio/tests/mimeapps.c. > > This also happened on amd64
This can be reproduced by running the test in a loop: meson test --repeat=1000 --gdb -C ~/tmp/build/glib/debug -v mimeapps (This is in upstream GLib, not in a Debian package, if that matters. The equivalent build directory in the Debian package is debian/build/deb.) Looks like maybe a use-after-free, or a conflict between threads? Thread 2 (Thread 0x7ffff77cc700 (LWP 15468)): #0 __strrchr_avx2 () at ../sysdeps/x86_64/multiarch/strrchr-avx2.S:87 #1 0x00007ffff7ed3655 in g_path_get_dirname (file_name=0x3131313131313131 <error: Cannot access memory at address 0x3131313131313131>) at ../../../../../../home/smcv/src/glib/glib/gfileutils.c:2441 #2 0x00007ffff7cfd5db in desktop_file_dir_get_alternative_dir (dir=0x5555555859f0) at ../../../../../../home/smcv/src/glib/gio/gdesktopappinfo.c:193 #3 0x00007ffff7cfd694 in desktop_file_dir_changed (monitor=0x55555558b8b0, file=0x5555555838c0, other_file=0x0, event_type=G_FILE_MONITOR_EVENT_DELETED, user_data=0x5555555859f0) at ../../../../../../home/smcv/src/glib/gio/gdesktopappinfo.c:241 #4 0x00007ffff7ca973b in _g_cclosure_marshal_VOID__OBJECT_OBJECT_ENUMv (closure=0x55555557d930, return_value=0x0, instance=0x55555558b8b0, args=0x7ffff77cbac8, marshal_data=0x0, n_params=3, param_types=0x555555575b50) at ../../../../../../home/smcv/src/glib/gio/gmarshal-internal.c:1380 #5 0x00007ffff7e43354 in _g_closure_invoke_va (closure=0x55555557d930, return_value=0x0, instance=0x55555558b8b0, args=0x7ffff77cbac8, n_params=3, param_types=0x555555575b50) at ../../../../../../home/smcv/src/glib/gobject/gclosure.c:873 #6 0x00007ffff7e5f35d in g_signal_emit_valist (instance=0x55555558b8b0, signal_id=2, detail=0, var_args=0x7ffff77cbac8) at ../../../../../../home/smcv/src/glib/gobject/gsignal.c:3310 #7 0x00007ffff7e605a7 in g_signal_emit (instance=0x55555558b8b0, signal_id=2, detail=0) at ../../../../../../home/smcv/src/glib/gobject/gsignal.c:3457 #8 0x00007ffff7c964c0 in g_file_monitor_emit_event (monitor=0x55555558b8b0, child=0x5555555838c0, other_file=0x0, event_type=G_FILE_MONITOR_EVENT_DELETED) at ../../../../../../home/smcv/src/glib/gio/gfilemonitor.c:294 #9 0x00007ffff7d933d0 in g_file_monitor_source_dispatch (source=0x5555555803d0, callback=0x0, user_data=0x0) at ../../../../../../home/smcv/src/glib/gio/glocalfilemonitor.c:560 #10 0x00007ffff7ee99b8 in g_main_dispatch (context=0x5555555776f0) at ../../../../../../home/smcv/src/glib/glib/gmain.c:3180 #11 0x00007ffff7eea815 in g_main_context_dispatch (context=0x5555555776f0) at ../../../../../../home/smcv/src/glib/glib/gmain.c:3845 #12 0x00007ffff7eea9f9 in g_main_context_iterate (context=0x5555555776f0, block=1, dispatch=1, self=0x555555577800) at ../../../../../../home/smcv/src/glib/glib/gmain.c:3918 #13 0x00007ffff7eeaabd in g_main_context_iteration (context=0x5555555776f0, may_block=1) at ../../../../../../home/smcv/src/glib/glib/gmain.c:3979 #14 0x00007ffff7eec8b6 in glib_worker_main (data=0x0) at ../../../../../../home/smcv/src/glib/glib/gmain.c:5859 #15 0x00007ffff7f1c392 in g_thread_proxy (data=0x555555577800) at ../../../../../../home/smcv/src/glib/glib/gthread.c:805 #16 0x00007ffff7998fb7 in start_thread (arg=<optimized out>) at pthread_create.c:486 #17 0x00007ffff7b212ef in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 1 (Thread 0x7ffff77cdc80 (LWP 15464)): #0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 #1 0x00007ffff7f47a0b in g_mutex_lock_slowpath (mutex=0x7ffff7e2d300 <desktop_file_dir_lock>) at ../../../../../../home/smcv/src/glib/glib/gthread-posix.c:1340 #2 0x00007ffff7f47aaf in g_mutex_lock (mutex=0x7ffff7e2d300 <desktop_file_dir_lock>) at ../../../../../../home/smcv/src/glib/glib/gthread-posix.c:1364 #3 0x00007ffff7cff7ff in desktop_file_dirs_lock () at ../../../../../../home/smcv/src/glib/gio/gdesktopappinfo.c:1486 #4 0x00007ffff7d05123 in g_app_info_get_default_for_type (content_type=0x55555555a8c0 "image/bmp", must_support_uris=0) at ../../../../../../home/smcv/src/glib/gio/gdesktopappinfo.c:4310 #5 0x00005555555586b7 in test_mime_default_last_used (fixture=0x55555557de60, test_data=0x0) at ../../../../../../home/smcv/src/glib/gio/tests/mimeapps.c:510 #6 0x00007ffff7f18ffc in test_case_run (tc=0x55555556dac0) at ../../../../../../home/smcv/src/glib/glib/gtestutils.c:2633 #7 0x00007ffff7f193b8 in g_test_run_suite_internal (suite=0x55555556c860, path=0x0) at ../../../../../../home/smcv/src/glib/glib/gtestutils.c:2721 #8 0x00007ffff7f19461 in g_test_run_suite_internal (suite=0x55555556c840, path=0x0) at ../../../../../../home/smcv/src/glib/glib/gtestutils.c:2733 #9 0x00007ffff7f19461 in g_test_run_suite_internal (suite=0x55555556c820, path=0x0) at ../../../../../../home/smcv/src/glib/glib/gtestutils.c:2733 #10 0x00007ffff7f19678 in g_test_run_suite (suite=0x55555556c820) at ../../../../../../home/smcv/src/glib/glib/gtestutils.c:2808 #11 0x00007ffff7f18254 in g_test_run () at ../../../../../../home/smcv/src/glib/glib/gtestutils.c:2043 #12 0x00005555555594f2 in main (argc=1, argv=0x7fffffffddc8) at ../../../../../../home/smcv/src/glib/gio/tests/mimeapps.c:647

