ungoogled-software / ungoogled-chromium-debian

Debian, Ubuntu, and others packaging for ungoogled-chromium
368 stars 49 forks source link

GCM-related segfault on startup #284

Closed miiichael closed 1 year ago

miiichael commented 2 years ago

ungoogled-chromium (95.0.4638.54-1) segfaults on startup, at the profile chooser, possibly during the default browser status check:

michael@joyola:~/dl$ gdb chromium
GNU gdb (Debian 10.1-1.7) 10.1.90.20210103-git
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from chromium...
Reading symbols from /usr/lib/debug/.build-id/24/650c01134850e0fde855b1d237ddc5987e8a68.debug...
(gdb) run
Starting program: /usr/bin/chromium 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
process 14000 is executing new program: /usr/lib/chromium/chrome
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff1ebf640 (LWP 14014)]
[Detaching after fork from child process 14015]
[Detaching after fork from child process 14016]
[Detaching after fork from child process 14017]
[New Thread 0x7ffff16be640 (LWP 14020)]
[New Thread 0x7ffff02a7640 (LWP 14021)]
[New Thread 0x7fffefaa6640 (LWP 14022)]
[New Thread 0x7fffef2a5640 (LWP 14023)]
[New Thread 0x7fffeeaa4640 (LWP 14024)]
[New Thread 0x7fffee2a3640 (LWP 14025)]
[New Thread 0x7fffedaa2640 (LWP 14026)]
[New Thread 0x7fffed2a1640 (LWP 14027)]
[New Thread 0x7fffecaa0640 (LWP 14028)]
[New Thread 0x7fffec29f640 (LWP 14029)]
[New Thread 0x7fffeae04640 (LWP 14030)]
[New Thread 0x7fffea589640 (LWP 14031)]
[New Thread 0x7fffe9d88640 (LWP 14032)]
[New Thread 0x7fffe8a9f640 (LWP 14033)]
[New Thread 0x7fffeb8a6640 (LWP 14034)]
[New Thread 0x7fffe829e640 (LWP 14035)]
[New Thread 0x7fffe7a9d640 (LWP 14036)]
[New Thread 0x7fffe725c640 (LWP 14037)]
[New Thread 0x7fffe6a5b640 (LWP 14038)]
[New Thread 0x7fffe625a640 (LWP 14039)]
[New Thread 0x7fffe5a39640 (LWP 14040)]
[New Thread 0x7fffe51f8640 (LWP 14042)]
[Detaching after fork from child process 14044]
[New Thread 0x7fffe4877640 (LWP 14057)]
[New Thread 0x7fffe0d76640 (LWP 14058)]
[14041:14041:0216/091721.166011:ERROR:sandbox_linux.cc(374)] InitializeSandbox() called with multiple threads in process gpu-process.
[New Thread 0x7fffdc005640 (LWP 14080)]
[New Thread 0x7fffe1f0c640 (LWP 14078)]
[New Thread 0x7fffdb804640 (LWP 14081)]
[New Thread 0x7fffe170b640 (LWP 14079)]
[New Thread 0x7fffdce5d640 (LWP 14082)]

(chrome:14000): dbind-WARNING **: 09:17:21.274: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-fkj3FwdW7E: Connection refused
[New Thread 0x7fffdb003640 (LWP 14094)]
[New Thread 0x7fffda802640 (LWP 14096)]
[New Thread 0x7fffd8000640 (LWP 14357)]
[New Thread 0x7fffd77ff640 (LWP 14356)]
[New Thread 0x7fffd6bfd640 (LWP 14359)]
[New Thread 0x7fffd63cc640 (LWP 14360)]
[14000:14360:0216/091722.615397:ERROR:ev_root_ca_metadata.cc(841)] Failed to register OID: 0
[Detaching after fork from child process 14361]
[14000:14079:0216/091723.726057:ERROR:chrome_browser_main_extra_parts_metrics.cc(230)] crbug.com/1216328: Checking Bluetooth availability started. Please report if there is no report that this ends.
[14000:14079:0216/091723.726082:ERROR:chrome_browser_main_extra_parts_metrics.cc(233)] crbug.com/1216328: Checking Bluetooth availability ended.
[14000:14079:0216/091723.726088:ERROR:chrome_browser_main_extra_parts_metrics.cc(236)] crbug.com/1216328: Checking default browser status started. Please report if there is no report that this ends.

