Closed Bug 1678136 Opened 4 years ago Closed 4 years ago

layers.gpu-process.enabled on Windows seems to be required now, should probably ignore the pref

Categories

(Core :: Graphics, defect)

Firefox 84
defect

Tracking

()

RESOLVED FIXED
85 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox83 --- unaffected
firefox84 --- fixed
firefox85 --- fixed

People

(Reporter: zombie, Assigned: sotaro)

References

(Regression)

Details

(Keywords: regression)

Attachments

(2 files)

My main profile Beta just updated to 84, and now drawing of the UI (and content to a lesser degree) flickers real bad.

See attached video.

It doesn't reproduce with a clean profile, but I managed to mozregression this push log:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=56302c29923559e7ae607cbb654b5e5d060d9329&tochange=8dbba1ce63e803c5a14bd92ce8f49541760a46f6

From that, bug 1595994 looks like an only graphics-related thing, even though it says it's about media playback.

Jean-Yves, can you please take a look?

Flags: needinfo?(jyavenard)

A few more notes

  • it's a windows laptop with i7 and integrated graphics.
  • the profile is old, so this could be some pref I changed long ago, though I don't remember changing anything graphics-related recently.
  • I think I managed to disable webrender, but the issue still persists.

Seeing it doesn't reproduce with a clean profile, I'm not sure what we can action here.

And yes, bug 1595994 is only media playback related, it's about decoding content out of process.
Bug 1595994 introduced a regression on non e10s , which was resolved in 1672420. It's the only thing related to graphics that could explain what you've described.

Status: NEW → RESOLVED
Closed: 4 years ago
Flags: needinfo?(jyavenard)
Resolution: --- → WORKSFORME

Bug 1668875 landed shortly before this. Emilio, please check it didn't regress this.

After a lot of trial and error, I found this is caused by the layers.gpu-process.enabled pref. I think I remember disabling this a year+ ago because of some crashes during initial rollout.

It looks like the check for e10s from bug 1672420 is not correct, that should maybe test if there's a GPU process or not.

Or alternatively, the gpu-process pref should be ignored if it is now required for basic browser functionality at all. What do you think Jean-Yves?

Flags: needinfo?(jyavenard)

This isn't my area of expertise, I'm not sure why you ni? me sorry.

Flags: needinfo?(jyavenard)

It looked to me like your patch in bug 1595994 changed firefox to now require a GPU process, or maybe that your patch in bug 1672420 only removed the requirement for the non-e10s case.

I'll just reopen this to let graphics folks see if/how this needs to be addressed.

Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Summary: Drawing of UI on Windows flickers/doesn't paint often → layers.gpu-process.enabled on Windows seems to be required now, should probably ignore the pref

Set release status flags based on info from the regressing bug 1595994

I confirmed the problem by disabling GPU process by changing pref layers.gpu-process.enabled=false and with Direct3D 11 (Advanced Layers).

It seems that https://phabricator.services.mozilla.com/D91699 of Bug 1595994 seemed to break the problem. And bug 1672420 did not fix the problem.

Assignee: nobody → sotaro.ikeda.g
Attachment #9189686 - Attachment description: Bug 1678136 - Add handling of GPU process disabled case → Bug 1678136 - Lazily initialize SyncObject
Pushed by sikeda.birchill@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f13553c2d926
Lazily initialize SyncObject r=mattwoodrow
Status: REOPENED → RESOLVED
Closed: 4 years ago4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 85 Branch

The patch landed in nightly and beta is affected.
:sotaro, is this bug important enough to require an uplift?
If not please set status_beta to wontfix.

For more information, please visit auto_nag documentation.

Flags: needinfo?(sotaro.ikeda.g)

Comment on attachment 9189686 [details]
Bug 1678136 - Lazily initialize SyncObject

Beta/Release Uplift Approval Request

  • User impact if declined: Rendering has problems when GPU process does not exist. It could happen with pref layers.gpu-process.enabled=false.
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): It changes only SyncObjectD3D11Client initialization. And its fix was already confirmed on nightly.
  • String changes made/needed: None
Flags: needinfo?(sotaro.ikeda.g)
Attachment #9189686 - Flags: approval-mozilla-beta?

Comment on attachment 9189686 [details]
Bug 1678136 - Lazily initialize SyncObject

Approved for 84.0b7.

Attachment #9189686 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: