Screen tearing on Intel GPU

SOLUTION: Need to disable unredirect: Meta.disable_unredirect_for_display(global.display);
There is an extension here: Disable unredirect fullscreen windows - GNOME Shell Extensions

Maybe this was disabled and got re-enabled recently? Any ideas on how to set this without using the extension?


For the past couple weeks I’ve been dealing with some pretty bad screen tearing when using my Intel GPU. I have an Optimus laptop and the tearing does not happen when I launch a program on the Nvidia card, only Intel. I first noticed the tearing on Dec 6th, before that everything worked fine. I think it may have been caused by an update around that time, but I have been unable to find the source of the problem or a solution. I posted on Reddit and one other person says they have the same problem, but no solution, so figured I’d try here. I’m on a fresh install of Fedora 31 Workstation, all updates applied as of this posting.

Some info on my setup:

Intel HD Graphics 630
Driver: i915 (kernel)

GTX 1050 Ti Mobile
Driver: 440.44 (rpmfusion)

I tried adding the “TearFree” option to a config file as directed by the ArchWiki, but that didn’t help. Another commonly suggested solution is to enabled “Force Full Composition Pipeline” in nvidia-settings, but that option isn’t available for Optimus laptops. I searched the RedHat bugzilla, but didn’t come up with anything related to tearing on Intel.

I’d like to nail down the cause of the problem and file a bug report because until a couple weeks ago everything worked 100% out of the box. Any other info I could share that would be helpful just let me know.

Thanks

Fedora 31 w/ akmod
Laptop: MSI GS60 2PC Haswell CPU w/ 860M 2GB version

I had the exact or nearly exact issue as you and thankfully your solution improved the situation a lot.

But there is a tradeoff involved. It becomes obvious when you watch bars moving horizontally like here: Video tearing and smoothness test @60fps - YouTube

With the extension off I get horrible tearing but they are moving smooth as butter. With the extension on the tearing goes away completely but now there is ghosting. This is because of vsync jitter.

You can see it more clearly here: https://www.vsynctester.com/ (for some reason chrome does much better than firefox here, could also be random I suppose)
I can get moments of stability with very little to no jitter but they are few and far between.

Surely there must be a solution out there to this?

This isn’t even Nvidia anymore (which is shocking, I lucked out with the new prime synchronization stuff because it works on both the DP and HDMI external monitors - means the ports are wired to iGPU).
I get same results with dGPU turned off in bios.

The culprit is Intel graphics and likely Gnome compositor?

PS: When I turn off the new PRIME stuff and go “Option PrimaryGPU yes” the tearing is present and nothing seems to help. On Ubuntu 18 LTS everything was fine - vsync jitter was present but very mild and rarely if ever noticable.

A kindly advice. :slight_smile:
Please, don’t edit the original post and the title to include the solution.
It is better to write a new post and mark it as the solution using the check box provided by Discourse forum platform.
Thanks :+1: