Open Bug 1837477 Opened 1 year ago Updated 9 months ago

Crash in [@ mozilla::ipc::FatalError | mozilla::ipc::IProtocol::HandleFatalError | IPC::WriteSequenceParam<T>]

Categories

(Core :: IPC, defect)

Firefox 116
x86_64
Linux
defect

Tracking

()

People

(Reporter: brierjon, Unassigned)

References

()

Details

(Keywords: crash, nightly-community)

Crash Data

Crash report: https://crash-stats.mozilla.org/report/index/be8325b2-d852-4217-beb3-d2d580230608

MOZ_CRASH Reason: MOZ_CRASH(IPC FatalError in the parent process!)

Top 10 frames of crashing thread:

0  libxul.so  mozilla::ipc::FatalError  ipc/glue/ProtocolUtils.cpp:170
1  libxul.so  mozilla::ipc::IProtocol::HandleFatalError  ipc/glue/ProtocolUtils.cpp:402
2  libxul.so  IPC::WriteSequenceParam<char const&>  ipc/chromium/src/chrome/common/ipc_message_utils.h:588
2  libxul.so  IPC::ParamTraits<nsTSubstring<char> >::Write  ipc/glue/IPCMessageUtilsSpecializations.h:91
2  libxul.so  IPC::WriteParam<nsTSubstring<char> const&>  ipc/chromium/src/chrome/common/ipc_message_utils.h:441
2  libxul.so  mozilla::net::PHttpBackgroundChannelParent::SendOnTransportAndData  ipc/ipdl/PHttpBackgroundChannelParent.cpp:147
3  libxul.so  mozilla::net::HttpBackgroundChannelParent::OnTransportAndData const  netwerk/protocol/http/HttpBackgroundChannelParent.cpp:224
3  libxul.so  std::_Function_handler<bool   /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/include/c++/8/bits/std_function.h:282
4  libxul.so  std::function<bool  const  /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/include/c++/8/bits/std_function.h:687
4  libxul.so  mozilla::net::nsHttp::SendDataInChunks<nsTDependentSubstring<char> >  netwerk/protocol/http/nsHttp.h:292

Running the Krhonos WebGL CTS via the harness results in crash (not yet narrowed down if a specific test alone can cause this).

Most recently the WEBGL_shader_pixel_local_storage tests were added to the CTS 2.0.1 https://github.com/KhronosGroup/WebGL/commit/b934957d2423492a9a8682f48517f07607503f3f

Output found in the terminal used to launch Firefox nightly - while running the CTS producing the crash report c991a763-0881-4275-a0d0-e329c0230608:

[GFX1-]: unexpected remote texture size: Size(0,0) expected: Size(50,50)
IPDL protocol Error: Received an invalid file descriptor
Sandbox: bad read from pid 146978: EMFILE
Sandbox: Unexpected EOF, op 0 flags 00 path /sys/devices/system/cpu/present
[Parent 146614, IPDL Background] WARNING: failed to duplicate file descriptor: Too many open files: file /builds/worker/checkouts/gecko/ipc/chromium/src/base/shared_memory_posix.cc:540
IPDL protocol error: SharedMemory::WriterHandle failed
ExceptionHandler::GenerateDump sys_pipe failed:Too many open files
ExceptionHandler::GenerateDump cloned child 152779
ExceptionHandler::SendContinueSignalToChild sys_write failed:ExceptionHandler::WaitForContinueSignal waiting for continue signal...
ExceptionHandler::WaitForContinueSignal sys_read failed:Bad file descriptor
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
[Parent 146614, IPC I/O Parent] WARNING: Message needs unreceived descriptors channel:7f186ae735e0 message-type:3473411 header()->num_handles:1 num_fds:0 fds_i:0: file /builds/worker/checkouts/gecko/ipc/chromium/src/chrome/common/ipc_channel_posix.cc:489
[Parent 146614, IPC I/O Parent] WARNING: process 147041 exited on signal 9: file /builds/worker/checkouts/gecko/ipc/chromium/src/base/process_util_posix.cc:265
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
IPDL protocol Error: Received an invalid file descriptor
[Parent 146614, IPC I/O Parent] WARNING: process 152826 exited on signal 11: file /builds/worker/checkouts/gecko/ipc/chromium/src/base/process_util_posix.cc:265

I just happened to hit a crash with this signature, though not by running webgl tests. My crash report: bp-f97aad17-fe1c-4385-9eed-53ce40230608

In my case, it seems to have been triggered by refreshing Google Docs. (That was the last thing I did, just before I crashed). Google Docs had also inexplicably just started rendering a whole "virtual page" (in its presentation of a multi-page doc) as being fully-black (i.e. unreadable) -- that's what prompted me to refresh. I'm guessing the canvas rendering context had some sort of catastrophic failure which is what resulted in the page going fully-black, and maybe that was associated with whatever ends up triggering the crash as well?

(I don't know if Google Docs uses WebGL, but both Google Docs and WebGL draw via <canvas>, which could be the common thread here, given that comment 0 and several of the crash reports have comments about running the webgl/khronos test suite.)

(In reply to Jonathan Brier from comment #0)

Running the Krhonos WebGL CTS via the harness results in crash (not yet narrowed down if a specific test alone can cause this).

Kelsey, maybe you'd be interested to take a look? The crash here is in IPC code but per comment 1, there seems be some canvas and/or WebGL association here.

Flags: needinfo?(jgilbert)
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: crash

The bug is linked to a topcrash signature, which matches the following criterion:

  • Top 5 desktop browser crashes on Linux on release

For more information, please visit BugBot documentation.

Keywords: topcrash

Based on the topcrash criteria, the crash signature linked to this bug is not a topcrash signature anymore.

For more information, please visit BugBot documentation.

Keywords: topcrash

This seems to be resource starvation of some kind? Maybe webgl is asking too-freely for shmem [files?]? Rate has gone down, so maybe this was alleviated by something else?

Severity: -- → S3
Flags: needinfo?(jgilbert)
You need to log in before you can comment on or make changes to this bug.