-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Hi, I just thought I would share the solution I found to my screen
tearing problem for Chromium-based browsers on Qubes.
First, test if you are experiencing screen tearing in Chromium by
watching this video in full screen (You should see only straight
vertical lines going across the screen; no rips):
https://www.youtube.com/watch?v=MfL_JkcEFbE
If you are, then what fixed it completely for me was going to:
chrome://flags/#ignore-gpu-blacklist
And then enabling:
"Override software rendering list"
Description:
"Overrides the built-in software rendering list and enables
GPU-acceleration on unsupported system configurations. Mac,
Windows, Linux, Chrome OS, Android
#ignore-gpu-blacklist"
Then watch that video again to confirm the fix was successful.
Worked like a charm with my Intel iGPU at least.
If that doesn't fix it then I recommend going to:
chrome://gpu
and seeing what you can tweak in there.
I tested each and this fix worked for me in Chromium, Brave Browser,
Iridium Browser and (just to top it off) Google Chrome.
I think the culprit in the Chromium source is this line at:
https://chromium.googlesource.com/chromium/src/gpu/+/master/config/software_rendering_list.json#355
Seems strange but for some reason my "GPU0" is detected as "VENDOR=
0x0000 [VMware, Inc.]" (you would think it would say Xen?) in
chrome://gpu after enabling #ignore-gpu-blacklist (Before it was
"VENDOR= 0x0000 [Google Inc.]"), it also has the "Mesa" driver
vendor with version >= 9.2.1 and is of course running on "Linux",
all of which falls in line with that entry in the
software_rendering_list.json file.
I kept digging by looking at the "cr_bugs" field in the JSON file
and at first was alarmed because the first one listed (#145531
<https://bugs.chromium.org/p/chromium/issues/detail?id=145531>)
was a UAF security bug that was closed as "Wont Fix". However, I
tried all the PoCs and none of them produced a crash for me with
#ignore-gpu-blacklist enabled so I think it's safe and adding this
GPU driver to the blacklist is just a precaution the Chromium team
took. Then I went through the other cr_bugs listed and sure enough
others were reporting it doesn't seem like this bug exists anymore
and that it does appear to be safe now. I've had the
#ignore-gpu-blacklist enabled for a while now and have experienced
no instability.
No such fix should be necessary for Firefox as it came out of the
box with no screen tearing for me.
Note, this is only a fix for screen tearing in Chromium-based
browsers. If you're experiencing screen tearing elsewhere like on
your desktop too then it's probably something you need to change in
you xorg.conf in Dom0.
And as a side note, if your browser fails to play some videos, that
is due to it not supporting some formats which can be diagnosed at a
site such as:
https://tekeye.uk/html/html5-video-test-page
Anyway, this ended up being longer than expected. Hope it helped a
fellow Qubes user. :)
-----BEGIN PGP SIGNATURE-----
iHUEARYIAB0WIQQBj7nebfoT+xj7VVL5uQ1E+D3V8gUCXrm7qwAKCRD5uQ1E+D3V
8hv6AP447YQfhWVF5kMl6mEddg3Bm2tjKsujgaSg18UAh1ulHQEAvffT9yTzDueS
iAwa1HcGnTAlrio4aLZ/lo59iFEHtwU=
=Gw26
-----END PGP SIGNATURE-----