Closed Bug 1387467 Opened 8 years ago Closed 6 years ago

Crash in mozilla::layers::FrameBuilder::ProcessContainerLayer

Categories

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

Unspecified
Windows 10
defect

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox57 --- wontfix
firefox58 --- fix-optional
firefox59 --- ?

People

(Reporter: jseward, Assigned: dvander)

References

Details

(Keywords: crash, stale-bug, Whiteboard: [gfx-noted])

Crash Data

Attachments

(1 file)

This bug was filed from the Socorro interface and is report bp-5696fe0d-3ece-4c47-8020-38c730170804. ============================================================= This is Windows topcrash #17 for the nightly of 20170803134456.
Flags: needinfo?(dvander)
Assignee: nobody → dvander
Status: NEW → ASSIGNED
Flags: needinfo?(dvander)
Attached patch diagnosticsSplinter Review
I have no earthly idea how these two lines could crash. The first implies we've attached a LayerComposite to a LayerManagerMLGPU - or possibly some unsupported layer type is being used. The second crash implies that a RefLayerMLGPU requires an intermediate surface. I don't know how that's possible, and it would be a minor pain to support. Anyway, this patch will make the crashes prerelease only, and log some extra information.
Attachment #8893925 - Flags: review?(milan)
Attachment #8893925 - Flags: review?(milan) → review+
Backed out for build bustage at FrameBuilder.cpp:154 (no member GetName): https://hg.mozilla.org/integration/mozilla-inbound/rev/34567477dd06c7287fc8b742d26220da855e5358 Push with bustage: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=c044d884286153f6f3912e394d0c90469161503b&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&filter-resultStatus=retry&filter-resultStatus=usercancel Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=121166358&repo=mozilla-inbound [task 2017-08-05T08:44:12.155529Z] 08:44:12 INFO - In file included from /home/worker/workspace/build/src/obj-firefox/gfx/layers/Unified_cpp_gfx_layers9.cpp:29:0: [task 2017-08-05T08:44:12.155660Z] 08:44:12 INFO - /home/worker/workspace/build/src/gfx/layers/mlgpu/FrameBuilder.cpp: In member function 'bool mozilla::layers::FrameBuilder::ProcessContainerLayer(mozilla::layers::ContainerLayer*, mozilla::layers::RenderViewMLGPU*, const RenderTargetIntRect&, mozilla::Maybe<mozilla::gfx::PolygonTyped<mozilla::gfx::UnknownUnits> >&)': [task 2017-08-05T08:44:12.155731Z] 08:44:12 INFO - /home/worker/workspace/build/src/gfx/layers/mlgpu/FrameBuilder.cpp:154:48: error: 'class mozilla::layers::ContainerLayer' has no member named 'GetName' [task 2017-08-05T08:44:12.155774Z] 08:44:12 INFO - "Layer type is invalid: " << aContainer->GetName(); [task 2017-08-05T08:44:12.155815Z] 08:44:12 INFO - ^ [task 2017-08-05T08:44:12.155885Z] 08:44:12 INFO - /home/worker/workspace/build/src/gfx/layers/mlgpu/FrameBuilder.cpp:183:53: error: 'class mozilla::layers::LayerMLGPU' has no member named 'GetName' [task 2017-08-05T08:44:12.156075Z] 08:44:12 INFO - "Container layer type is invalid: " << layer->GetName(); [task 2017-08-05T08:44:12.156492Z] 08:44:12 INFO - ^ [task 2017-08-05T08:44:12.156801Z] 08:44:12 INFO - /home/worker/workspace/build/src/config/rules.mk:1050: recipe for target 'Unified_cpp_gfx_layers9.o' failed [task 2017-08-05T08:44:12.156988Z] 08:44:12 INFO - gmake[5]: *** [Unified_cpp_gfx_layers9.o] Error 1
Flags: needinfo?(dvander)
Flags: needinfo?(dvander)
Whiteboard: [keep-open]
Priority: -- → P3
Whiteboard: [keep-open] → [gfx-noted]
Still happening and the GraphicsCriticalError annotation looks like: Container layer type is invalid: RefLayerMLGPU
Given comment 6, this is new, so let's see if it's nasty.
Flags: needinfo?(dvander)
Priority: P3 → P1
It looks like a specific theme might be causing this, perhaps by styling browser tabs such that the RefLayer needs an intermediate surface. Advanced Layers can't handle this and it's theoretically not supposed to happen. I'll see if I can find the theme and reproduce the bug.
Flags: needinfo?(dvander)
Every crash has "Simple White X" as the theme, and it's a legacy addon. But even when enabling legacy addons in 57, and modifying the addon manifest to support 57, I can't reproduce this. So maybe it's a false correlation, or maybe someone who works on the addon is testing out 57 support. Another oddity is that the diagnostic metadata doesn't match the stack trace. The stack is at line 153 but the log message is printing from line 183. Line 153 should be unreachable, so that's confusing. Anyway, this is a pre-release-only crash so it should be okay to continue monitoring it.
Moving to p3 because no activity for at least 24 weeks.
Priority: P1 → P3

Closing because no crashes reported for 12 weeks.

Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: