Ubuntu – Screen tearing in Chrome on Ubuntu 19.04 with Intel Graphics

driversgoogle-chromegraphicsintelxorg

I'm using dual monitors, one of which is rotated with

xrandr --output HDMI-1 --rotate left

I get screen tearing on Google Chrome (installed from Chrome's PPAs, not Chromium) on both monitors, though it's more noticeable on the rotated one. I don't seem to get screen tearing in other programs, like gnome-terminal for example.

My GPU is

$ inxi -G
Graphics:  Device-1: Intel UHD Graphics 630 driver: i915 v: kernel 
           Display: x11 server: X.Org 1.20.4 driver: i915 resolution: 1920x1080~60Hz, 1920x1080~60Hz 
           OpenGL: renderer: Mesa DRI Intel UHD Graphics 630 (Coffeelake 3x8 GT2) v: 4.5 Mesa 19.0.8 

I tried adding

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

to /etc/X11/xorg.conf.d/20-intel-graphics.conf as per this question, but the problem is that command makes my dual monitors act as one monitor (the same picture shows up on both monitors). I tried removing the TripleBuffer and DRI lines, but that changed nothing. This side effect is mentioned in this Arch Linux Forum thread with a possible solution of adding i915.semaphores=1 to the kernel boot parameters. I don't know if that 7 year old advice is still relevant and if I was in a situation where I could fiddle with kernel boot parameters, I probably wouldn't be using Ubuntu in the first place.

I also tried setting the chrome://flags/#ignore-gpu-blacklist Chrome flag as per this question, but nothing seems to have changed in chrome://gpu/.

I'm using i3 as my window manager. I'm using X, not Wayland (i3 doesn't work with Wayland).

Best Answer

I was able to fix for i7 Ubuntu 20.04 modifying my /etc/X11/xorg.conf file to include DRI3 as follows, which I found here.

Section "Module"
    Load "dri3"
EndSection

Section "Device"
    Identifier  "Intel Graphics"
    Driver      "intel"
    Option      "DRI"   "3"
EndSection
Related Question