Stop using Direct2D with WebRender

RESOLVED FIXED in Firefox 60

Status

()

enhancement
P3
normal
RESOLVED FIXED
2 years ago
Last year

People

(Reporter: jrmuizel, Assigned: aosmond)

Tracking

(Blocks 1 bug)

unspecified
mozilla60
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox60 fixed)

Details

(Whiteboard: [wr-mvp])

Attachments

(1 attachment, 1 obsolete attachment)

Direct2D probably won't be very helpful
Whiteboard: [wr-mvp] [triage]
Priority: -- → P3
Whiteboard: [wr-mvp] [triage] → [wr-reserve]
Andrew knows something about what we are doing here and about how to fix it.
Flags: needinfo?(aosmond)
Assignee: nobody → aosmond
Status: NEW → ASSIGNED
Priority: P3 → P1
Whiteboard: [wr-reserve] → [wr-mvp]
Flags: needinfo?(aosmond)
Comment on attachment 8933744 [details] [diff] [review]
0001-Bug-1421818-Disable-D2D-backend-if-WebRender-is-enab.patch

Disabled the GPU process for the tests because the reftest reporting is accurate then :).

try (WR enabled, GPU process disabled + hack to allow WR): https://treeherder.mozilla.org/#/jobs?repo=try&revision=d5c07937616c0c1c74f284a0329399df09d5caea&selectedJob=149167341

WebRender is enabled and skia is used as the backend.

> 12:43:42     INFO - REFTEST INFO | {"isDebugBuild":true,"xulRuntime":{"widgetToolkit":"windows","OS":"WINNT","XPCOMABI":"x86_64-msvc"},"smallScreen":false,"d2d":true,"dwrite":true,"gpuProcess":false,"azureCairo":false,"azureSkia":true,"skiaContent":true,"azureSkiaGL":0,"contentSameGfxBackendAsCanvas":true,"layersGPUAccelerated":true,"d3d11":false,"d3d9":false,"layersOpenGL":false,"webrender":true,"layersOMTC":true,"advancedLayers":false,"layerChecksEnabled":false,"retainedDisplayList":true,"Android":false,"cocoaWidget":false,"gtkWidget":false,"qtWidget":false,"winWidget":true,"transparentScrollbars":false,"AddressSanitizer":false,"webrtc":true,"retainedDisplayLists":true,"compareRetainedDisplayLists":false,"stylo":true,"styloVsGecko":false,"skiaPdf":false,"release_or_beta":false,"http":{"userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0","appName":"Mozilla","appVersion":"5.0","platform":"Windows","oscpu":"Windows NT 10.0; Win64; x64","misc":"rv:59.0"},"haveTestPlugin":true,"windowsDefaultTheme":true,"nativeThemePref":true,"gpuProcessForceEnabled":false,"prefs":{},"browserIsRemote":true,"asyncPan":true,"usesRepeatResampling":true}

try (WR disabled, GPU process disabled): https://treeherder.mozilla.org/#/jobs?repo=try&revision=7633ad9e5a50a45b2116ac611f1c65e04a790c66

WebRender is disabled, skia/cairo are not the default backends, and D2D is.

> 12:43:29     INFO - REFTEST INFO | {"isDebugBuild":true,"xulRuntime":{"widgetToolkit":"windows","OS":"WINNT","XPCOMABI":"x86_64-msvc"},"smallScreen":false,"d2d":true,"dwrite":true,"gpuProcess":false,"azureCairo":false,"azureSkia":false,"skiaContent":false,"azureSkiaGL":0,"contentSameGfxBackendAsCanvas":true,"layersGPUAccelerated":true,"d3d11":true,"d3d9":false,"layersOpenGL":false,"webrender":false,"layersOMTC":true,"advancedLayers":true,"layerChecksEnabled":true,"retainedDisplayList":true,"Android":false,"cocoaWidget":false,"gtkWidget":false,"qtWidget":false,"winWidget":true,"transparentScrollbars":false,"AddressSanitizer":false,"webrtc":true,"retainedDisplayLists":true,"compareRetainedDisplayLists":false,"stylo":true,"styloVsGecko":false,"skiaPdf":false,"release_or_beta":false,"http":{"userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0","appName":"Mozilla","appVersion":"5.0","platform":"Windows","oscpu":"Windows NT 10.0; Win64; x64","misc":"rv:59.0"},"haveTestPlugin":true,"windowsDefaultTheme":true,"nativeThemePref":true,"gpuProcessForceEnabled":false,"prefs":{},"browserIsRemote":true,"asyncPan":true,"usesRepeatResampling":true}
Attachment #8933744 - Flags: review?(jmuizelaar)
No GPU process should work, no-e10s would be bad because of WR+ANGLE+WebGL
(In reply to Milan Sreckovic [:milan] from comment #4)
> No GPU process should work, no-e10s would be bad because of WR+ANGLE+WebGL

It was just a hack because the reporting for the default content backend in the reftests changes depending on whether or not the GPU process is in use.
See Also: → 1422288
Comment on attachment 8933744 [details] [diff] [review]
0001-Bug-1421818-Disable-D2D-backend-if-WebRender-is-enab.patch

Review of attachment 8933744 [details] [diff] [review]:
-----------------------------------------------------------------

Can we break things into more logical pieces than Pre and Post?
Attachment #8933744 - Flags: review?(jmuizelaar) → review-
Attachment #8955173 - Flags: review?(jmuizelaar)
Attachment #8955173 - Flags: review?(jmuizelaar) → review+
Pushed by aosmond@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/9922610d010e
Disable D2D backend if WebRender is enabled. r=jrmuizel
https://hg.mozilla.org/mozilla-central/rev/9922610d010e
Status: ASSIGNED → RESOLVED
Closed: Last year
Resolution: --- → FIXED
Target Milestone: --- → mozilla60
See Also: → 1432039
Depends on: 1413392
I don't know if this patch worked. The sandbox dump for reftests on windows10-64-qr (e.g. [1]) show d2d:true. Is this expected?

[1] https://treeherder.mozilla.org/logviewer.html#?job_id=172336804&repo=try&lineNumber=1675
Flags: needinfo?(aosmond)
By the way Bug 1413392 re-enabled d2d only for canvas.
You need to log in before you can comment on or make changes to this bug.