Rendering is broken with native compositor on Windows
Categories
(Core :: Graphics: WebRender, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox74 | --- | fixed |
People
(Reporter: sotaro, Assigned: gw)
References
Details
Attachments
(4 files)
By enabling WR native compositor on Windows, there was a case that rendering was broken.
STR
- [1] Enable WR native compositor with pref.
- gfx.webrender.all : true
- gfx.webrender.compositor: true
- [2] Move to https://www.youtube.com/watch?v=1La4QzGeaaQ
- Autoplay is enabled
- [3] Start video playback
Keep video playback until the problem happens. I confirmed the problem on 3 Win10 PCs. It took long time even when the problem happened.
Reporter | ||
Comment 1•5 years ago
|
||
Reporter | ||
Comment 2•5 years ago
|
||
Reporter | ||
Comment 3•5 years ago
|
||
Reporter | ||
Comment 4•5 years ago
|
||
When the problem happened, I could not see about:support, sine all rendering updates were broken.
I saw the a lot of following error log out.
[GFX1-]: DCompositionSurface::BeginDraw failed: 0x887c0003
[GFX1-]: DCompositionSurface::BeginDraw failed: 0x887c0003
[GFX1-]: DCompositionSurface::BeginDraw failed: 0x887c0003
[GFX1-]: DCompositionSurface::BeginDraw failed: 0x887c0003
0x887c0003 might mean too many objects.
Debug build printed the following error message when the problem happened.
WARN: insertMessage(180): GL error: HIGH: Internal D3D11 error: HRESULT: 0x887C0003: Error allocating RenderTargetView
Caught GL error 502 at clear
Hit MOZ_CRASH(Caught GL error 502 at clear) at gfx\wr\webrender\src\device\gl.rs:1304
Assertion failure: EnsureWrappedTextureHost(), at d:/firefox_bld_dsk/mozilla-central/gfx/layers/composite/GPUVideoTextureHost.cpp:122
[Child 13828, Chrome_ChildThread] WARNING: pipe error: 232: file d:/firefox_bld_dsk/mozilla-central/ipc/chromium/src/chrome/common/ipc_channel_win.cc, line 507
Crash Annotation GraphicsCriticalError: |[C0][GFX1-]: Receive IPC close with reason=AbnormalShutdown (t=137996)
Reporter | ||
Updated•5 years ago
|
Reporter | ||
Comment 5•5 years ago
|
||
It seems that EGLSurface is leaked. DCLayerTree::DestroyEGLSurface() is called only in DCLayerTree::~DCLayerTree(). Call DestroyEGLSurface() for fixing the leak address the problem for me.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 6•5 years ago
|
||
Assignee | ||
Comment 7•5 years ago
|
||
I confirmed in task manager that I could see memory growing when hovering over items before this patch. After the patch, memory usage was stable.
Comment 9•5 years ago
|
||
bugherder |
Description
•