WebRenderBridgeParent::Destroy() does not destroy related RenderCompositor
Categories
(Core :: Graphics: WebRender, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr78 | --- | unaffected |
firefox86 | --- | wontfix |
firefox87 | --- | wontfix |
firefox88 | --- | wontfix |
firefox89 | --- | fixed |
People
(Reporter: sotaro, Assigned: sotaro)
References
Details
Crash Data
Attachments
(1 file)
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta-
|
Details | Review |
Root WebRenderBridgeParent::Destroy() call expected to destroy RenderCompositor. But it is not destroyed.
On android, it caused a crash with the following log during fallback from RenderCompositorEGL to LayerManagerComposite/CompositorOGL. Only one user could connect to Android Surface.
03-25 13:15:58.270 673 702 E BufferQueueProducer: SurfaceView - org.mozilla.geckoview_example/org.mozilla.geckoview_example.GeckoViewActivity#0 connect: already connected (cur=1 req=1)
03-25 13:15:58.270 31803 31915 E libEGL : eglCreateWindowSurface: native_window_api_connect (win=0xf24cb068) failed (0xffffffea) (already connected to another API?)
03-25 13:15:58.270 31803 31915 E libEGL : eglCreateWindowSurfaceTmpl:725 error 3003 (EGL_BAD_ALLOC)
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 1•4 years ago
•
|
||
Renderer is destroyed in root's WebRenderAPI::~WebRenderAPI(). But ref of root WebRenderAPI is held by non-rot WebRenderAPI
Then root WebRenderAPI is alive until all non-root WebRenderAPIs are destroyed.
Assignee | ||
Comment 2•4 years ago
|
||
Updated•4 years ago
|
Assignee | ||
Comment 3•4 years ago
|
||
Updated•4 years ago
|
Comment 5•4 years ago
|
||
bugherder |
Comment 6•4 years ago
|
||
The patch landed in nightly and beta is affected.
:sotaro, is this bug important enough to require an uplift?
If not please set status_beta
to wontfix
.
For more information, please visit auto_nag documentation.
Assignee | ||
Comment 7•4 years ago
|
||
Comment on attachment 9211416 [details]
Bug 1700848 - Destroy RenderCompositor by root WebRenderBridgeParent's ClearResources()
Beta/Release Uplift Approval Request
- User impact if declined: Crash might happen when closing a window, though it is not frequent.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: none
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): The change basically used already existing code. It just fixed calling timing.
- String changes made/needed: none
Comment 8•4 years ago
|
||
Comment on attachment 9211416 [details]
Bug 1700848 - Destroy RenderCompositor by root WebRenderBridgeParent's ClearResources()
Approved for Desktop 88.0b5 & Fenix 88.0.0-beta.3.
Comment 9•4 years ago
|
||
bugherder uplift |
Updated•4 years ago
|
Comment 10•4 years ago
•
|
||
backout |
Backed out from Beta for 88.0b8 for causing bug 1701559.
https://hg.mozilla.org/releases/mozilla-beta/rev/aa0113150e854ac863d4251482f177562d4f8c47
Updated•4 years ago
|
Updated•3 years ago
|
Description
•