Closed Bug 1869818 Opened 1 year ago Closed 1 year ago

Crash in [@ mozilla::ipc::MessageChannel::AssertWorkerThread | mozilla::ipc::MessageChannel::NextSeqno]

Categories

(Core :: Graphics: Canvas2D, defect, P3)

Unspecified
Windows 11
defect

Tracking

()

RESOLVED FIXED
122 Branch
Tracking Status
firefox-esr115 --- unaffected
firefox120 --- unaffected
firefox121 --- unaffected
firefox122 + fixed

People

(Reporter: aosmond, Assigned: aosmond)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: crash, regression, topcrash)

Crash Data

Attachments

(1 file)

Crash report: https://crash-stats.mozilla.org/report/index/bf6f9c41-4f71-4a69-9eda-f9e090231213

MOZ_CRASH Reason: MOZ_RELEASE_ASSERT(mWorkerThread && mWorkerThread->IsOnCurrentThread()) (not on worker thread!)

Top 10 frames of crashing thread:

0  xul.dll  AnnotateMozCrashReason  mfbt/Assertions.h:46
0  xul.dll  mozilla::ipc::MessageChannel::AssertWorkerThread const  ipc/glue/MessageChannel.h:503
0  xul.dll  mozilla::ipc::MessageChannel::NextSeqno  ipc/glue/MessageChannel.h:427
0  xul.dll  mozilla::ipc::MessageChannel::Send  ipc/glue/MessageChannel.cpp:765
1  xul.dll  mozilla::ipc::IToplevelProtocol::CreateSharedMemory  ipc/glue/ProtocolUtils.cpp:736
2  xul.dll  mozilla::ipc::IProtocol::CreateSharedMemory  ipc/glue/ProtocolUtils.cpp:369
2  xul.dll  mozilla::ipc::IProtocol::AllocShmem  ipc/glue/ProtocolUtils.cpp:471
3  xul.dll  mozilla::gfx::DrawTargetWebgl::Init  dom/canvas/DrawTargetWebgl.cpp:407
4  xul.dll  mozilla::gfx::DrawTargetWebgl::Create  dom/canvas/DrawTargetWebgl.cpp:870
5  xul.dll  mozilla::layers::CanvasTranslator::CreateDrawTarget  gfx/layers/ipc/CanvasTranslator.cpp:732

We should probably refuse to use CanvasWorkers in conjunction with DrawTargetWebgl / accelerated canvas.

Assignee: nobody → aosmond
Status: NEW → ASSIGNED
See Also: → 1869713

Accelerated canvas requires that the canvas worker threads are disabled.
Since CanvasChild is a per thread singleton, we cannot meaningfully give
different behaviour to D2D canvas and accelerated (WebGL) canvas. For
now just disable accelerated canvas if those prefs are changed.

Set release status flags based on info from the regressing bug 1829026

Pushed by aosmond@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/49597d5122ab Disable accelerated canvas if canvas worker threads are enabled. r=gfx-reviewers,lsalzman
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 122 Branch
Duplicate of this bug: 1869713
See Also: 1869713

Copying crash signatures from duplicate bugs.

Crash Signature: [@ mozilla::ipc::MessageChannel::AssertWorkerThread | mozilla::ipc::MessageChannel::NextSeqno] → [@ mozilla::ipc::MessageChannel::AssertWorkerThread | mozilla::ipc::MessageChannel::NextSeqno] [@ mozilla::gfx::GPUParent::GetSingleton]
See Also: → 1870833
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: