Closed Bug 1138863 Opened 9 years ago Closed 9 years ago

[OMTC] [Direct3D11] Website page content blinking, flashing and flickering on black when scrolling

Categories

(Core :: Graphics: Layers, defect)

37 Branch
x86_64
Windows 7
defect
Not set
major

Tracking

()

VERIFIED FIXED
mozilla37
Tracking Status
firefox36 --- wontfix
firefox37 - verified
firefox38 - verified
firefox39 - verified
firefox40 --- unaffected

People

(Reporter: Virtual, Assigned: nical)

References

()

Details

(Keywords: nightly-community, regression, Whiteboard: [gfx-noted] [fixed by patch from bug #1145585])

Attachments

(3 files)

[Tracking Requested - why for this release]: Regression



39.0a1 - affected - constant website page content blinking, flashing and flickering on scrolling
38.0a2 - affected - constant website page content blinking, flashing and flickering on scrolling
37.0b1 - in some way affected - sometimes website page content blinking, flashing and flickering on scrolling
36.0 - in some way affected - sometimes website page content blinking, flashing and flickering on scrolling
31.5.0 ESR - not affected



affected:
OMTC + Direct3D 11 + Direct2D 1.1
OMTC + Direct3D 11 + Direct2D

not affected:
OMTC + Direct3D 9
OMTC + OpengGL + Direct2D 1.1
OMTC + OpengGL + Direct2D
OMTC + HW Acc disabled
OMTC disabled + any configuration



Detailed info:
================================================

GPU Accelerated Windows - Direct3D 11 (OMTC)

windowLayerManagerRemote - true
AzureCanvasBackend - direct2d 1.1
AzureContentBackend - direct2d 1.1
AzureFallbackCanvasBackend	 - cairo
AzureSkiaAccelerated - 0

more info: website page content blinking, flashing and flickering on scrolling

================================================

GPU Accelerated Windows - Direct3D 11 (OMTC)

windowLayerManagerRemote - true
AzureCanvasBackend - direct2d
AzureContentBackend - direct2d
AzureFallbackCanvasBackend	 - cairo
AzureSkiaAccelerated - 0

gfx.direct2d.use1_1 = false

more info: website page content blinking, flashing and flickering on scrolling

================================================

GPU Accelerated Windows - Direct3D 9 (OMTC)

windowLayerManagerRemote - true
AzureCanvasBackend - skia
AzureContentBackend - cairo
AzureFallbackCanvasBackend	 - cairo
AzureSkiaAccelerated - 1

layers.prefer-d3d9 = true

more info: no website page content blinking, flashing and flickering on scrolling;
minimize, maximize and close buttons aren't visible

================================================

GPU Accelerated Windows - OpenGL (OMTC)

windowLayerManagerRemote - true
AzureCanvasBackend - direct2d 1.1
AzureContentBackend - direct2d 1.1
AzureFallbackCanvasBackend - cairo
AzureSkiaAccelerated - 0

layers.prefer-opengl = true

more info: no website page content blinking, flashing and flickering on scrolling;
blurry fonts, whole browser window are in small artifacts on borders, web content is moved oddly - when you want to select some link etc. you need to move your mouse above or under the link some pixels as it won't work

================================================

GPU Accelerated Windows - OpenGL (OMTC)

windowLayerManagerRemote - true
AzureCanvasBackend - direct2d
AzureContentBackend - direct2d
AzureFallbackCanvasBackend - cairo
AzureSkiaAccelerated - 0

gfx.direct2d.use1_1 = false
layers.prefer-opengl = true

more info: no website page content blinking, flashing and flickering on scrolling;
blurry fonts, whole browser window are in small artifacts on borders, web content is moved oddly - when you want to select some link etc. you need to move your mouse above or under the link some pixels as it won't work

================================================

GPU Accelerated Windows - Basic (OMTC)
windowLayerManagerRemote - true
AzureCanvasBackend - skia
AzureContentBackend - cairo
AzureFallbackCanvasBackend	 - cairo
AzureSkiaAccelerated - 0

gfx.direct2d.disabled = true
layers.acceleration.disabled = true

more info: no website page content blinking, flashing and flickering on scrolling

================================================

GPU Accelerated Windows - Basic 
windowLayerManagerRemote - false
AzureCanvasBackend - direct2d 1.1
AzureContentBackend - direct2d 1.1
AzureFallbackCanvasBackend - cairo
AzureSkiaAccelerated - 0

layers.offmainthreadcomposition.enabled = false

more info: no website page content blinking and flashing on scrolling;
minimaze, maximize and close buttons blinking, flashing and flickering on scrolling up

================================================

GPU Accelerated Windows - Basic 
windowLayerManagerRemote - false
AzureCanvasBackend - direct2d
AzureContentBackend - direct2d
AzureFallbackCanvasBackend - cairo
AzureSkiaAccelerated - 0

layers.offmainthreadcomposition.enabled = false
gfx.direct2d.use1_1 = false

more info: no website page content blinking, flashing and flickering on scrolling;
minimaze, maximize and close buttons blinking, flashing and flickering on scrolling up

================================================

GPU Accelerated Windows - Basic 
windowLayerManagerRemote - false
AzureCanvasBackend - skia
AzureContentBackend - cairo
AzureFallbackCanvasBackend - cairo
AzureSkiaAccelerated - 0

layers.offmainthreadcomposition.enabled = false
layers.prefer-d3d9 = true

more info: no website page content blinking, flashing and flickering on scrolling;
minimaze, maximize and close buttons blinking, flashing and flickering on scrolling up

================================================

layers.offmainthreadcomposition.enabled = false
layers.prefer-opengl = true - is not respected and fall off to Direct2D 1.1

================================================

layers.offmainthreadcomposition.enabled = false
gfx.direct2d.use1_1 = false
layers.prefer-opengl = true - is not respected and fall off to Direct2D

================================================

GPU Accelerated Windows - Basic
windowLayerManagerRemote - false
AzureCanvasBackend - skia
AzureContentBackend - cairo
AzureFallbackCanvasBackend - cairo
AzureSkiaAccelerated - 0

gfx.direct2d.disabled = true
layers.acceleration.disabled = true
layers.offmainthreadcomposition.enabled = false

more info: no website page content blinking, flashing and flickering on scrolling
See Also: → 1138934
Bug 1138934 has steps to reproduce at least one of these.
No need to STR as they're in bug topic, so just open attached website page URL and scroll it to get content blinking, flashing and flickering on black when your configuration Firefox will have enabled OMTC and Direct3D 11.
Fair enough, except my computer only reproduces the "black squares" from bug 1138934 (when I force D3D11 + Cairo), and no flickering or problems otherwise when left in the default D3D11 + D2D1.1.
For the record, I'm on Windows 7, with Nvidia Quadro 600, driver version 9.18.13.4121 (dated 11-25-2014.)
[Tracking Requested - why for this release]:

Tracking this for 37, 38, and 39. 
I checked with Sylvestre on irc and he doesn't want to track this for 36.
Whiteboard: [gfx-noted]
Could you try with this build? http://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/nsilva@mozilla.com-9d6673b7ea32/try-win32-debug/

It's a debug build with more assertions enabled. It'd be interesting to see if you get a crash with these steps and if so, what information the stack of the crash can tell us.
Flags: needinfo?(BernesB)
(In reply to Nicolas Silva [:nical] from comment #7)
I'm not able to reproduce it with this build:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
Build ID - 20150310095349
Built from https://hg.mozilla.org/try/rev/9d6673b7ea32

but it's still reproducible on latest Nightly;
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
Build ID - 20150311030203
Built from https://hg.mozilla.org/mozilla-central/rev/fd8e079d6335
Flags: needinfo?(BernesB)
Assignee: nobody → nical.bugzilla
(In reply to Virtual_ManPL [:Virtual] from comment #8)
> (In reply to Nicolas Silva [:nical] from comment #7)
> I'm not able to reproduce it with this build:
> 
> but it's still reproducible on latest Nightly;

That's unfortunate, could you try with this one: http://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/nsilva@mozilla.com-97495ee9955e/try-win32/
It's a release build with the assertions I am interested in enabled.

Thanks!
This build is also affected:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
Build ID - 20150312065750
Built from https://hg.mozilla.org/try/rev/97495ee9955e
Attached image nobug.png β€”
(In reply to Virtual_ManPL [:Virtual] from comment #11)
> Created attachment 8576813 [details]
> Log from CLI

It's from this build
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
Build ID - 20150310095349
Built from https://hg.mozilla.org/try/rev/9d6673b7ea32
(In reply to Virtual_ManPL [:Virtual] from comment #10)
> This build is also affected:
> Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
> Build ID - 20150312065750
> Built from https://hg.mozilla.org/try/rev/97495ee9955e

The reproduced and the browser didn't crash?
So it appears to be timing related, perhaps shared DXGI textures not being synchronzied properly. The single synchronized texture path from bug 1088414 landed in 37 so it shouldn't have caused the regression since 36 and 37 are affected the same way.
According to comment 0, things got worse between 37 and 38 (currently beta and aurora), but I don't see big differences between the two (no diff on CompsoitorD3D11.cpp and TextureD3D11.cpp, direct2d1.1 is enabled in both cases). Milan, do you remember if anything risky landed around that time?
Adding ni on Milan so that he sees comment 17 when he gets back from PTO.

As we're very late in the 37 Beta cycle and don't yet know the cause of this bug, I'm marking 37 as wontfix.
(In reply to Nicolas Silva [:nical] from comment #17)
> According to comment 0, things got worse between 37 and 38 (currently beta
> and aurora), but I don't see big differences between the two (no diff on
> CompsoitorD3D11.cpp and TextureD3D11.cpp, direct2d1.1 is enabled in both
> cases). Milan, do you remember if anything risky landed around that time?

Given that this may have been around from before 36 (no mention of 32-35 in this bug), I'm not clear what it could be.  If I was guessing, a fallout from bug 1107297 would be my guess, some of it improved with bug 1117925.

Nical, I wasn't clear on whether you can reproduce this or not - if not, maybe cook up a build that backs out bug 1107297 and see if the reporter can reproduce the problem?
Flags: needinfo?(milan)
When I finally have time to find a regression range, I don't need to anymore, as I can't reproduce it in latest Nightly.
But I'm curious guy and I found a fix range

Last bad:
https://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/mozilla-inbound-win32/1427330877/

First good:
https://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/mozilla-inbound-win32/1427330944/

Fix range:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=5d9b7601850c&tochange=2118109cc0e2

Looking on these 3 bugs in changelog, I suspect the patch from bug #1145585 fixed this issue. The patch was also pushed to Firefox 37 and 38.
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Depends on: 1145585
Resolution: --- → FIXED
Whiteboard: [gfx-noted] → [gfx-noted] [fixed by patch from bug #1145585]
Thanks for confirming this.
Fabulous. Thank you, Virtual!

Untracking this for 37+. If it crops up again please don't hesitate to renominate for tracking.
Target Milestone: --- → mozilla37
Version: 38 Branch → 37 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: