Closed Bug 1781064 Opened 3 years ago Closed 3 years ago

Crash in [@ mozilla::WebGLContext::PushRemoteTexture] on macOS

Categories

(Core :: Graphics: CanvasWebGL, defect)

defect

Tracking

()

RESOLVED FIXED
105 Branch
Tracking Status
firefox-esr91 --- unaffected
firefox-esr102 --- unaffected
firefox103 --- unaffected
firefox104 --- wontfix
firefox105 --- fixed

People

(Reporter: emilio, Assigned: lsalzman)

References

(Regression)

Details

(Keywords: crash)

Crash Data

Attachments

(2 files)

Crash report: https://crash-stats.mozilla.org/report/index/02c17bd5-2c06-4f87-8c87-10a090220725

MOZ_CRASH Reason: MOZ_RELEASE_ASSERT(mappedData.stride == static_cast<int64_t>(stride.value()))

Top 10 frames of crashing thread:

0 XUL mozilla::WebGLContext::PushRemoteTexture dom/canvas/WebGLContext.cpp:1165
1 XUL mozilla::WebGLContext::CopyToSwapChain dom/canvas/WebGLContext.cpp:1092
2 XUL mozilla::HostWebGLContext::CopyToSwapChain const dom/canvas/HostWebGLContext.h:177
3 XUL auto bool mozilla::MethodDispatcher<mozilla::WebGLMethodDispatcher,  const dom/canvas/WebGLCommandQueue.h:246
4 XUL mozilla::dom::WebGLParent::RecvDispatchCommands dom/canvas/WebGLParent.cpp:64
5 XUL mozilla::dom::PWebGLParent::OnMessageReceived ipc/ipdl/PWebGLParent.cpp:243
6 XUL mozilla::gfx::PCanvasManagerParent::OnMessageReceived ipc/ipdl/PCanvasManagerParent.cpp:214
7 XUL mozilla::ipc::MessageChannel::RunMessage ipc/glue/MessageChannel.cpp:1474
8 XUL mozilla::ipc::MessageChannel::MessageTask::Run ipc/glue/MessageChannel.cpp:1572
9 XUL nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1199

I've hit this crash twice today on macOS (I don't usually know macOS so I'm not sure it's a recent regression though).

Attached file about:support

The first time I hit this was in an outdated nightly (https://crash-stats.mozilla.org/report/index/8a7f502a-3076-45fc-b129-f60970220725), but comment 0 is on latest nightly.

It might be related to the latest macOS update (I'm on 13.0 Beta), but again I don't use macOS much so hard to say...

Summary: Crash in [@ mozilla::WebGLContext::PushRemoteTexture] → Crash in [@ mozilla::WebGLContext::PushRemoteTexture] on macOS

This could only be a new signature due to bug 1777426. Looks like there are a bunch of OS X versions now.

Flags: needinfo?(lsalzman)
Flags: needinfo?(lsalzman)

Since the BufferTextureData is getting created based on ImageDataSerialize::ComputeRGBBufferSize,
the stride may be padded for alignment which doesn't agree with the simple calculation duplicated
here. In general, it is less error-prone to just ask the BufferTextureData itself for its buffer
size, so just do that here instead rather than trying to make duplicate calculations with invalid
assumptions.

Assignee: nobody → lsalzman
Status: NEW → ASSIGNED
Pushed by lsalzman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/c32962d08e6c Get buffer size directly from BufferTextureData. r=aosmond,gfx-reviewers
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 105 Branch

The patch landed in nightly and beta is affected.
:lsalzman, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox104 to wontfix.

For more information, please visit auto_nag documentation.

Flags: needinfo?(lsalzman)
Flags: needinfo?(lsalzman)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: