Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extensions Randomly Crash On Launch And During The Session #75

Open
scrutinizer11 opened this issue Aug 8, 2022 · 55 comments
Open

Extensions Randomly Crash On Launch And During The Session #75

scrutinizer11 opened this issue Aug 8, 2022 · 55 comments
Labels
bug Something isn't working

Comments

@scrutinizer11
Copy link

scrutinizer11 commented Aug 8, 2022

Describe the bug

Chromium shows notifications about extensions that crashed on launch.

To Reproduce

  1. Enable all extensions beforehand.
  2. Open Chromium

Such extensions as Adguard (including but not limited to) crash immediately and often trigger the entire crash cycle

Expected behaviour

No extension crashes.

Desktop (please complete the following information):

  • OS: MacOS X Lion, OS X Mavericks
  • Build 105.0.5170.0 and later

Logs
chromium10505170.log

@scrutinizer11 scrutinizer11 added the bug Something isn't working label Aug 8, 2022
@Wowfunhappy
Copy link

From the crash log, it looks like you're using a Canary build. You should try on the latest stable build. This probably isn't a Chromium Legacy bug.

@scrutinizer11
Copy link
Author

This still happens in 104.

@Wowfunhappy
Copy link

Wowfunhappy commented Aug 9, 2022

🙁

Does this happen regardless of which extensions you enable? For example, I'm using:

And none of these extensions are crashing on launch on Chromium 104.0.5112.79 on Mavericks 10.9.5.

It would be good to see if I can replicate the problem using the same set of extensions you're using, and/or if installing/enabling a particular extension is causing all of them to crash.

@pjpreilly
Copy link

Just spit balling...did you try collecting extension errors and/or clearing cache...

@scrutinizer11
Copy link
Author

@Wowfunhappy It happens mostly with Adguard and - to a lesser extent - Wayback.

@pjpreilly
Copy link

pjpreilly commented Aug 24, 2022

This happened to me on Lion on first launch after updating to a new Canary version.
Subsequent launches have no issue though....

blueboxd pushed a commit that referenced this issue Aug 31, 2022
This CL adds a UMA histogram which tracks the reason that the FedCM
account picker was dismissed.

BUG=1343857

(cherry picked from commit 48eaa14)

