Closed Bug 1148978 Opened 9 years ago Closed 8 years ago

[e10s] Flash plugins fail to paint correctly when open sidebar

Categories

(Core Graveyard :: Plug-ins, defect)

x86_64
Windows 7
defect
Not set
normal

Tracking

(e10sm9+, firefox46 affected, firefox47 fixed, firefox48 fixed)

RESOLVED FIXED
mozilla48
Tracking Status
e10s m9+ ---
firefox46 --- affected
firefox47 --- fixed
firefox48 --- fixed

People

(Reporter: alice0775, Assigned: jimm)

References

Details

Attachments

(11 files, 1 obsolete file)

Attached image screenshot (obsolete) —
Build Identifier:
https://hg.mozilla.org/mozilla-central/rev/385840329d91
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0 ID:20150329030238

Steps To Reproduce:
1. Open http://edition.cnn.com in [Tab 2] and play back any flash video (eg. http://edition.cnn.com/2014/11/23/showbiz/music/katy-perry-super-bowl/index.html?hpt=en_bn1)
2. Open sidebar and close (ie. Press Ctrl+B several times)
basically a dupe of bug 1137944, with different str.
Blocks: e10s-plugins
Depends on: 1137944
No longer blocks: e10s-plugins
Status: NEW → RESOLVED
Closed: 9 years ago
No longer depends on: 1137944
Resolution: --- → DUPLICATE
I can still reproduced on latest tinderbox m-c build which includes patch of Bug 1137944.

https://hg.mozilla.org/mozilla-central/rev/49d87bbe0122d894c8e45f0b409c42dfe1c36737
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0 ID:20151007103242
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
Whiteboard: [dupeme]
I'm not able to reproduce. I'll test again tomorrow with nightly.

