Segfault when trying to search on a NFS share
Steps to reproduce
- Navigate to a NFSv4 mount (either mounted via fstab at boot or later mounted manually)
- Enter any subfolder and click search on title bar
- Type in a few characters
Reproducible in:
-
3.30.2
with glib2.58.0
- Flatpak unstable: not attempted
- Not reproducible:
3.30.1
same glib version
Current behavior
Crash with segmentation fault.
Expected behavior
Search thru the directory and give results of files and folders matching the query
Additional information
During step 3, after the first character was typed in, nautilus produced following message in system log:
('Handling file: ', 'file:///mnt/nfs/media/src/linux')
('file scheme: ', 'file')
('Handling file: ', 'file:///mnt/nfs/media/src/linux/LICENSES')
('file scheme: ', 'file')
('Handling file: ', 'file:///mnt/nfs/media/src/linux/LICENSES/other')
('file scheme: ', 'file')
sys:1: Warning: invalid uninstantiatable type '(null)' in cast to 'NautilusSearchProvider'
** (nautilus:37485): CRITICAL **: 00:25:53.873: nautilus_search_provider_start: assertion 'NAUTILUS_IS_SEARCH_PROVIDER (provider)' failed
Continuing to type into search bar results in this output followed by segfault:
('Handling file: ', 'file:///mnt/nfs/media/src/linux/LICENSES/exceptions')
('file scheme: ', 'file')
sys:1: Warning: invalid cast from 'GtkActionMuxer' to 'NautilusSearchProvider'
** (nautilus:37485): CRITICAL **: 00:25:57.126: nautilus_search_provider_stop: assertion 'NAUTILUS_IS_SEARCH_PROVIDER (provider)' failed
Stacktrace from gdb:
PID: 37485 (nautilus)
UID: 1000 (cth451)
GID: 1001 (cth451)
Signal: 11 (SEGV)
Timestamp: Fri 2018-10-19 00:25:57 CDT (5min ago)
Command Line: nautilus
Executable: /usr/bin/nautilus
Control Group: /user.slice/user-1000.slice/user@1000.service/dbus.service
Unit: user@1000.service
User Unit: dbus.service
Slice: user-1000.slice
Owner UID: 1000 (cth451)
Boot ID: (unrelated)
Machine ID: (unrelated)
Hostname: cth-desktop-dorm
Storage: /var/lib/systemd/coredump/core.nautilus.1000.cb86911ecd7f430092d22b92ce09a641.37485.1539926757000000.lz4
Message: Process 37485 (nautilus) of user 1000 dumped core.
Stack trace of thread 37485:
#0 0x00007f2dc1dfb8d2 g_type_check_instance_cast (libgobject-2.0.so.0)
#1 0x000055c578cfc7ff nautilus_search_engine_set_query (nautilus)
#2 0x000055c578d02c68 start_search (nautilus)
#3 0x000055c578cffae4 search_callback_invoke_and_destroy (nautilus)
#4 0x000055c578d0b16f load_directory.lto_priv.409 (nautilus)
#5 0x000055c578cdae40 query_editor_changed_callback (nautilus)
#6 0x00007f2dc08242d2 ffi_call_unix64 (libffi.so.6)
#7 0x00007f2dc082104c ffi_call (libffi.so.6)
#8 0x00007f2dc1ddc8e9 g_cclosure_marshal_generic (libgobject-2.0.so.0)
#9 0x00007f2dc1dd3d05 g_closure_invoke (libgobject-2.0.so.0)
#10 0x00007f2dc1de7239 signal_emit_unlocked_R (libgobject-2.0.so.0)
#11 0x00007f2dc1deb85d g_signal_emit_valist (libgobject-2.0.so.0)
#12 0x00007f2dc1dec9df g_signal_emit (libgobject-2.0.so.0)
#13 0x00007f2dc1debcbb g_signal_emit_valist (libgobject-2.0.so.0)
#14 0x00007f2dc1dec9df g_signal_emit (libgobject-2.0.so.0)
#15 0x00007f2dc232f43a gtk_search_entry_changed_timeout_cb (libgtk-3.so.0)
#16 0x00007f2dc2a77c23 g_timeout_dispatch (/usr/lib/libglib-2.0.so.0.5800.0)
#17 0x00007f2dc2a78f6e g_main_context_dispatch (/usr/lib/libglib-2.0.so.0.5800.0)
#18 0x00007f2dc2a7ad58 g_main_context_iterate.isra.39 (/usr/lib/libglib-2.0.so.0.5800.0)
#19 0x00007f2dc2a7ad9c g_main_context_iteration (/usr/lib/libglib-2.0.so.0.5800.0)
#20 0x00007f2dc1ee51cd g_application_run (libgio-2.0.so.0)
#21 0x000055c578cb3dfe main (nautilus)
#22 0x00007f2dc149b567 __libc_start_main (libc.so.6)
#23 0x000055c578cb3e4a _start (nautilus)
Stack trace of thread 37486:
#0 0x00007f2dc15846e9 __poll (libc.so.6)
#1 0x00007f2dc2a7acc1 g_main_context_iterate.isra.39 (/usr/lib/libglib-2.0.so.0.5800.0)
#2 0x00007f2dc2a7ad9c g_main_context_iteration (/usr/lib/libglib-2.0.so.0.5800.0)
#3 0x00007f2dc2a7ade1 glib_worker_main (/usr/lib/libglib-2.0.so.0.5800.0)
#4 0x00007f2dc2a62a95 g_thread_proxy (/usr/lib/libglib-2.0.so.0.5800.0)
#5 0x00007f2dc183665a start_thread (libpthread.so.0)
#6 0x00007f2dc158f73f __clone (libc.so.6)
Stack trace of thread 37576:
#0 0x00007f2dc158b2a9 syscall (libc.so.6)
#1 0x00007f2dc2a957dc g_cond_wait_until (/usr/lib/libglib-2.0.so.0.5800.0)
#2 0x00007f2dc2a2cc01 g_async_queue_pop_intern_unlocked (/usr/lib/libglib-2.0.so.0.5800.0)
#3 0x00007f2dc2a2cdf1 g_async_queue_timeout_pop (/usr/lib/libglib-2.0.so.0.5800.0)
#4 0x00007f2dc2a5c63e g_thread_pool_thread_proxy (/usr/lib/libglib-2.0.so.0.5800.0)
#5 0x00007f2dc2a62a95 g_thread_proxy (/usr/lib/libglib-2.0.so.0.5800.0)
#6 0x00007f2dc183665a start_thread (libpthread.so.0)
#7 0x00007f2dc158f73f __clone (libc.so.6)
Stack trace of thread 37487:
#0 0x00007f2dc15846e9 __poll (libc.so.6)
#1 0x00007f2dc2a7acc1 g_main_context_iterate.isra.39 (/usr/lib/libglib-2.0.so.0.5800.0)
#2 0x00007f2dc2a7bca2 g_main_loop_run (/usr/lib/libglib-2.0.so.0.5800.0)
#3 0x00007f2dc1ea9936 gdbus_shared_thread_func.lto_priv.293 (libgio-2.0.so.0)
#4 0x00007f2dc2a62a95 g_thread_proxy (/usr/lib/libglib-2.0.so.0.5800.0)
#5 0x00007f2dc183665a start_thread (libpthread.so.0)
#6 0x00007f2dc158f73f __clone (libc.so.6)
Stack trace of thread 37489:
#0 0x00007f2dc158b2a9 syscall (libc.so.6)
#1 0x00007f2dc2a94faf g_cond_wait (/usr/lib/libglib-2.0.so.0.5800.0)
#2 0x00007f2dc2a2cc1b g_async_queue_pop_intern_unlocked (/usr/lib/libglib-2.0.so.0.5800.0)
#3 0x00007f2dc2a5c5d5 g_thread_pool_thread_proxy (/usr/lib/libglib-2.0.so.0.5800.0)
#4 0x00007f2dc2a62a95 g_thread_proxy (/usr/lib/libglib-2.0.so.0.5800.0)
#5 0x00007f2dc183665a start_thread (libpthread.so.0)
#6 0x00007f2dc158f73f __clone (libc.so.6)
Stack trace of thread 37490:
#0 0x00007f2dc15846e9 __poll (libc.so.6)
#1 0x00007f2dc2a7acc1 g_main_context_iterate.isra.39 (/usr/lib/libglib-2.0.so.0.5800.0)
#2 0x00007f2dc2a7ad9c g_main_context_iteration (/usr/lib/libglib-2.0.so.0.5800.0)
#3 0x00007f2dc2b578dd dconf_gdbus_worker_thread (/usr/lib/gio/modules/libdconfsettings.so)
#4 0x00007f2dc2a62a95 g_thread_proxy (/usr/lib/libglib-2.0.so.0.5800.0)
#5 0x00007f2dc183665a start_thread (libpthread.so.0)
#6 0x00007f2dc158f73f __clone (libc.so.6)
Edited by Tianhao Chai