Thread 9 "Chrome_IOThread" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffedaa2640 (LWP 14026)]
StartMCSLogin () at ../../components/gcm_driver/gcm_client_impl.cc:520
520 ../../components/gcm_driver/gcm_client_impl.cc: No such file or directory.
(gdb) bt full
#0  StartMCSLogin () at ../../components/gcm_driver/gcm_client_impl.cc:520
#1  OnReady () at ../../components/gcm_driver/gcm_client_impl.cc:512
#2  StartGCM() () at ../../components/gcm_driver/gcm_client_impl.cc:457
#3  0x000055555c7bd040 in OnLoadCompleted() () at ../../components/gcm_driver/gcm_client_impl.cc:441
#4  0x000055555c7c2877 in Invoke<void (gcm::GCMClientImpl::*)(std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >), base::WeakPtr<gcm::GCMClientImpl>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> > > () at ../../base/bind_internal.h:509
#5  MakeItSo<void (gcm::GCMClientImpl::*)(std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >), base::WeakPtr<gcm::GCMClientImpl>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> > > () at ../../base/bind_internal.h:668
#6  RunImpl<void (gcm::GCMClientImpl::*)(std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >), std::tuple<base::WeakPtr<gcm::GCMClientImpl> >, 0> () at ../../base/bind_internal.h:721
#7  RunOnce() () at ../../base/bind_internal.h:690
#8  0x000055555c7fb072 in Run () at ../../base/callback.h:99
#9  LoadContinuation() () at ../../google_apis/gcm/engine/gcm_store_impl.cc:1481
#10 0x000055555c7fcf9d in Invoke<void (gcm::GCMStoreImpl::*)(base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >), base::WeakPtr<gcm::GCMStoreImpl>, base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> > > () at ../../base/bind_internal.h:509
#11 MakeItSo<void (gcm::GCMStoreImpl::*)(base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >), base::WeakPtr<gcm::GCMStoreImpl>, base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> > > () at ../../base/bind_internal.h:668
#12 RunImpl<void (gcm::GCMStoreImpl::*)(base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >), std::tuple<base::WeakPtr<gcm::GCMStoreImpl>, base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)> >, 0, 1> () at ../../base/bind_internal.h:721
#13 RunOnce() () at ../../base/bind_internal.h:690
#14 0x000055555c7fcae0 in Run () at ../../base/callback.h:99
#15 Invoke<base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> > > ()
    at ../../base/bind_internal.h:608
#16 MakeItSo<base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> > > ()
    at ../../base/bind_internal.h:648
#17 RunImpl<base::OnceCallback<void (std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> >)>, std::tuple<std::unique_ptr<gcm::GCMStore::LoadResult, std::default_delete<gcm::GCMStore::LoadResult> > >, 0> () at ../../base/bind_internal.h:721
#18 RunOnce() () at ../../base/bind_internal.h:690
#19 0x000055555aae86e5 in Run () at ../../base/callback.h:99
#20 RunTask() () at ../../base/task/common/task_annotator.cc:178
#21 0x000055555aaf9ae6 in DoWorkImpl () at ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:360
#22 DoWork() () at ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:260
#23 0x000055555ab5ac21 in Run() () at ../../base/message_loop/message_pump_libevent.cc:200
#24 0x000055555aafa6d1 in Run() () at ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:467
#25 0x000055555aad0ae9 in Run() () at ../../base/run_loop.cc:133
#26 0x000055555ab11fa5 in base::Thread::Run(base::RunLoop*) () at ../../base/threading/thread.cc:341
#27 0x000055555895881f in IOThreadRun () at ../../content/browser/browser_process_io_thread.cc:128
#28 Run() () at ../../content/browser/browser_process_io_thread.cc:92
#29 0x000055555ab12143 in ThreadMain() () at ../../base/threading/thread.cc:412
#30 0x000055555ab37ddc in ThreadFunc() () at ../../base/threading/platform_thread_posix.cc:95
#31 0x00007ffff7f7ad80 in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#32 0x00007ffff61e8b6f in clone () at /lib/x86_64-linux-gnu/libc.so.6
(gdb) 

After poking around at my profile, I found that piping my Preferences file through jq 'del(.gcm.push_messaging_application_id_map)' (which for me contained 13 entries, mostly youtube) avoids the crash.

In case it's at all relevant:

Versions of packages ungoogled-chromium depends on:
ii  libasound2          1.2.6.1-1
ii  libatk-bridge2.0-0  2.38.0-1
ii  libatk1.0-0         2.36.0-2
ii  libatomic1          10.2.1-6
ii  libatspi2.0-0       2.38.0-4
ii  libc6               2.33-3
ii  libcairo2           1.16.0-5
ii  libcups2            2.3.3op2-3+deb11u1
ii  libdbus-1-3         1.12.20-2
ii  libdrm2             2.4.104-1
ii  libevent-2.1-7      2.1.12-stable-1
ii  libexpat1           2.2.10-2+deb11u1
ii  libflac8            1.3.3-2
ii  libfontconfig1      2.13.1-4.2
ii  libfreetype6        2.10.4+dfsg-1
ii  libgbm1             20.3.5-1
ii  libgcc-s1           10.2.1-6
ii  libglib2.0-0        2.66.8-1
ii  libjpeg62-turbo     1:2.0.6-4
ii  libjsoncpp24        1.9.4-4
ii  liblcms2-2          2.12~rc1-2
ii  libminizip1         1.1-8+b1
ii  libnspr4            2:4.29-1
ii  libnss3             2:3.61-1+deb11u2
ii  libopenjp2-7        2.4.0-3
ii  libopus0            1.3.1-0.1
ii  libpango-1.0-0      1.46.2-3
ii  libpng16-16         1.6.37-3
ii  libpulse0           14.2-2
ii  libre2-9            20210201+dfsg-1
ii  libsnappy1v5        1.1.8-1
ii  libstdc++6          11.2.0-14
ii  libtiff5            4.2.0-1
ii  libwebp6            0.6.1-2.1
ii  libwebpdemux2       0.6.1-2.1
ii  libwebpmux3         0.6.1-2.1
ii  libx11-6            2:1.7.2-1
ii  libxcb1             1.14-3
ii  libxcomposite1      1:0.4.5-1
ii  libxdamage1         1:1.1.5-2
ii  libxext6            2:1.3.3-1.1
ii  libxfixes3          1:5.0.3-2
ii  libxkbcommon0       1.0.3-2
ii  libxml2             2.9.10+dfsg-6.7
ii  libxrandr2          2:1.5.1-1
ii  libxshmfence1       1.3-1
ii  libxslt1.1          1.1.34-4
ii  zlib1g              1:1.2.11.dfsg-2
ghost commented 1 year ago

New release in progress, this is no longer relevant.