http://edition.cnn.com/2015/10/07/politics/u-s-diverts-aircraft-to-avoid-russian-fighter/index.html
(In reply to Jim Mathies [:jimm] from comment #4)
> I'm not able to reproduce. I'll test again tomorrow with nightly.
> 
> http://edition.cnn.com/2015/10/07/politics/u-s-diverts-aircraft-to-avoid-
> russian-fighter/index.html

I cannot reproduce on this page too.


However, I can reproduce the problem testcase attachment 8650900 [details] of Bug 1196539 and http://edition.cnn.com/2014/11/23/showbiz/music/katy-perry-super-bowl/index.html?hpt=en_bn1 .
Attached image screenshot
Not seeing this at all in today's nightly on win7. Can you post your about support info?
Blocks: e10s-plugins
I can still reproduce on Nightly44.0a1

https://hg.mozilla.org/mozilla-central/rev/e8c7dfe727cd970e2c3294934e2927b14143c205
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0 ID:20151018030250



Application Basics
------------------

Name: Firefox
Version: 44.0a1
Build ID: 20151018030250
Update Channel: nightly
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0
Multiprocess Windows: 1/1 (default: true)
Safe Mode: false

Crash Reports for the Last 3 Days
---------------------------------

Report ID: bp-f1c7b58d-d45c-4c00-beda-9c9a42151018
Submitted: 1 day ago

Report ID: bp-752c4e10-eaf2-4adb-8ca3-984d92151018
Submitted: 1 day ago

All Crash Reports (including 3 pending crashes in the given time range)

Extensions
----------

Graphics
--------

Adapter Description: AMD Radeon HD 6450
Adapter Drivers: aticfx64 aticfx64 aticfx64 aticfx32 aticfx32 aticfx32 atiumd64 atidxx64 atidxx64 atiumdag atidxx32 atidxx32 atiumdva atiumd6a atitmm64
Adapter RAM: 1024
Asynchronous Pan/Zoom: wheel input enabled
ClearType Parameters: Gamma: 2200 Pixel Structure: R ClearType Level: 100 Enhanced Contrast: 300
Device ID: 0x6779
Direct2D Enabled: true
DirectWrite Enabled: true (6.2.9200.17461)
Driver Date: 7-28-2015
Driver Version: 15.200.1062.1003
GPU #2 Active: false
GPU Accelerated Windows: 1/1 Direct3D 11 (OMTC)
Subsys ID: 23111787
Supports Hardware H264 Decoding: Yes
Vendor ID: 0x1002
WebGL Renderer: Google Inc. -- ANGLE (AMD Radeon HD 6450 Direct3D11 vs_5_0 ps_5_0)
windowLayerManagerRemote: true
AzureCanvasBackend: direct2d 1.1
AzureContentBackend: direct2d 1.1
AzureFallbackCanvasBackend: cairo
AzureSkiaAccelerated: 0

Important Modified Preferences
------------------------------

browser.cache.disk.capacity: 358400
browser.cache.disk.filesystem_reported: 1
browser.cache.disk.smart_size.first_run: false
browser.cache.disk.smart_size.use_old_max: false
browser.cache.frecency_experiment: 4
browser.download.importedFromSqlite: true
browser.places.smartBookmarksVersion: 7
browser.startup.homepage_override.buildID: 20151018030250
browser.startup.homepage_override.mstone: 44.0a1
dom.apps.reset-permissions: true
dom.mozApps.used: true
extensions.lastAppVersion: 44.0a1
gfx.direct3d.last_used_feature_level_idx: 0
media.gmp-eme-adobe.abi: x86-msvc-x64
media.gmp-eme-adobe.lastUpdate: 1445251578
media.gmp-eme-adobe.version: 15
media.gmp-gmpopenh264.abi: x86-msvc-x64
media.gmp-gmpopenh264.lastUpdate: 1445251580
media.gmp-gmpopenh264.version: 1.4
media.gmp-manager.buildID: 20151018030250
media.gmp-manager.lastCheck: 1445251570
media.hardware-video-decoding.failed: false
network.cookie.prefsMigrated: true
network.predictor.cleaned-up: true
places.history.expiration.transient_current_max_pages: 104858
plugin.disable_full_page_plugin_for_types: application/pdf
privacy.sanitize.migrateClearSavedPwdsOnExit: true
security.sandbox.content.tempDirSuffix: {9f8d99ec-de82-4908-9887-951334cb547f}

Important Locked Preferences
----------------------------

JavaScript
----------

Incremental GC: true

Accessibility
-------------

Activated: false
Prevent Accessibility: 0

Library Versions
----------------

NSPR
Expected minimum version: 4.10.10
Version in use: 4.10.10

NSS
Expected minimum version: 3.20.1 Basic ECC
Version in use: 3.20.1 Basic ECC

NSSSMIME
Expected minimum version: 3.20.1 Basic ECC
Version in use: 3.20.1 Basic ECC

NSSSSL
Expected minimum version: 3.20.1 Basic ECC
Version in use: 3.20.1 Basic ECC

NSSUTIL
Expected minimum version: 3.20.1
Version in use: 3.20.1

Experimental Features
---------------------
Attached file swf file
STR
1. Open attached
2. Open Sidebar (Ctlrl+B)

AR:
Sidebar graphic glitch appears
Attached image screenshot
Still not seeing this, even in classic windows on win7.
STR
1. Open 
2. Keydown Ctlrl+B and hold foa while to open/close sidebar


AR:
Sidebar graphic glitch appears
Keywords: qawanted
s/foa/for a/
(In reply to Alice0775 White from comment #12)
> STR
> 1. Open 
> 2. Keydown Ctlrl+B and hold foa while to open/close sidebar
> 
> 
> AR:
> Sidebar graphic glitch appears

Even if I hold it long enough to generate repeat key events, I always end up with a cleanly painted browser once I release the keys.

I wonder if this has something to do with graphics drivers.

How bad is this Alice? Do you see it all the time?
Attached image jimsmachine.png
I got this once, but it's unrelated to the plugin windowing work.
Very easy to reproduce if I enabled e10s. 
Just open the sidebar. no need repeat key for me.


STR
1. Open http://edition.cnn.com/2014/11/23/showbiz/music/katy-perry-super-bowl/index.html?hpt=en_bn1 or attachment 8675621 [details] or attachment 8650900 [details]
2. Keydown Ctrl+B to open sidebar
I can also reproduce with disabled HWA.
Firefox glitch. it is completely broken.
Still broken on 2016.

https://hg.mozilla.org/mozilla-central/rev/22f51211915bf7daff076180847a7140d35aa353
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0 ID:20160101030330
tracy, whern you have a chance can you try reproducing this on XP with alice's test case? I don't see any issues but she's still running into something. Also please test with the aero basic desktop theme enabled.
Flags: needinfo?(twalker)
(In reply to Jim Mathies [:jimm] from comment #22)
> tracy, whern you have a chance can you try reproducing this on XP with
> alice's test case? I don't see any issues but she's still running into
> something. Also please test with the aero basic desktop theme enabled.

clarification: test on xp with any theme and win7 + aero basic.
I don't have access to XP. However, I can reproduce on Win 7 + Aero basic (and other themes) with the attached swf file. I can not get the bug to reproduce with the Katy Perry video.
Flags: needinfo?(twalker)
(In reply to [:tracy] Tracy Walker from comment #24)
> I don't have access to XP. However, I can reproduce on Win 7 + Aero basic
> (and other themes) with the attached swf file. I can not get the bug to
> reproduce with the Katy Perry video.

can you post a screenshot of what you're seeing?
Flags: needinfo?(twalker)
Attached image bug1148978.tiff
Not any different than Alice's third screenshot. I also realized that I can reproduce screenshot one.  But only by using the keyboard shortcut to toggle the bookmarks sidebar super rapidly.  But it doesn't "stick" like the test file does.
Flags: needinfo?(twalker)
This is a flash invalidation and paint issue caused by resizing and positioning the plugin window. I still don't feel this needs to block a release as it's pretty corner case. But it would be nice to look into a fix. Maybe we can trigger an invalidation of content plugins windows after we size them.
It can also occur with full screen mode.

See https://dl.dropboxusercontent.com/u/95157096/85f61cf7/xk7o2987qo.mp4
I did managed to reproduce this issue on Aurora(46.0a2). The behaviour was like in attachment 8675621 [details] or attachment 8650900 [details] or comment 28 .

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:46.0) Gecko/20100101 Firefox/46.0
Build ID: 20160203004041


Thank you,
Vlad
Milan, it looks like we have invalidation issues. This looks similar to some the things I've seen on my laptop without flash installed, so I'm not convinced its actually plugin or flash related. Can you get someone to dig into it?
Flags: needinfo?(milan)
I'll file another bug for the full screen issues reported in comment #28
Flags: needinfo?(twalker)
David, can you join the party?
Assignee: nobody → dvander
Flags: needinfo?(milan) → needinfo?(dvander)
This is not a very fun party :) I'll take a look.

Alice and/or Vlad, what version of Flash do you have installed?
Flags: needinfo?(dvander) → needinfo?(alice0775)
Flags: needinfo?(vlad.bacia)
The sidebar flash redraw bug is pretty rare, about on out of every ten tries.

I tried to reproduce the plugin tearing over chrome portion of this and wasn't able to using this test case - 

https://dl.dropboxusercontent.com/u/95157096/85f61cf7/hg9wvl1t6q.swf

We had some issues with this prior to getting composition gated on plugin window positioning. AFIK those issues are fixed.
(In reply to David Anderson [:dvander] from comment #33)
> This is not a very fun party :) I'll take a look.
>
> Alice and/or Vlad, what version of Flash do you have installed?

I am using up to date version 20.0.0.286.
Flags: needinfo?(alice0775)
(In reply to blinky from comment #28)
> It can also occur with full screen mode.
> 
> See https://dl.dropboxusercontent.com/u/95157096/85f61cf7/xk7o2987qo.mp4

filed Bug 1245972
Flags: needinfo?(twalker)
(In reply to Jim Mathies [:jimm] from comment #34)
> The sidebar flash redraw bug is pretty rare, about one out of every ten tries.
> 
> I tried to reproduce the plugin tearing over chrome portion of this and
> wasn't able to using this test case - 
> 
> https://dl.dropboxusercontent.com/u/95157096/85f61cf7/hg9wvl1t6q.swf

This testcase shows the bug 10/10. Even 100/100. It never redraws sidebar correctly.
Sometimes only header of sidebar isn't painted, but it still counts as "flash redraw issue"
My Info:   Win7_64, Nightly 46, 32bit, ID 20160204030229
(In reply to David Anderson [:dvander] from comment #33)
> Alice and/or Vlad, what version of Flash do you have installed?

Hi,

I have version 20,0,0,286 installed.
Flags: needinfo?(vlad.bacia)
Blocks: 1245994
Blocks: 1245995
(In reply to arni2033 from comment #37)
> (In reply to Jim Mathies [:jimm] from comment #34)
> > The sidebar flash redraw bug is pretty rare, about one out of every ten tries.
> > 
> > I tried to reproduce the plugin tearing over chrome portion of this and
> > wasn't able to using this test case - 
> > 
> > https://dl.dropboxusercontent.com/u/95157096/85f61cf7/hg9wvl1t6q.swf
> 
> This testcase shows the bug 10/10. Even 100/100. It never redraws sidebar
> correctly.
> Sometimes only header of sidebar isn't painted, but it still counts as
> "flash redraw issue"
> My Info:   Win7_64, Nightly 46, 32bit, ID 20160204030229


I have no issue with this test case on win7 with a composited desktop. The side bar and flash render correctly after repeatedly hitting ctrl-b. I'll check on a different theme.
Attached file flash testcase
(In reply to Jim Mathies [:jimm] from comment #40)
> Created attachment 8718813 [details]
> flash testcase

I can reproduce on Windows7 Aero and Classic style.
https://hg.mozilla.org/mozilla-central/rev/904f3554c08488c53d24deb20a486600ddddd56b
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0 ID:20160211075855

STR:
1. Reduce window width about 600px
2. Open the testcase attachment 8718813 [details]
3. Open sidebar
AR:
Sidebar header and splitter repaint fails.
Attached image good render.jpg
This is what I see with a small window. Alice, are you seeing something different?
Attached image bug screenshot
It is 100 % reproducible very easy.
No longer blocks: 1245995
Blocks: 1245972
This is similar to the problems we had with scrolling content with plugins. In the content case we delayed composition until the plugin window was in the proper place to prevent tearing of surrounding content. In this case I believe chrome and content composition are decoupled such that we paint chrome before content plugin updates have been processed.

So what happen here is:

1) the browser window reflows
2) chrome areas paint and compose
3) content layer and plugin updates flush over from the content process
4) the plugin window is positioned/sized
5) content repaints
6) the window is left with unpainted chrome due to Windows child window clipping behavior

bug 1245972 is a dupe of this where the test case involves fullscreen vs. a sidebar.
Attachment #8585233 - Attachment is obsolete: true
Note this reproduces best on slower systems (netbooks or vms).
I'm not likely going to get to this soon.
Assignee: dvander → nobody
Assignee: nobody → jmathies
 https://treeherder.mozilla.org/#/jobs?repo=try&revision=e1dc73d1561d

I'm not sure if this will help, but it might.
(In reply to Jim Mathies [:jimm] from comment #47)
>  https://treeherder.mozilla.org/#/jobs?repo=try&revision=e1dc73d1561d
> 
> I'm not sure if this will help, but it might.

will try again, builds never triggered.
I've managed to repo this on my main system and a laptop when I turn off accelerated rendering.

GPU Accelerated Windows	0/1 Basic (OMTC) 

Comment 8 indicates this is not isolated to basic layers though. Alice, can you confirm?
Flags: needinfo?(alice0775)
(In reply to Jim Mathies [:jimm] from comment #51)
> I've managed to repo this on my main system and a laptop when I turn off
> accelerated rendering.
> 
> GPU Accelerated Windows	0/1 Basic (OMTC) 
> 
> Comment 8 indicates this is not isolated to basic layers though. Alice, can
> you confirm?


I can also reproduce the problem when HWA is disabled.

Graphics
--------

Adapter Description: AMD Radeon HD 6450
Adapter Drivers: aticfx64 aticfx64 aticfx64 aticfx32 aticfx32 aticfx32 atiumd64 atidxx64 atidxx64 atiumdag atidxx32 atidxx32 atiumdva atiumd6a atitmm64
Adapter RAM: 1024
Asynchronous Pan/Zoom: wheel input enabled; touch input enabled
ClearType Parameters: Gamma: 2200 Pixel Structure: R ClearType Level: 100 Enhanced Contrast: 300
Device ID: 0x6779
DirectWrite Enabled: false (6.2.9200.17568)
Driver Date: 7-28-2015
Driver Version: 15.200.1062.1003
GPU #2 Active: false
GPU Accelerated Windows: 0/1 Basic (OMTC)
Subsys ID: 23111787
Supports Hardware H264 Decoding: No; Hardware video decoding disabled or blacklisted
Vendor ID: 0x1002
WebGL Renderer: Google Inc. -- ANGLE (AMD Radeon HD 6450 Direct3D11 vs_5_0 ps_5_0)
windowLayerManagerRemote: true
AzureCanvasAccelerated: 0
AzureCanvasBackend: skia
AzureContentBackend: cairo
AzureFallbackCanvasBackend: cairo
Flags: needinfo?(alice0775)
The original concern here was sync paints sent to the child window which could cause deadlocks in the browser. This is addressed by some code in our WM_PAINT hanlder that picks these events up and forwards them over async to the plugin process.

The other concern was overhead, each time we move one of these windows and trigger a paint we have to compose. When we were trying to update plugin position during scrolling this caused a lot of extra painting. Now that we've decided to stick with hiding these windows that overhead isn't an issue.
Attachment #8734359 - Flags: review?(matt.woodrow)
With part 1 we no longer need to do this crap, so lets get rid of it. I kept the flag in AutoResolveRefLayers which returns the result of UpdatePluginWindowState. I'm not using it here but I think we might find a use for it down the road.
Attachment #8734360 - Flags: review?(matt.woodrow)
Attachment #8734359 - Flags: review?(matt.woodrow) → review+
Attachment #8734360 - Flags: review?(matt.woodrow) → review+
Keywords: checkin-needed
Depends on: 1260736
No longer depends on: 1260736
https://hg.mozilla.org/mozilla-central/rev/b2feb217e8f9
https://hg.mozilla.org/mozilla-central/rev/f6306cddab36
Status: REOPENED → RESOLVED
Closed: 9 years ago8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla48
Jim, should this fix be uplifted to Aurora 47 in preparation for our e10s experiments on Beta 47?
Flags: needinfo?(jmathies)
Flags: needinfo?(jmathies)
Attachment #8734359 - Flags: approval-mozilla-aurora?
Comment on attachment 8734360 [details] [diff] [review]
part 2 - get rid of composition deferment

Approval Request Comment
[Feature/regressing bug #]:
e10s related plugin issue
[User impact if declined]:
removing some kludgy code that could interfere with rendering. I'd like to get this into our next beta experiment. 
[Describe test coverage new/current, TreeHerder]:
on mc for a couple weeks.
[Risks and why]: 
modest, messes with plugin painting and messaging.
[String/UUID change made/needed]:
none
Attachment #8734360 - Flags: approval-mozilla-aurora?
s/couple weeks/one week
Comment on attachment 8734360 [details] [diff] [review]
part 2 - get rid of composition deferment

Medium risk makes me anxious but I trust Jim's judgement call here. Aurora47+
Attachment #8734360 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Attachment #8734359 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Blocks: 1245995
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.