Change-Id: Ia2f1d27d3c811149b8d1ad98cf8ac2f740191c70
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3774541
Reviewed-by: Yi Gu <yigu@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Commit-Queue: Peter Kotwicz <pkotwicz@chromium.org>
Cr-Original-Commit-Position: refs/heads/main@{#1027117}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3788737
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Gary Kacmarcik <garykac@chromium.org>
Cr-Commit-Position: refs/branch-heads/5195@{#75}
Cr-Branched-From: 7aa3f07-refs/heads/main@{#1027018}
blueboxd pushed a commit that referenced this issue Sep 29, 2022
Patching system-initiated -[NSWindow orderWindow:] calls has caused
issues in fullscreen. For example, this function will be called when a
sheet modal is created and the sheet will appear to be occluded by other
windows.

This CL patches only chrome-initiated calls instead.

I couldn't find out a reliable way to add regression test.
Neither -[NSWindow orderedIndex] or -[NSWindow childWindows] is
reliable for testing sheet window that is attached to a child window.

(cherry picked from commit bd812e5)

Bug: 1352634, 1324216
Change-Id: I3ee43bae3c248da433f486c6444fda55b5b7121b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3842864
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Keren Zhu <kerenzhu@chromium.org>
Cr-Original-Commit-Position: refs/heads/main@{#1037901}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3854876
Cr-Commit-Position: refs/branch-heads/5249@{#75}
Cr-Branched-From: 4f7bea5-refs/heads/main@{#1036826}
@felixding
Copy link

Happens to me all the time on Mavericks. Extensions crash every few minutes. Bitwarden and uBlock Origin are some of the most frequently crashed extensions.

@krackers
Copy link

Is anything logged upon extension crash?

blueboxd pushed a commit that referenced this issue Nov 30, 2022
This cl only affect Lacros on-device config builders like
lacros-amd64-generic-chrome-skylab. This cl will certainly NOT affect
linux-lacros builders(linux-lacros-tester-rel, linux-lacros-rel, etc)
or any other platforms.
This CL will update cros image version for skylab tests. CROS_BOARD_LKGM
is updated according to chromeos/CHROMEOS_LKGM; CROS_BOARD_DEV,
CROS_BOARD_BETA and CROS_BOARD_STABLE are updated according to Omaha.

If this CL caused regressions, please revert and pause the autoroller at
https://luci-scheduler.appspot.com/jobs/chrome/lacros-skylab-tests-cros-img-roller
Also please file a bug to OS>LaCrOS>Partner, and CC svenzheng@chromium.org,
yjt@google.com.


R=rubber-stamper@appspot.gserviceaccount.com

Requires-Testing: True
Change-Id: Id08e9d02a4b94ddb4ff3bced31a192a362eb015c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3963635
Auto-Submit: skylab-test-cros-roller@chops-service-accounts.iam.gserviceaccount.com <skylab-test-cros-roller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5359@{#75}
Cr-Branched-From: 27d3765-refs/heads/main@{#1058933}
@felixding
Copy link

Is anything logged upon extension crash?

How to check the logs?

blueboxd pushed a commit that referenced this issue Feb 8, 2023
Change-Id: I3b5535607e58dd5156b704c2b07a7a9e6c79028e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4127455
Bot-Commit: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5481@{#75}
Cr-Branched-From: 130f3e4-refs/heads/main@{#1084008}
blueboxd pushed a commit that referenced this issue Mar 7, 2023
This CL may cause a small binary size increase, roughly proportional
to how long it's been since our last AFDO profile roll. For larger
increases (around or exceeding 100KB), please file go/crostc-bug.

Please note that, despite rolling to chrome/android, this profile is
used for both Linux and Android.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/afdo-chromium-beta
Please CC c-compiler-chrome@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium Beta Branch: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: c-compiler-chrome@google.com
Change-Id: I83448ba71b3ae0f269fdf6d8b7ab52a014227844
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4211493
Commit-Queue: Chrome Release Autoroll <chromium-release-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Chrome Release Autoroll <chromium-release-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5563@{#75}
Cr-Branched-From: 3ac59a6-refs/heads/main@{#1097615}
blueboxd pushed a commit that referenced this issue Apr 14, 2023
This reverts commit 1e8bb18.

Reason for revert: The metrics for recording these changes is not present
in Beta, and the metrics is not working correctly in Canary.

CL reverted here: https://chromium-review.googlesource.com/c/chromium/src/+/4221985

Bug: 1414259
Change-Id: Ib36e7ae28436659c05d71ec622f2b799ce36934a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4297978
Commit-Queue: Ritika Gupta <ritikagup@google.com>
Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
Reviewed-by: Ritika Gupta <ritikagup@google.com>
Cr-Commit-Position: refs/branch-heads/5615@{#75}
Cr-Branched-From: 9c6408e-refs/heads/main@{#1109224}
blueboxd pushed a commit that referenced this issue May 9, 2023
Update custom icon dimensions 32 x 20 -> 40 x 24 on "Payment methods"
and "Edit card" pages.

Payment methods page
Mock: https://www.figma.com/file/N6F3DN9prdEzQiylOtVBCW/X-PA-share?node-id=2-7334&t=tHB6xlatk0CGPBjx-0
Current: https://screenshot.googleplex.com/9hXssgDwN7hefkt
New: https://screenshot.googleplex.com/AbMbYZNW3X9G2Aw

Edit card page
Mock: https://www.figma.com/file/N6F3DN9prdEzQiylOtVBCW/X-PA-share?node-id=2-7011&t=tHB6xlatk0CGPBjx-0
Current: https://screenshot.googleplex.com/5JBvMxcC5QuGHag
New: https://screenshot.googleplex.com/9Lr9bV24CC67fmR

Note: Only custom icon dimensions are updated. Network icon dimensions
will be updated in a future change. All updates are behind
AutofillEnableNewCardArtAndNetworkImages flag.

(cherry picked from commit ac96bff)

Bug: 1417919, 1427669
Change-Id: I31b95e22e6624be3102e1dcbf1bd6be1aa5e467f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4357238
Reviewed-by: Friedrich Horschig <fhorschig@chromium.org>
Reviewed-by: Lijin Shen <lazzzis@google.com>
Commit-Queue: Vishwas Uppoor <vishwasuppoor@google.com>
Cr-Original-Commit-Position: refs/heads/main@{#1122057}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4373879
Cr-Commit-Position: refs/branch-heads/5672@{#75}
Cr-Branched-From: 5f2a724-refs/heads/main@{#1121455}
blueboxd pushed a commit that referenced this issue May 27, 2023
This feature interferes with some internal code and should not be
enabled in experimental-web-platform-features until that is resolved.

(cherry picked from commit f08e3d1)

Bug: 1439567
Change-Id: I690084acd8f6cac31b58fde765ef4564434d0b6e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4491244
Commit-Queue: Martin Kreichgauer <martinkr@google.com>
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Auto-Submit: Martin Kreichgauer <martinkr@google.com>
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Cr-Original-Commit-Position: refs/heads/main@{#1137309}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4492319
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5735@{#75}
Cr-Branched-From: 2f562e4-refs/heads/main@{#1135570}
@RJVB
Copy link

RJVB commented Sep 5, 2023

Happens to me all the time on Mavericks. Extensions crash every few minutes.

Idem here, just maybe not that often. uBlock Origin does it, Zoom Page WE idem, I've seen TamperMonkey crash too - in fact, I wouldn't be able to tell which extensions never crash...

blueboxd pushed a commit that referenced this issue Sep 10, 2023
Change-Id: I684ab8dcda1ba6d46f3e09853e8bdc553a65fc58
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4777442
Auto-Submit: Ben Mason <benmason@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5938@{#75}
Cr-Branched-From: 2b50cb4-refs/heads/main@{#1181205}
@felixding
Copy link

Exactly. And they crash so often that the browser becomes barely usable. Can someone please fix it? Would love to help wherever I can.

@Wowfunhappy
Copy link

For what it's worth, some extensions crash much more often than others. uBlock Origin is the main one that crashes for me.

Is anything logged upon extension crash?

I've been trying to capture a crash when Chromium is launched from the Terminal in the hopes that something is logged there, but so far extensions have refused to crash when I'm actually looking for it. 🤷‍♂️

@Wowfunhappy
Copy link

Wowfunhappy commented Oct 5, 2023

...literally seconds after posting the above, I finally managed to get uBlock Origin to crash while Chromium was launched from the Terminal.

And confirmed that nothing is printed there either.

So, no, I cannot figure out where these crashes are logged!

If I may make a suggestion... could we consider automatically reloading any extensions that crash (maybe after ~10 seconds or so)? It would of course be better if they did not crash in the first place, but Chromium Legacy is always going to be a less stable than mainline and that's okay.

@RJVB
Copy link

RJVB commented Oct 5, 2023 via email

@scrutinizer11
Copy link
Author

scrutinizer11 commented Oct 5, 2023

In the extensions settings, to find the extension error log, click on the Details chip in the extension tale and turn on "Collect errors". The Adguard Extension is the gravest offender. This is what I'm seeing 👇
Screen Shot 2023-10-05 at 18 26 10

I reported these errors to the Adguard team but they told me they could make nothing of it.

@Wowfunhappy
Copy link

Wowfunhappy commented Oct 5, 2023 via email

@RJVB
Copy link

RJVB commented Oct 5, 2023 via email

@krackers
Copy link

krackers commented Oct 6, 2023

Have you tried running chrome with verbose logging enabled? Also if you go to chrome://crashes any crash log there?

@RJVB
Copy link

RJVB commented Nov 6, 2023

Have you tried running chrome with verbose logging enabled? Also if you go to chrome://crashes any crash log there?

Crashes
Crash reporting is disabled.
Crash reporting is not available in Chromium.

@Wowfunhappy
Copy link

Actually, is it me or has the crash rate diminished with the latest 119.x.y.z builds?

I'm actually getting many more crashes than usual.

Probably can wait for wowfunhappy to play around with it.

It doesn't work via defaults write:

defaults write org.chromium.Chromium ExtensionInstallForcelist -array "cjpalhdlnbpafiamejdnhcphjbkeiagm"

defaults write org.chromium.Chromium ExtensionInstallForcelist -array "cjpalhdlnbpafiamejdnhcphjbkeiagm;https://clients2.google.com/service/update2/crx"

The chrome://policy page says the policy is valid, but it has no effect. I encountered this before, I can't seem to find the page now but I was told by Google (I reported a bug which was closed as expected behavior) that there are certain policies that have no effect when installed at the "recommended" level, you need a proper mdm.

I really don't want to start messing with managed preferences... my hope is that blueboxd can just make the two-line change to Chromium's source at some point.

@RJVB
Copy link

RJVB commented Nov 23, 2023 via email

@Wowfunhappy
Copy link

Wowfunhappy commented Nov 23, 2023

Yeah that's the PrefPane updater, which sets other policies via defaults write. Use the PrefPane uninstaller to remove that if you don't want to use the PrefPane anymore.

@RJVB
Copy link

RJVB commented Nov 23, 2023 via email

@krackers
Copy link

that there are certain policies that have no effect when installed at the "recommended" level, you need a proper mdm.

This is interesting. Yes I remember reading there are different "levels" of preferences. and someone ran into the same issue in https://stackoverflow.com/questions/76060139/trying-to-change-chrome-extensioninstallforcelist-policy-from-recommended-to

I found https://apple.stackexchange.com/questions/404235/defaults-write-com-google-chrome-passwordmanagerenabled-true-has-no-effect

which seems to suggest that simply created /Library/Managed Preferences even without an MDM profile would do it: https://apple.stackexchange.com/questions/404235/defaults-write-com-google-chrome-passwordmanagerenabled-true-has-no-effect

Looking at source for --policy command line arg also seems to imply it is loaded as mandatory https://source.chromium.org/chromium/chromium/src/+/main:components/policy/core/common/policy_loader_command_line.cc;l=24;drc=d4a7d3fb6f5100019d6153d5cf00c60f06b1d0a2;bpv=0;bpt=1

@RJVB
Copy link

RJVB commented Dec 12, 2023

I got a uBlock Origin crash earlier, after starting Chromium from a shell.

This appeared on the terminal at about the same time:

[87770:37379:1212/194913.976286:ERROR:connection_factory_impl.cc(471)] ConnectionHandler failed with net error: -2
[87770:771:1212/194914.027040:ERROR:network_service_instance_impl.cc(601)] Network service crashed, restarting service.

@RJVB
Copy link

RJVB commented Jan 21, 2024

Today I got an extension crash alert (Windscribe VNC) and at (almost exactly) the same time a Chromium Helper process crashed giving me this backtrace in the problem reporter:

Process:         Chromium Helper (Renderer) [28802]
Path:            /Applications/Internet/Chromium.app/Contents/Frameworks/Chromium Framework.framework/Versions/120.0.6099.199.1/Helpers/Chromium Helper (Renderer).app/Contents/MacOS/Chromium Helper (Renderer)
Identifier:      Chromium Helper (Renderer)
Version:         120.0.6099.199.1 (6099.199)
Code Type:       X86-64 (Native)
Parent Process:  Chromium [28772]
Responsible:     Chromium [28772]

Date/Time:       2024-01-21 03:24:58.728 +0100
OS Version:      Mac OS X 10.9.5 (13F1911)
Report Version:  11
Anonymous UUID:  64B814D9-356F-6F85-8341-E17C1354A330

Sleep/Wake UUID: 086A07D6-FFDC-48B1-8B1F-92BB7D9AAA8D

Crashed Thread:  6  Chrome_ChildIOThread

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000

Application Specific Information:
[28802:18179:0121/032458.421498:FATAL:message_pump_kqueue.cc(495)] Check failed: . kevent64: Bad file descriptor (9)
 
Task trace:
No active task.

Application Specific Backtrace 1:
0   Chromium Framework                  0x000000010ed4b9c8 base::debug::CollectStackTrace(void const**, unsigned long) + 24
1   Chromium Framework                  0x000000010ed41643 base::debug::StackTrace::StackTrace() + 19
2   Chromium Framework                  0x000000010ecab0be logging::LogMessage::~LogMessage() + 2414
3   Chromium Framework                  0x0000000113cfca3d logging::ErrnoLogMessage::~ErrnoLogMessage() + 141
4   Chromium Framework                  0x0000000113cfca6e logging::ErrnoLogMessage::~ErrnoLogMessage() + 14
5   Chromium Framework                  0x0000000113cf91f7 logging::CheckError::~CheckError() + 23
6   Chromium Framework                  0x0000000113cf9219 logging::CheckError::~CheckError() + 9
7   Chromium Framework                  0x000000010ed61845 base::MessagePumpKqueue::RunSimplified(base::MessagePump::Delegate*) + 3541
8   Chromium Framework                  0x000000010ed60985 base::MessagePumpKqueue::Run(base::MessagePump::Delegate*) + 53
9   Chromium Framework                  0x000000010ed0dd26 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) + 214
10  Chromium Framework                  0x000000010ecd7ac0 base::RunLoop::Run(base::Location const&) + 160
11  Chromium Framework                  0x000000010ed2f5d8 base::Thread::Run(base::RunLoop*) + 56
12  Chromium Framework                  0x000000011042512f content::(anonymous namespace)::ChildIOThread::Run(base::RunLoop*) + 95
13  Chromium Framework                  0x000000010ed2f793 base::Thread::ThreadMain() + 419
14  Chromium Framework                  0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
15  libsystem_pthread.dylib             0x00007fff8bbfb899 _pthread_body + 138
16  libsystem_pthread.dylib             0x00007fff8bbfb72a _pthread_struct_init + 0
17  libsystem_pthread.dylib             0x00007fff8bbfffc9 thread_start + 13

Thread 0:: CrRendererMain  Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ecb017d base::MessagePumpDefault::Run(base::MessagePump::Delegate*) + 269
5   org.chromium.Chromium.framework	0x000000010ed0dd26 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) + 214
6   org.chromium.Chromium.framework	0x000000010ecd7ac0 base::RunLoop::Run(base::Location const&) + 160
7   org.chromium.Chromium.framework	0x0000000111451893 content::RendererMain(content::MainFunctionParams) + 1123
8   org.chromium.Chromium.framework	0x000000010e780d60 content::RunOtherNamedProcessTypeMain(std::__Cr::basic_string<char, std::__Cr::char_traits<char>, std::__Cr::allocator<char> > const&, content::MainFunctionParams, content::ContentMainDelegate*) + 640
9   org.chromium.Chromium.framework	0x000000010e781881 content::ContentMainRunnerImpl::Run() + 625
10  org.chromium.Chromium.framework	0x000000010e7802c7 content::RunContentProcess(content::ContentMainParams, content::ContentMainRunner*) + 1063
11  org.chromium.Chromium.framework	0x000000010e780472 content::ContentMain(content::ContentMainParams) + 98
12  org.chromium.Chromium.framework	0x000000010c7f1b1b ChromeMain + 699
13  org.chromium.Chromium.helper.renderer	0x000000010c736838 main + 248
14  org.chromium.Chromium.helper.renderer	0x000000010c736734 start + 52

Thread 1:: Dispatch queue: com.apple.libdispatch-manager
0   libsystem_kernel.dylib        	0x00007fff8b047662 kevent64 + 10
1   libdispatch.dylib             	0x00007fff93a17421 _dispatch_mgr_invoke + 239
2   libdispatch.dylib             	0x00007fff93a17136 _dispatch_mgr_thread + 52

Thread 2:: HangWatcher
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed29659 base::HangWatcher::Wait() + 73
5   org.chromium.Chromium.framework	0x000000010ed29834 base::HangWatcher::Run() + 36
6   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
7   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
8   libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
9   libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 3:: ThreadPoolServiceThread
0   libsystem_kernel.dylib        	0x00007fff8b047662 kevent64 + 10
1   org.chromium.Chromium.framework	0x000000010ed60e34 base::MessagePumpKqueue::RunSimplified(base::MessagePump::Delegate*) + 964
2   org.chromium.Chromium.framework	0x000000010ed60985 base::MessagePumpKqueue::Run(base::MessagePump::Delegate*) + 53
3   org.chromium.Chromium.framework	0x000000010ed0dd26 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) + 214
4   org.chromium.Chromium.framework	0x000000010ecd7ac0 base::RunLoop::Run(base::Location const&) + 160
5   org.chromium.Chromium.framework	0x000000010ed2f5d8 base::Thread::Run(base::RunLoop*) + 56
6   org.chromium.Chromium.framework	0x000000010ed1a35d base::internal::ServiceThread::Run(base::RunLoop*) + 13
7   org.chromium.Chromium.framework	0x000000010ed2f793 base::Thread::ThreadMain() + 419
8   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
9   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
10  libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
11  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 4:: ThreadPoolForegroundWorker
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed24d1e base::internal::WorkerThread::RunWorker() + 1198
5   org.chromium.Chromium.framework	0x000000010ed247ed base::internal::WorkerThread::RunPooledWorker() + 13
6   org.chromium.Chromium.framework	0x000000010ed24711 base::internal::WorkerThread::ThreadMain() + 113
7   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
8   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
9   libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
10  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 5:: ThreadPoolBackgroundWorker
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed24d1e base::internal::WorkerThread::RunWorker() + 1198
5   org.chromium.Chromium.framework	0x000000010ed2478d base::internal::WorkerThread::RunBackgroundPooledWorker() + 13
6   org.chromium.Chromium.framework	0x000000010ed24776 base::internal::WorkerThread::ThreadMain() + 214
7   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
8   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
9   libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
10  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 6 Crashed:: Chrome_ChildIOThread
0   org.chromium.Chromium.framework	0x000000010ecab906 logging::LogMessage::~LogMessage() + 4534
1   org.chromium.Chromium.framework	0x0000000113cfca3d logging::ErrnoLogMessage::~ErrnoLogMessage() + 141
2   org.chromium.Chromium.framework	0x0000000113cfca6e logging::ErrnoLogMessage::~ErrnoLogMessage() + 14
3   org.chromium.Chromium.framework	0x0000000113cf91f7 logging::CheckError::~CheckError() + 23
4   org.chromium.Chromium.framework	0x0000000113cf9219 logging::CheckError::~CheckError() + 9
5   org.chromium.Chromium.framework	0x000000010ed61845 base::MessagePumpKqueue::RunSimplified(base::MessagePump::Delegate*) + 3541
6   org.chromium.Chromium.framework	0x000000010ed60985 base::MessagePumpKqueue::Run(base::MessagePump::Delegate*) + 53
7   org.chromium.Chromium.framework	0x000000010ed0dd26 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) + 214
8   org.chromium.Chromium.framework	0x000000010ecd7ac0 base::RunLoop::Run(base::Location const&) + 160
9   org.chromium.Chromium.framework	0x000000010ed2f5d8 base::Thread::Run(base::RunLoop*) + 56
10  org.chromium.Chromium.framework	0x000000011042512f content::(anonymous namespace)::ChildIOThread::Run(base::RunLoop*) + 95
11  org.chromium.Chromium.framework	0x000000010ed2f793 base::Thread::ThreadMain() + 419
12  org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
13  libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
14  libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
15  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 7:: ThreadPoolForegroundWorker
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed24d1e base::internal::WorkerThread::RunWorker() + 1198
5   org.chromium.Chromium.framework	0x000000010ed247ed base::internal::WorkerThread::RunPooledWorker() + 13
6   org.chromium.Chromium.framework	0x000000010ed24711 base::internal::WorkerThread::ThreadMain() + 113
7   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
8   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
9   libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
10  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 8:: GpuMemoryThread
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedb64 base::WaitableEvent::Wait() + 84
4   org.chromium.Chromium.framework	0x000000010ecb012d base::MessagePumpDefault::Run(base::MessagePump::Delegate*) + 189
5   org.chromium.Chromium.framework	0x000000010ed0dd26 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) + 214
6   org.chromium.Chromium.framework	0x000000010ecd7ac0 base::RunLoop::Run(base::Location const&) + 160
7   org.chromium.Chromium.framework	0x000000010ed2f5d8 base::Thread::Run(base::RunLoop*) + 56
8   org.chromium.Chromium.framework	0x000000010ed2f793 base::Thread::ThreadMain() + 419
9   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
10  libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
11  libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
12  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 9:: Compositor
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedb64 base::WaitableEvent::Wait() + 84
4   org.chromium.Chromium.framework	0x000000010ecb012d base::MessagePumpDefault::Run(base::MessagePump::Delegate*) + 189
5   org.chromium.Chromium.framework	0x000000010ed0dd26 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) + 214
6   org.chromium.Chromium.framework	0x000000010ecd7ac0 base::RunLoop::Run(base::Location const&) + 160
7   org.chromium.Chromium.framework	0x000000010e69941a blink::scheduler::NonMainThreadImpl::SimpleThreadImpl::Run() + 282
8   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
9   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
10  libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
11  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 10:: ThreadPoolSingleThreadSharedForegroundBlocking0
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed241ba base::internal::WorkerThread::Delegate::WaitForWork(base::WaitableEvent*) + 26
5   org.chromium.Chromium.framework	0x000000010ed2495f base::internal::WorkerThread::RunWorker() + 239
6   org.chromium.Chromium.framework	0x000000010ed2481d base::internal::WorkerThread::RunSharedWorker() + 13
7   org.chromium.Chromium.framework	0x000000010ed2474a base::internal::WorkerThread::ThreadMain() + 170
8   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
9   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
10  libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
11  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 11:: Preload scanner
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedb64 base::WaitableEvent::Wait() + 84
4   org.chromium.Chromium.framework	0x000000010ecb012d base::MessagePumpDefault::Run(base::MessagePump::Delegate*) + 189
5   org.chromium.Chromium.framework	0x000000010ed0dd26 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) + 214
6   org.chromium.Chromium.framework	0x000000010ecd7ac0 base::RunLoop::Run(base::Location const&) + 160
7   org.chromium.Chromium.framework	0x000000010e69941a blink::scheduler::NonMainThreadImpl::SimpleThreadImpl::Run() + 282
8   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
9   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
10  libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
11  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 12:: ThreadPoolForegroundWorker
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed24d1e base::internal::WorkerThread::RunWorker() + 1198
5   org.chromium.Chromium.framework	0x000000010ed247ed base::internal::WorkerThread::RunPooledWorker() + 13
6   org.chromium.Chromium.framework	0x000000010ed24711 base::internal::WorkerThread::ThreadMain() + 113
7   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
8   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
9   libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
10  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 13:: ThreadPoolForegroundWorker
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed24d1e base::internal::WorkerThread::RunWorker() + 1198
5   org.chromium.Chromium.framework	0x000000010ed247ed base::internal::WorkerThread::RunPooledWorker() + 13
6   org.chromium.Chromium.framework	0x000000010ed24711 base::internal::WorkerThread::ThreadMain() + 113
7   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
8   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
9   libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
10  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 14:: ThreadPoolBackgroundWorker
0   libsystem_kernel.dylib        	0x00007fff8b042a1a mach_msg_trap + 10
1   libsystem_kernel.dylib        	0x00007fff8b041d18 mach_msg + 64
2   org.chromium.Chromium.framework	0x000000010ed56950 base::WaitableEvent::TimedWaitImpl(base::TimeDelta) + 304
3   org.chromium.Chromium.framework	0x000000010ecedc76 base::WaitableEvent::TimedWait(base::TimeDelta) + 86
4   org.chromium.Chromium.framework	0x000000010ed24d1e base::internal::WorkerThread::RunWorker() + 1198
5   org.chromium.Chromium.framework	0x000000010ed2478d base::internal::WorkerThread::RunBackgroundPooledWorker() + 13
6   org.chromium.Chromium.framework	0x000000010ed24776 base::internal::WorkerThread::ThreadMain() + 214
7   org.chromium.Chromium.framework	0x000000010ed40a59 base::(anonymous namespace)::ThreadFunc(void*) + 105
8   libsystem_pthread.dylib       	0x00007fff8bbfb899 _pthread_body + 138
9   libsystem_pthread.dylib       	0x00007fff8bbfb72a _pthread_start + 137
10  libsystem_pthread.dylib       	0x00007fff8bbfffc9 thread_start + 13

Thread 6 crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000000  rbx: 0x00007fe3b2742200  rcx: 0x0000000000000000  rdx: 0x0000000118ef31c8
  rdi: 0x0003590000035a03  rsi: 0x00035a0000035a00  rbp: 0x0000000131eea990  rsp: 0x0000000131ee9ca0
   r8: 0x0000000000000040   r9: 0x0000000131ee9c00  r10: 0x00000000a4e17265  r11: 0x00000000409f6370
  r12: 0x00007fe3b2469dc0  r13: 0x00007fe3b2770a80  r14: 0x0000000000000075  r15: 0x0000000131ee9cb0
  rip: 0x000000010ecab906  rfl: 0x0000000000000246  cr2: 0x0000000113cfa040
  
Logical CPU:     0
Error Code:      0x00000000
Trap Number:     3

@Wowfunhappy
Copy link

Wowfunhappy commented Jan 21, 2024

^ FYI, the above crash is an instance of #44. Which is to say, it would have been a kernel panic if the KQueueScanContinuePatch kext were not installed.

If it is related (which does feel plausible), I'm not sure that helps us, unless we can actually find the root cause of #44.

@RJVB
Copy link

RJVB commented Jan 21, 2024 via email

@Wowfunhappy
Copy link

@krackers Since Bluebox appears to be busy for the moment, do you know if I could potentially dyld_interpose BackgroundContentsService::HandleExtensionCrashed() so that RestartForceInstalledExtensionOnCrash() is always called? I think I can't because it's presumably not an exported symbol... right? If the only solution is a memory patch, that isn't worth doing since it would break on every update.

@RJVB
Copy link

RJVB commented Jan 23, 2024 via email

@Wowfunhappy
Copy link

Sorry, I personally don't want to spend time on a memory patch if I will have to update the offsets each time a new Chromium build is released.

can't you patch the code?

Yes, that is obviously preferable. The problem is that building Chromium is extremely difficult, not to mention CPU intensive. Bluebox has some sort of very impressive automated build system set up.

@scrutinizer11
Copy link
Author

scrutinizer11 commented Jan 23, 2024

From the latest posts, I deduce that these extension crashes will never get fixed. My solution was to ditch Adguard, a constant pet peeve, altogether for uBlock Origin. It hasn't had a single crash (knock the wood).

@scrutinizer11 scrutinizer11 changed the title Extensions randomly crash on launch Extensions Randomly Crash On Launch And During The Session Jan 23, 2024
@RJVB
Copy link

RJVB commented Jan 23, 2024 via email

@Wowfunhappy
Copy link

Wowfunhappy commented Jan 23, 2024

We're discussing a one-line change (change if (!force_installed) to if(false), or remove the if statement), but when Chromium is updated there would of course be more changes. There are other problems too: for example, I've never been able to create a Lion-compatible Chromium build, I think Bluebox has some undocumented tooling for that.

Long story short, I'm really not looking to offer alternative Chromium Legacy builds on my end.

What should really happen is this one-line change should be incorporated into Chromium Legacy, but at the moment I'm not sure how to get this on Bluebox's radar against all of the noise on the issue tracker.

@krackers
Copy link

krackers commented Jan 26, 2024

@Wowfunhappy I don't believe dyld interposing would work because chrome is wholly statically linked (with the exception of the system libraries) so dyld doesn't even have anything to do here. If the function isn't inlined and it has its own symbol then you could use something like libSymRez to get the address of it (even if it's not exported, which it probably won't be) and patch it from there.

You could probably check by using nm whether or not it's inlined or its own symbol. I"m not 100% sure whether or not this code is part of Chrome process or it's in Chrome helper. You'd need to check chromium framework too. But even if you get base address, you probably will need to drag in disassembler library to make things robust across versions, since chrome is built with LTO

Btw you tried forcing policy config via cmd-line and it didn't work?

@scrutinizer11
Copy link
Author

Looks like I was too hasty to conclude. uBlock mirrors AG falls on heavy sites, especially Reddit. AG was crashy on YouTube while uBlock is more enduring.

@RJVB
Copy link

RJVB commented Jan 26, 2024 via email

@krackers
Copy link

You mean if you modify source code? Just one line. But until bluebox includes it as part of his builds, are you going to be rebuilding chrome from source yourself?

@RJVB
Copy link

RJVB commented Jan 26, 2024 via email

@Wowfunhappy
Copy link

Oh, look at that!

5f0848d

It looks like extensions should be restarting automatically in the latest stable (121.0.6166.160.1). I just did some tests where I intentionally stopped extension processes, and it seems to be working for me!

@Wowfunhappy
Copy link

Wowfunhappy commented Mar 10, 2024

Although the extension is reloaded automatically, the notification still appears, which is very mildly annoying. I wonder if that could be hidden?

@krackers
Copy link

krackers commented Mar 16, 2024

@Wowfunhappy Is the extension a native mac notification center notification, or a window generated by chrome? If it's the former you can probably swizzle notification center stuff to selectively block certain things. There might have even been a SIMBL plugin long ago that did this blacklist behavior, but maybe I'm misremembering.

@Wowfunhappy
Copy link

@krackers Generated by Chrome. :(

@krackers
Copy link

@Wowfunhappy you could probably still do something hacky where you hook nswindow create and detect the crash window by seeing if it's borderless mask and matching dimensions.

@RJVB
Copy link

RJVB commented Mar 16, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

6 participants