Closed Bug 1777933 Opened 2 years ago Closed 2 years ago

Crash in [@ mozilla::dom::IOUtils::Read]

Categories

(Toolkit Graveyard :: OS.File, defect)

defect

Tracking

(firefox-esr91 unaffected, firefox-esr102 unaffected, firefox103 fixed, firefox104 fixed)

RESOLVED FIXED
104 Branch
Tracking Status
firefox-esr91 --- unaffected
firefox-esr102 --- unaffected
firefox103 --- fixed
firefox104 --- fixed

People

(Reporter: aryx, Assigned: barret)

References

Details

(Keywords: crash)

Crash Data

42 crashes for 14 installations of Firefox 103.0 beta 2 and 3, and Firefox 104.0b1. 12 for Firefox 103.0a1. Multiple OS affected and cpu architectures affected. Peter, could you investigate the issue? The code got modified in bug 1766130 but this landed for Firefox 102.

Crash report: https://crash-stats.mozilla.org/report/index/f9bfa1a8-8206-4e5b-af42-b56290220704

MOZ_CRASH Reason: MOZ_DIAGNOSTIC_ASSERT(XRE_IsParentProcess())

Top 10 frames of crashing thread:

0 xul.dll static mozilla::dom::IOUtils::Read dom/system/IOUtils.cpp:318
1 xul.dll mozilla::dom::IOUtils_Binding::read dom/bindings/IOUtilsBinding.cpp:1452
2 xul.dll mozilla::dom::StaticMethodPromiseWrapper dom/bindings/BindingUtils.cpp:3311
3 xul.dll js::CallFromStack js/src/vm/Interpreter.cpp:579
4 xul.dll js::jit::DoCallFallback js/src/jit/BaselineIC.cpp:1582
5 None @0x3de9256d 
6 None @0x3de98007 
7 None @0x3deee602 
8 None @0x3de98077 
9 None @0x3de903d7 
Flags: needinfo?(peterv)

This assert has been there for a long time (added in bug 1659839), so someone would need to find the JS caller of this API that's triggering this. And totally unrelated to the changes in bug 1766130, which just fixed other crashes.

Flags: needinfo?(peterv)

Could this be a regression from one of the IOUtils porting bugs which landed last month?

Flags: needinfo?(brennie)
Depends on: 1778553
Blocks: 1779275

I just kicked off landing of bug 1778553, which adds the caller location to the crash string. That should tell us what to fix.

The beta crashes are much more prevalent on devedition (aurora channel) vs beta channel (183 vs 29 crashes at time of writing), whereas crash volume overall in the past week is much heavier on beta (serveral multiples). So it seems like this is primarily hit on devedition.

The first nightly crash was on a June 6 build. https://phabricator.services.mozilla.com/D147589 landed on the June 3rd build and added a read callsite to a general purpose fetch method (albeit in relatively rare cases, when the channel load doesn't succeed for a file: URL read - but this is pretty plausible when developing code on the local machine). That fetch method gets used by the stylesheet devtools 'server' actor which runs in the same process as the code being debugged, ie a child proc if devtool'ing a regular webpage or local file:/// html page.

Barret reproduced a crash on an instrumented nightly: https://crash-stats.mozilla.org/report/index/b2360071-7901-4fb8-844a-4859f0220714

It's still possible that other migrations also introduced these issues, or that other parts of the patch in bug 1771608 or the other migrations in this list of bugs: https://mzl.la/3O35ru1 introduced similar problems. But it seems a reasonable guess for what the issue here is. Devtools folks might be more reliably able to point us in the direction of other problematic .read callsites.

Depends on: 1779572

Any crashes that occur with the updated telemetry will have the signature in bug 1779572.

Flags: needinfo?(brennie)

This was fixed by bug 1779574

Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Assignee: nobody → brennie
Depends on: 1779574
No longer depends on: 1779572
See Also: → 1779572
Target Milestone: --- → 104 Branch
No longer blocks: 1779275
See Also: → 1779275
Product: Toolkit → Toolkit Graveyard
You need to log in before you can comment on or make changes to this bug.