Closed Bug 1710400 Opened 1 year ago Closed 8 months ago

xfce + deprecated non-modesetting driver: rendering problems in Firefox with webrender on Linux (skylake) (Can be fixed with recommended `sudo apt remove xserver-xorg-video-intel`)

Categories

(Core :: Graphics: WebRender, defect)

Firefox 88
x86_64
Linux
defect

Tracking

()

RESOLVED FIXED
94 Branch
Tracking Status
firefox-esr78 --- disabled
firefox-esr91 94+ fixed
firefox92 --- wontfix
firefox93 --- wontfix
firefox94 --- verified

People

(Reporter: bugzilla, Assigned: rmader)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: correctness, regression)

Attachments

(3 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36

Steps to reproduce:

Upgraded to firefox 88.0

Actual results:

All tabs are blank. Tab bar and URL bar are updated intermittently, if at all. Hamburger menu is missing text for some entries.

The window title does appear to be updated, and by typing blindly into the URL bar I can make the title update, so I think it's a rendering problem.

More info:

If I try to open the devtools with ctrl-shift-I, nothing happens at first, but if I switch to another window and back, the devtools appear.

The Bugbug bot thinks this bug should belong to the 'Firefox::Address Bar' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.

Component: Untriaged → Address Bar

Moving back to general because it looks like a more general issue.

I'd suggest to check your graphic drivers for new versions.
As a second suggestion you could try to force disable webrender, if it got enabled, using gfx.webrender.force-disabled = true in about:config (or just disable it if you enabled it manually) and checking if that helps.

This may also help: https://support.mozilla.org/en-US/kb/troubleshoot-firefox-issues-using-safe-mode

Component: Address Bar → General

Thanks. Can confirm that running in safe mode fixes the problem, as does disabling webrender.

As for updating the graphic drivers: I'm using the latest packages in Ubuntu 20.04. I'd prefer not to have to start installing binary packages from elsewhere, but could do if it would help diagnose the issue.

I should mention for context that this seems similar to some problems I had with applications based on Electron 11 (https://github.com/electron/electron/issues/27889).

Hey Richard,
If running Safe mode fixes the problem you might want to try a fresh new profile could help. You can find more about creating a new profile here : https://support.mozilla.org/en-US/kb/troubleshoot-and-diagnose-firefox-problems#w_6-create-a-new-firefox-profile .
If possible, you can test this issue on the nightly build as well. Download the build from : https://www.mozilla.org/en-US/firefox/nightly/all/ .
Let us know if any of these works as well.

Flags: needinfo?(bugzilla)

Thanks. No improvement with a new profile or with the latest nightly.

Flags: needinfo?(bugzilla)

Setting a component for this issue in order to get the dev team involved.
If you feel it's an incorrect one please feel free to change it to a more appropriate one.

Component: General → Layout: Images, Video, and HTML Frames
Product: Firefox → Core
Component: Layout: Images, Video, and HTML Frames → Graphics: WebRender

Hi Richard, could you please go to about:support, click on "Copy text to clipboard", and attach the copied text to this bug. If you could do that both with webrender enabled (buggy) and webrender force-disabled (working correctly) that would be really helpful. Thanks!

Additionally, if you would be able to use mozregression to determine what caused the bug that would be incredibly helpful! On linux it's easiest to install and run on the command line:

pip install mozregression
mozregression --good 87

This will download and run a series of versions of firefox. For each one, you answer "good" or "bad", and eventually it will tell you what change introduced the bug. If you need any help with that please let me know.

Flags: needinfo?(bugzilla)
Severity: -- → S3

Hi Jamie,

I had to expand the search space: I guess I should have tested with other versions before. Sorry if my implication that the problem was introduced in 88.0 led to any wasted time.

mozregression reports:

 9:10.55 INFO: Narrowed integration regression window from [5a71034a, 182e7b68] (3 builds) to [5a71034a, 9bfbe000] (2 builds) (~1 steps left)
 9:10.55 INFO: No more integration revisions, bisection finished.
 9:10.55 INFO: Last good revision: 5a71034a64494587bcdd74e14b10965664b6be8d
 9:10.55 INFO: First bad revision: 9bfbe000361f1046753e54677739df646220b524
 9:10.55 INFO: Pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=5a71034a64494587bcdd74e14b10965664b6be8d&tochange=9bfbe000361f1046753e54677739df646220b524

... which I guess is consistent with the fact that disabling webrender fixes the problem for me!

Flags: needinfo?(bugzilla)

Thanks for that richard. Would you be able to try running mozregression from even further back (eg an older "good" version), and this time add --pref 'gfx.webrender.all:true' to the command line?

Flags: needinfo?(bugzilla)

I wasn't able to find a "good" version with that setting enabled. v67.0 exhibits the same behaviour as I reported above. Earlier versions seem to segfault on startup.

Flags: needinfo?(bugzilla)
Summary: rendering problems in Firefox 88.0 and later → rendering problems in Firefox 88.0 and later on Linux (skylake)
Summary: rendering problems in Firefox 88.0 and later on Linux (skylake) → rendering problems in Firefox with webrender on Linux (skylake)

I am also seeing this in two situations:

  1. On a Debian buster laptop running mate, with Intel HD Graphics 620 on a Core i7-7600U. This happens immediately when Firefox is launched. I previously had disabled WebRender, but as of Firefox 92, perhaps it got re-enabled as it is now doing it on launch again. I am upgrading the laptop to bullseye to see if it resolves.

  2. On a Debian laptop (this problem existed with both buster and bullseye), things are fine initially, but start to exhibit this same behavior after a disconnecting or reconnecting an external display. That laptop has Intel CoffeeLake-H GT2 [UHD Graphics 630] and a Core i7-9750H. I reported that bug in #1730611.

The symptoms in both cases are identical to the ones reported here: the title bar changes, but the UI is generally nonresponsive or only marginally responsive.

Blocks: wr-linux
OS: Unspecified → Linux
Hardware: Unspecified → x86_64
See Also: → 1730611

Update to case 1 - the laptop where it manifested the issue at startup:

Upgrading to Debian bullseye did not address the problem.

Searching turned up discussion on https://www.reddit.com/r/firefox/comments/pkronz/ff92_disable_webrender_once_and_for_all_come_rain/ and https://www.reddit.com/r/firefox/comments/pkfjsn/petition_to_keep_gfxwebrenderforcelegacylayers_in/

Setting gfx.webrender.software to true worked around the issue. I had to run Firefox in safe mode to be able to get to about:config (note - no extensions are in use here).

Summary: rendering problems in Firefox with webrender on Linux (skylake) → xfce: rendering problems in Firefox with webrender on Linux (skylake)

I don't think the xfce tag is accurate here.

Of the two laptops I described, the first is running Mate, and the second is running xfce. The Mate one is the one experiencing the issue most directly applicable to this bug.

Found this:
https://gitlab.xfce.org/xfce/xfwm4/-/issues/578

Currently running XFCE 4.16, on debian 11.
When enabling the compositor in settings, Firefox v91 becomes completely unusable. You have to wiggle the window around so the url box updates. Pages don't load at all, unless you restart the browser. Then, it'll load partially. When running firefox in console, no errors are outputted at all.
https://files.catbox.moe/8cggd1.mp4

Enabling/disabling compositing on the fly is not necessarily well handled by applications, this is not something I would recommend.

https://gitlab.xfce.org/xfce/xfwm4/-/issues/540

It would seem that Xfce's compositor, when used with Xorg TearFree, makes Firefox's UI stop rendering.

It's the use of “present” for vblank that breaks it. But thing is, xfwm4 is not responsible for the client redering itself, so this bug is between the driver and the client, not a bug in xfwm4.
The reason it affects xfwm4 on intel is because xfwm4 automatically selects present for vblank on intel hardware.
Closing, this is not a bug in the compositor.

See Also: → 1715429

Following https://gitlab.xfce.org/xfce/xfwm4/-/issues/540, it sounds like this might be a duplicate of https://bugzilla.mozilla.org/show_bug.cgi?id=1705148? I don't have the TearFree option enabled, but from https://gitlab.xfce.org/xfce/xfwm4/-/issues/540, it sound like that might not be that relevant?

(In reply to Richard van der Hoff from comment #17)
What does $ xrandr --listproviders say? Does it end with "intel" or "modesetting"?

rav@fred:~$  xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x49 cap: 0x9, Source Output, Sink Offload crtcs: 4 outputs: 6 associated providers: 0 name:Intel

(In reply to Richard van der Hoff from comment #4)

As for updating the graphic drivers: I'm using the latest packages in Ubuntu 20.04.

You would neeed to switch to the modern modesetting driver.
https://www.phoronix.com/scan.php?page=news_item&px=Ubuntu-Debian-Abandon-Intel-DDX
https://wiki.gentoo.org/wiki/Intel#Modesetting_DDX
https://unix.stackexchange.com/questions/259733/this-driver-is-deprecated-in-favor-of-the-server-builtin-modesetting-driver-t
https://wiki.archlinux.org/title/intel_graphics#Installation

https://bbs.archlinux.org/viewtopic.php?pid=1731411#p1731411

Just remove the xf86-video-intel package, no other configuration is needed.

https://changelogs.ubuntu.com/changelogs/pool/main/x/xserver-xorg-video-intel/xserver-xorg-video-intel_2.99.917+git20200226-1/changelog

sna-let-modesetting-
handle-gen9+.diff: Dropped as the fallback to modesetting will be
fully handled in the xserver.
-- Timo Aaltonen <tjaalton@debian.org> Wed, 06 Jul 2016 22:34:40 +0300

  • Disable the patch to use modesetting on skylake for now, since it reveals
    modeset/server bugs. (Closes: #817784)

-- Timo Aaltonen <tjaalton@debian.org> Thu, 10 Mar 2016 22:16:19 +0200

  • sna-let-modesetting-handle-gen9+.diff: Use modesetting+glamor on
    Skylake and up.
    -- Timo Aaltonen <tjaalton@debian.org> Wed, 09 Mar 2016 21:26:17 +0200

deprecated in favor of -modesetting.
-- Timo Aaltonen <tjaalton@debian.org> Wed, 27 Jan 2016 14:56:38 +0200

https://packages.debian.org/en/stretch/xserver-xorg-video-intel

The use of this driver is discouraged if your hw is new enough (ca. 2007 and newer). You can try uninstalling this driver and let the server use it's builtin modesetting driver instead.

Can this bug be fixed with $ sudo apt remove xserver-xorg-video-intel and a reboot?

yes it can! thank you!

Summary: xfce: rendering problems in Firefox with webrender on Linux (skylake) → xfce + deprecated non-modesetting driver: rendering problems in Firefox with webrender on Linux (skylake) (Can be fixed with recommended `sudo apt remove xserver-xorg-video-intel`)

Another duplicate then - it's really time to blocklist the SNA driver for HW-WR.

Assignee: nobody → robert.mader
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
See Also: → 1725904

The Intel DDX driver is known to cause troubles with HW-WR and
has been deprecated by most distributions, in favor of the glamor
based "modesetting" driver.

Lets blocklist it. This will mostly affect older/legacy setups.

Note: the xrandr boilerplate code in glxtest will be useful for
better multi-screen detection in a follow up patch. The current
legacy X11 screen detection does not work in composited environments,
always reporting one single big screen with the combined size.
Xrandr allows for correct detection in such setups.

I can confirm the laptop in question had been configured some time back to force it to use the Intel driver, for an unrelated reason. I removed that restriction and this problem went away.

Duplicate of this bug: 1730611
See Also: 1715429
Duplicate of this bug: 1715429
See Also: 1730611
See Also: → 1717347
See Also: → 1725009
See Also: → 1714276
See Also: → 1708682
See Also: → 1708340
Duplicate of this bug: 1705148
See Also: → 1693445
See Also: → 1650134
See Also: 1714276
Pushed by robert.mader@posteo.de:
https://hg.mozilla.org/integration/autoland/rev/6c779cb76a8f
Blocklist HW-WR on Intel DDX driver, r=aosmond
Status: ASSIGNED → RESOLVED
Closed: 8 months ago
Resolution: --- → FIXED
Target Milestone: --- → 94 Branch
See Also: → 1714564
Duplicate of this bug: 1693445
See Also: 1693445

Looks like we should backport this one to ESR and beta as well - will request that after a couple of days.

Memo to myself: the patch here will only work on xrandr >= 1.4, however we require only 1.3 (indirectly through GTK). So there are systems where the check would early-out. OTOH xrandr 1.4 was released in early 2013, so such setups are unlikely to get HW-WR anyways.

Duplicate of this bug: 1732215

Ubuntu 21.04, Intel Graphics 630 (KBL GT2), Mesa 21.0.3
Xubuntu Desktop with Compositor enabled by default (Settings > Window manager tweaks > Compositor)

STR: Install deprecated driver and configure X11 to use it:
$ sudo apt install xserver-xorg-video-intel xubuntu-desktop
$ sudo nano /etc/X11/xorg.conf.d/my.conf

Section "Device"
        Identifier "Intel Graphics"
        Driver "intel"
        Option "TearFree" "true"
EndSection

$ sudo reboot
$ xrandr --listproviders

Providers: number : 1
Provider 0: id: 0x47 cap: 0x9, Source Output, Sink Offload crtcs: 4 outputs: 4 associated providers: 0 name:Intel

Verified fixed: https://hg.mozilla.org/integration/autoland/shortlog/6c779cb76a8f
last bad (frozen window): mozregression --repo autoland --launch 5938c983ab44
first good (Software WebRender): mozregression --repo autoland --launch 6c779cb76a8f -a about:telemetry#search=gfx.features

gfx.features.compositor webrender_software
gfx.features.webrender.status disabled:FEATURE_FAILURE_NOT_QUALIFIED
gfx.features.wrQualified.status blocklisted:FEATURE_FAILURE_DDX_INTEL


regression range:
MOZ_DISABLE_CONTENT_SANDBOX=1 mozregression --good 2016-02-01 --bad 2017-02-01 --pref gfx.webrender.all:true gfx.webrender.enabled:true layers.acceleration.force-enabled:true

4:31.96 INFO: Last good revision: f8ad071a6e14331d73fa44c8d3108bc2b66b2174 (2016-06-08)
4:31.96 INFO: First bad revision: 3ccccf8e5036179a3178437cabc154b5e04b333d (2016-06-09)
4:31.96 INFO: Pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=f8ad071a6e14331d73fa44c8d3108bc2b66b2174&tochange=3ccccf8e5036179a3178437cabc154b5e04b333d


MOZ_LOG=Widget:5 mozregression --launch 2021-09-01 -P stdout -B debug

**********
You should use a config file. Please use the --write-config command line flag to help you create one.
**********

 0:02.00 INFO: Downloading build from: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/SlJaczq4T_2uykIO94oSmg/runs/0/artifacts/public%2Fbuild%2Ftarget.tar.bz2
===== Downloaded 100% =====
 0:25.57 INFO: Running mozilla-central build built on 2021-09-01 22:16:40.975000, revision 18d7ddf6
 0:36.34 INFO: Launching /tmp/tmpr63nuzuy/firefox/firefox
 0:36.34 INFO: Application command: /tmp/tmpr63nuzuy/firefox/firefox -profile /tmp/tmpifno6ao7.mozrunner
 0:36.35 INFO: application_buildid: 20210901214553
 0:36.35 INFO: application_changeset: 18d7ddf67682e3eb75376f56e4f014c81d2596b3
 0:36.35 INFO: application_name: Firefox
 0:36.35 INFO: application_repository: https://hg.mozilla.org/mozilla-central
 0:36.35 INFO: application_version: 93.0a1
 0:36.99 INFO: b"[Socket 12241, Main Thread] WARNING: 'NS_FAILED(rv)', file /builds/worker/checkouts/gecko/netwerk/protocol/http/nsHttpHandler.cpp:371"
 0:36.99 INFO: b'[Socket 12241, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, kKnownEsrVersion) failed with result 0x80004002 (NS_NOINTERFACE): file /builds/worker/checkouts/gecko/toolkit/components/resistfingerprinting/nsRFPService.cpp:557'
 0:37.05 INFO: b'[2021-09-23T04:50:28Z WARN  rkv::backend::impl_safe::environment] `load_ratio()` is irrelevant for this storage backend.'
 0:37.55 INFO: b'[GLX] window 1a0 has VisualID 0x20'
 0:37.56 INFO: b'[Parent 12207, GLXVsyncThread] WARNING: robust_buffer_access_behavior marked as unsupported: file /builds/worker/checkouts/gecko/gfx/gl/GLContextFeatures.cpp:632'
 0:37.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::Create: creating [7fec07c51c00]: nodename Unknown'
 0:37.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   mBounds: x:0 y:0 w:1 h:1'
 0:37.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::NativeResize [7fec07c51c00] 1 1'
 0:37.79 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::Create() Toplevel [7fec07c51c00]'
 0:37.79 INFO: b'[Parent 12207: Main Thread]: D/Widget moz_container_init [0]'
 0:37.80 INFO: b'[Parent 12207: Main Thread]: D/Widget moz_container_realize() [0] GdkWindow 7fec08c5db20'
 0:37.80 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow [7fec07c51c00] type 0'
 0:37.80 INFO: b'[Parent 12207: Main Thread]: D/Widget \tmShell 7fec0f4faa60 mContainer 7fec0ab0cd90 mGdkWindow 7fec08c5db20 XID 0x3400039'
 0:37.80 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:37.80 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:37.83 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,0 -> 1 x 1, unscaled 0,0 -> 1 x 1'
 0:37.83 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:37.83 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:37.87 INFO: b'[Parent 12207, Main Thread] WARNING: NS_ENSURE_TRUE(rootFrame) failed: file /builds/worker/checkouts/gecko/dom/base/nsGlobalWindowOuter.cpp:4233'
 0:37.98 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:37.99 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.32 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::SetDrawsInTitlebar() [7fec07c51c00] State 0 mGtkWindowDecoration 1'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.34 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,0 -> 1 x 1, unscaled 0,0 -> 1 x 1'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::SetSizeMode [7fec07c51c00] 0'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget     already set'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::Resize [7fec07c51c00] 1280.000000 1040.000000'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::ResizeInt [7fec07c51c00] x:0 y:0 -> w:1280 h:1040 repaint 0 aMove 0'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget   ConstrainSize: w:1280 h;1040'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::NativeResize [7fec07c51c00] 1280 1040'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::DispatchResized() [7fec07c51c00] size [1280, 1040]'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::SetSizeMode [7fec07c51c00] 0'
 0:41.35 INFO: b'[Parent 12207: Main Thread]: D/Widget     already set'
 0:41.41 INFO: b'[GLX] window 3400039 has VisualID 0x8d'
 0:41.41 INFO: b'[Parent 12207, Renderer] WARNING: robust_buffer_access_behavior marked as unsupported: file /builds/worker/checkouts/gecko/gfx/gl/GLContextFeatures.cpp:632'
 0:41.42 INFO: b'[2021-09-23T04:50:32Z WARN  webrender::device::gl] Missing optimized shader source for gpu_cache_update'
 0:41.42 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::SetCompositorWidgetDelegate [7fec07c51c00] 7febf1786a20'
 0:41.42 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.42 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.43 INFO: b'[Parent 12207, GMPThread] WARNING: Failed to delete GMP storage directory: file /builds/worker/checkouts/gecko/dom/media/gmp/GMPServiceParent.cpp:1623'
 0:41.44 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.44 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.58 INFO: b'[Parent 12207, Main Thread] WARNING: NS_ENSURE_TRUE(presShell) failed: file /builds/worker/checkouts/gecko/dom/base/nsGlobalWindowOuter.cpp:4231'
 0:41.58 INFO: b'[Parent 12207, Main Thread] WARNING: NS_ENSURE_TRUE(presShell) failed: file /builds/worker/checkouts/gecko/dom/base/nsGlobalWindowOuter.cpp:4231'
 0:41.69 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,0 -> 1280 x 1040, unscaled 0,0 -> 1280 x 1040'
 0:41.69 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,0 -> 1280 x 1040, unscaled 0,0 -> 1280 x 1040'
 0:41.69 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::ApplySizeConstraints [7fec07c51c00] min size 450 120'
 0:41.69 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::ApplySizeConstraints [7fec07c51c00] max size 16384 16384'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7fec07c51c00]'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:41.73 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,0 -> 1280 x 1040, unscaled 0,0 -> 1280 x 1040'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::SetSizeMode [7fec07c51c00] 0'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget     already set'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::Show [7fec07c51c00] state 1'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::NativeShow show [7fec07c51c00]'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget   calling gtk_widget_show(mShell) [7fec07c51c00]'
 0:41.74 INFO: b'[Child 12312, Main Thread] WARNING: Fallback to BasicLayerManager: file /builds/worker/checkouts/gecko/dom/ipc/BrowserChild.cpp:2864'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::OnWindowStateEvent [7fec07c51c00] for 7fec0f4faa60 changed 0x81 new_window_state 0x80'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget \tearly return because no interesting bits changed'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::OnWindowStateEvent [7fec07c51c00] for 7fec0ab0cd90 changed 0x81 new_window_state 0x80'
 0:41.74 INFO: b'[Parent 12207: Main Thread]: D/Widget \tquick return because IS_MOZ_CONTAINER(aWidget) is true'
 0:41.75 INFO: b'[Child 12312, Main Thread] WARNING: Fallback to BasicLayerManager: file /builds/worker/checkouts/gecko/dom/ipc/BrowserChild.cpp:2864'
 0:41.75 INFO: b'[Child 12312, Main Thread] WARNING: Fallback to BasicLayerManager: file /builds/worker/checkouts/gecko/dom/ipc/BrowserChild.cpp:2864'
 0:41.76 INFO: b'[Child 12312, Main Thread] WARNING: Fallback to BasicLayerManager: file /builds/worker/checkouts/gecko/dom/ipc/BrowserChild.cpp:2864'
 0:41.77 INFO: b'[Parent 12207: Main Thread]: D/Widget configure event [7fec07c51c00] 0,0 -> 1280 x 1040 scale 1'
 0:41.77 INFO: b'[Child 12312, Main Thread] WARNING: Fallback to BasicLayerManager: file /builds/worker/checkouts/gecko/dom/ipc/BrowserChild.cpp:2864'
 0:41.78 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.78 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.78 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget configure event [7fec07c51c00] 5,364 -> 1280 x 1040 scale 1'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget configure event [7fec07c51c00] 5,364 -> 1280 x 1040 scale 1'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget configure event [7fec07c51c00] 5,364 -> 1280 x 1040 scale 1'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget OnContainerFocusInEvent [7fec07c51c00]'
 0:41.79 INFO: b'[Parent 12207: Main Thread]: D/Widget   SetFocus 0 [7fec07c51c00]'
 0:41.80 INFO: b'[Parent 12207: Main Thread]: D/Widget   widget now has focus in SetFocus() [7fec07c51c00]'
 0:41.81 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::ApplySizeConstraints [7fec07c51c00] min size 450 120'
 0:41.81 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::ApplySizeConstraints [7fec07c51c00] max size 16384 16384'
 0:41.81 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.81 INFO: b'[Parent 12207: Main Thread]: D/Widget Events sent from focus in event [7fec07c51c00]'
 0:41.81 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.81 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:41.81 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::UpdateClientOffsetFromFrameExtents [7fec07c51c00] 5,29'
 0:41.84 INFO: b'[Parent 12207: Main Thread]: D/Widget moz_container_size_allocate [7fec07c51c00] 0,0 -> 1280 x 1040'
 0:41.84 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::OnSizeAllocate [7fec07c51c00] 0,0 -> 1280 x 1040'
 0:41.84 INFO: b'[Parent 12207: Main Thread]: D/Widget   Already the same size'
 0:41.84 INFO: b'[Parent 12207: Main Thread]: D/Widget received expose event [7fec07c51c00] 7fec08c5db20 0x3400039 (rects follow):'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_TL", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 8, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_TR", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 10, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_BL", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 12, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_BR", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 14, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_TL", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 8, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_TR", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 10, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRadii_TR", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 11, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_BL", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 12, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRadii_BL", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 13, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRect_BR", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 14, found at -1'
 0:41.88 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aClipRadii_BR", count: 4, kind: F32 } is not found in the shader cs_clip_rectangle. Expected at 15, found at -1'
 0:41.90 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aUvRect1", count: 4, kind: F32 } is not found in the shader composite. Expected at 6, found at -1'
 0:41.90 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aUvRect2", count: 4, kind: F32 } is not found in the shader composite. Expected at 7, found at -1'
 0:41.90 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aColor", count: 4, kind: F32 } is not found in the shader composite. Expected at 3, found at -1'
 0:41.90 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aUvRect1", count: 4, kind: F32 } is not found in the shader composite. Expected at 6, found at -1'
 0:41.90 INFO: b'[2021-09-23T04:50:33Z WARN  webrender::device::gl] Attribute VertexAttribute { name: "aUvRect2", count: 4, kind: F32 } is not found in the shader composite. Expected at 7, found at -1'
 0:41.90 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::Create: creating [7febefb75400]: nodename Unknown'
 0:41.90 INFO: b'[Parent 12207: Main Thread]: D/Widget   mBounds: x:0 y:0 w:100 h:100'
 0:41.91 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::NativeResize [7febefb75400] 100 100'
 0:41.91 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::Create() Toplevel [7febefb75400]'
 0:41.91 INFO: b'[Parent 12207: Main Thread]: D/Widget moz_container_init [0]'
 0:41.91 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow [7febefb75400] type 5'
 0:41.91 INFO: b'[Parent 12207: Main Thread]: D/Widget \tmShell 7febefb74a60 mContainer 7febefc3a310 mGdkWindow 7febf2196c80 XID 0x3400041'
 0:41.91 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7febefb75400]'
 0:41.91 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:42.61 INFO: b'[Parent 12207: Main Thread]: D/Widget GetScreenBounds [7fec07c51c00] 0,335 -> 1280 x 1040, unscaled 0,335 -> 1280 x 1040'
 0:42.65 INFO: b'[Parent 12207, Main Thread] WARNING: NS_ENSURE_TRUE(rootFrame) failed: file /builds/worker/checkouts/gecko/dom/base/nsGlobalWindowOuter.cpp:4233'
 0:42.66 INFO: b'[Parent 12207: Main Thread]: D/Widget nsWindow::GetWidgetScreen() [7febefb75400]'
 0:42.66 INFO: b'[Parent 12207: Main Thread]: D/Widget   fallback to Gtk code'
 0:42.66 INFO: b'[Parent 12207, Main Thread] WARNING: Failed to retarget HTML data delivery to the parser thread.: file /builds/worker/checkouts/gecko/parser/html/nsHtml5StreamParser.cpp:1305'
Has Regression Range: --- → yes

[Tracking Requested - why for this release]:
Changing severity to S2 because of frozen window right on startup. Window content can partly be refreshed by changing window size. Then frozen again.

Severity: S3 → S2

(In reply to Darkspirit from comment #34)

regression range:
... --good 2016-02-01 --bad 2017-02-01

This is software archaeology!

https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=f8ad071a6e14331d73fa44c8d3108bc2b66b2174&tochange=3ccccf8e5036179a3178437cabc154b5e04b333d

Should be bug 1197954 - in other words, the Intel DDX driver does not work with the GLX Vsync source.

Comment on attachment 9242256 [details]
Bug 1710400 - Blocklist HW-WR on Intel DDX driver, r=aosmond

Beta/Release Uplift Approval Request

  • User impact if declined: Some Intel users using an older Xorg driver will have issues raging from glitches to stalls.
  • Is this code covered by automated tests?: Yes
  • 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): Blocklist change / change in glxtest. This code is run extensively on CI (on every start), so regressions would show up fast. Also, the code in question is simple.
  • String changes made/needed:

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: Affects Thunderbird. Also, the setups in question are more likely to use Firefox ESR (stable/legacy systems).
  • User impact if declined: Some Intel users using an older Xorg driver will have issues raging from glitches to stalls.
  • Fix Landed on Version: 94
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Blocklist change / change in glxtest. This code is run extensively on CI (on every start), so regressions would show up fast. Also, the code in question is simple.
  • String or UUID changes made by this patch:
Attachment #9242256 - Flags: approval-mozilla-esr91?
Attachment #9242256 - Flags: approval-mozilla-beta?
See Also: 1650134
Duplicate of this bug: 1650134

Comment on attachment 9242256 [details]
Bug 1710400 - Blocklist HW-WR on Intel DDX driver, r=aosmond

The regression dates back to Firefox 50, the patch landed in nightly a day ago and the affected population is probably very small. I Don't think this is a good candidate for an uplift in our final beta before building our release candidate. Let's have that patch ship with 94 and get some bake time in pre-release channels . I am leaving the esr uplift request open for next cycle, thanks.

Attachment #9242256 - Flags: approval-mozilla-beta? → approval-mozilla-beta-

(In reply to Pascal Chevrel:pascalc from comment #39)

The regression dates back to Firefox 50, the patch landed in nightly a day ago and the affected population is probably very small.

This regression range is actually not correct, at least not for default configurations. The first version were we shipped hardware Webrender (and thus any hardware acceleration) on Linux was 84 (bug 1675766), but a large group of the affected users (of this bug) only got it in 89 (bug 1702301). So ESR 91 is certainly the first ESR which is affected.

affected population is probably very small

Given the amount of duplicate bugs, I'm afraid the number is not super small (for Linux). But we can certainly let it ride the trains.

(In reply to Robert Mader [:rmader] from comment #36)

This is software archaeology!

I love mozregression and old Firefox designs. ;)

Should be bug 1197954 - in other words, the Intel DDX driver does not work with the GLX Vsync source.

Ouch: bug 1279309 was even filed as regression:
(Andrew Comminos [:acomminos] from bug 1279309 comment 0)

On mesa drivers, changing the screen resolution with XRandR results in a hang in the GLX VSync thread- particularly when the change makes the root window larger.
I'm thinking recreating the GLX context backing the vsync source after the root window gets resized should fix this issue. This is what compton does.

(Robert Mader [:rmader] from comment #40)

The first version were we shipped hardware Webrender (and thus any hardware acceleration) on Linux was 84 (bug 1675766),

I can't seem to reproduce this on Gnome X11, not even when I change display resolution, not when I press F11.

but a large group of the affected users (of this bug) only got it in 89 (bug 1702301). So ESR 91 is certainly the first ESR which is affected.

  • KDE
    • loading animation and kde start menu flicker
    • Firefox startup fine, broken unusable Firefox after F11 - can be fixed by leaving fullscreen
    • Firefox fine after display resolution change, but KDE glitches occur (display configuration window is now displayed multiple times as part of the background image)
  • reproducible with Xfce
  • reports from MATE

I assume this bug could have been the cause for some of the reports in bug 1717105.

Keywords: regression
Regressed by: 1702301, 1197954
See Also: → 1279309
See Also: → 1714779

Confirmed: HW WR runs fine with layout.frame_rate:60 and 0. If possible, it would be enough to block GLX_SGI_video_sync as a separate feature.
(At the moment, users of the deprecated Intel driver can manually set gfx.webrender.all=true and layout.frame_rate=60 if they want HW WR back.)

See Also: → 1732436
See Also: 1279309
Duplicate of this bug: 1279309

Comment on attachment 9242256 [details]
Bug 1710400 - Blocklist HW-WR on Intel DDX driver, r=aosmond

Approved for 91.3esr.

Attachment #9242256 - Flags: approval-mozilla-esr91? → approval-mozilla-esr91+
See Also: 1725904
Duplicate of this bug: 1725904
See Also: 1708682
Duplicate of this bug: 1708682
Regressions: 1739476
Blocks: 1740800
Regressions: 1748093
You need to log in before you can comment on or make changes to this bug.