Closed
Bug 1468675
Opened 6 years ago
Closed 6 years ago
Crash in @0x0 | mozilla::gl::GLContextEGL::IsCurrentImpl
Categories
(Core :: Graphics: WebRender, defect)
Tracking
()
RESOLVED
FIXED
mozilla62
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox-esr60 | --- | unaffected |
firefox60 | --- | unaffected |
firefox61 | --- | unaffected |
firefox62 | --- | fixed |
People
(Reporter: marcia, Assigned: sotaro)
References
(Blocks 1 open bug)
Details
(Keywords: crash, regression)
Crash Data
Attachments
(1 file, 2 obsolete files)
4.92 KB,
patch
|
sotaro
:
review+
|
Details | Diff | Splinter Review |
This bug was filed from the Socorro interface and is report bp-04c1bd7a-5093-48c8-bff0-34bc40180614. ============================================================= Seen while looking at Windows crash stats, looks to have started in Build 20180613220131: https://bit.ly/2JN06Hb. Small volume crash so far. Possible regression range based on Build ID: https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=49efc43b14387db6c68d70bbf5e9b8195dd7f80f&tochange=c7a7df27ff38e2e75caebc44cb9ebf958b40b21e Top 10 frames of crashing thread: 0 @0x0 1 xul.dll mozilla::gl::GLContextEGL::IsCurrentImpl gfx/gl/GLContextProviderEGL.cpp:458 2 xul.dll mozilla::gl::GLContext::MakeCurrent gfx/gl/GLContext.cpp:2965 3 xul.dll mozilla::wr::RenderDXGIYCbCrTextureHostOGL::DeleteTextureHandle gfx/webrender_bindings/RenderD3D11TextureHostOGL.cpp:422 4 xul.dll mozilla::wr::RenderDXGIYCbCrTextureHostOGL::~RenderDXGIYCbCrTextureHostOGL gfx/webrender_bindings/RenderD3D11TextureHostOGL.cpp:273 5 xul.dll mozilla::wr::RenderDXGIYCbCrTextureHostOGL::`scalar deleting destructor' 6 xul.dll mozilla::PlatformDecoderModule::Release dom/media/platforms/PlatformDecoderModule.h:165 7 xul.dll mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread*, void xpcom/threads/nsThreadUtils.h:1190 8 xul.dll mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread*, void 9 xul.dll mozilla::Runnable::Release xpcom/threads/nsThreadUtils.cpp:50 =============================================================
Assignee | ||
Updated•6 years ago
|
Assignee: nobody → sotaro.ikeda.g
Assignee | ||
Comment 1•6 years ago
|
||
Bug 1364504 seems possible cause of regression.
Assignee | ||
Comment 2•6 years ago
|
||
The problem seemed to happen only during device reset during video playback. RenderThread::HandleDeviceReset() tries to clear all GLContext related resources. But RenderTextureHosts that is about to be deleted by RenderThread::UnregisterExternalImage() is not handled. We need to address it. RenderThread::UnregisterExternalImage() posts RenderTextureHost by NewRunnableMethod. It is not good.
Assignee | ||
Comment 3•6 years ago
|
||
Assignee | ||
Comment 4•6 years ago
|
||
Attachment #8985310 -
Attachment is obsolete: true
Updated•6 years ago
|
Blocks: wr-stability
Assignee | ||
Comment 5•6 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8b5bf9bf641efae9410baceda2c6ab8a9c4859e7
Assignee | ||
Updated•6 years ago
|
Attachment #8985314 -
Flags: review?(nical.bugzilla)
Comment 6•6 years ago
|
||
Comment on attachment 8985314 [details] [diff] [review] patch - Fix way of relasing RenderTextureHosts Review of attachment 8985314 [details] [diff] [review]: ----------------------------------------------------------------- ::: gfx/webrender_bindings/RenderThread.h @@ +200,5 @@ > nsDataHashtable<nsUint64HashKey, WindowInfo> mWindowInfos; > > Mutex mRenderTextureMapLock; > nsRefPtrHashtable<nsUint64HashKey, RenderTextureHost> mRenderTextures; > + std::list<RefPtr<RenderTextureHost>> mRenderTexturesDeferred; Please add a small comment here explaining why we need this (IIUC: on device resets we want to be able to go through the list of textures that are going to be removed by a deferred callback and remove them right away without waiting for the callback.) I think it makes sense but in a few months I and others won't remember that (device reset usually not being the first thing we think about when reading the code).
Updated•6 years ago
|
Attachment #8985314 -
Flags: review?(nical.bugzilla) → review+
Assignee | ||
Comment 7•6 years ago
|
||
Add comment.
Attachment #8985314 -
Attachment is obsolete: true
Attachment #8985415 -
Flags: review+
Assignee | ||
Updated•6 years ago
|
Attachment #8985415 -
Attachment description: patch_1468675_3patch - Fix way of relasing RenderTextureHosts → patch - Fix way of relasing RenderTextureHosts
Pushed by sikeda@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/3358555f18d5 Fix way of relasing RenderTextureHosts r=nical
Comment 9•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/3358555f18d5
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
Updated•6 years ago
|
status-firefox60:
--- → unaffected
status-firefox61:
--- → unaffected
status-firefox-esr52:
--- → unaffected
status-firefox-esr60:
--- → unaffected
Assignee | ||
Comment 10•6 years ago
|
||
Hmm, there is another route to cause the crash. https://crash-stats.mozilla.com/report/index/94e75b92-66da-4850-b395-d3bcc0180616
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 11•6 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro] from comment #10) > Hmm, there is another route to cause the crash. > > https://crash-stats.mozilla.com/report/index/94e75b92-66da-4850-b395- > d3bcc0180616 Ah, current implementation does not support "simulate device reset" handling.
Assignee | ||
Comment 13•6 years ago
|
||
Yes. The remaining problem was fixed by bug 1469480.
Status: REOPENED → RESOLVED
Closed: 6 years ago → 6 years ago
Flags: needinfo?(sotaro.ikeda.g)
Resolution: --- → FIXED
Assignee | ||
Updated•6 years ago
|
You need to log in
before you can comment on or make changes to this bug.
Description
•