On Tue, Dec 07, 2021 at 06:32:06PM +0100, Karol Herbst wrote:
On Tue, Dec 7, 2021 at 10:52 AM Christian König christian.koenig@amd.com wrote:
Am 06.12.21 um 19:37 schrieb Dan Moulding:
On 04.12.21 17:40, Stefan Fritsch wrote:
Hi,
when updating from 5.14 to 5.15 on a system with NVIDIA GP108 [GeForce GT 1030] (NV138) and Ryzen 9 3900XT using kde/plasma on X (not wayland), there is a regression: There is now some annoying black flickering in some applications, for example thunderbird, firefox, or mpv. It mostly happens when scrolling or when playing video. Only the window of the application flickers, not the whole screen. But the flickering is not limited to the scrolled area: for example in firefox the url and bookmark bars flicker, too, not only the web site. I have bisected the issue to this commit:
commit 3e1ad79bf66165bdb2baca3989f9227939241f11 (HEAD)
I have been experiencing this same issue since switching to 5.15. I can confirm that reverting the above mentioned commit fixes the issue for me. I'm on GP104 hardware (GeForce GTX 1070), also running KDE Plasma on X.
I'm still scratching my head what's going wrong here.
Either we trigger some performance problem because we now wait twice for submissions or nouveau is doing something very nasty and not syncing it's memory accesses correctly.
Attached is an only compile tested patch which might mitigate the first problem.
But if it's the second then nouveau has a really nasty design issue here and somebody with more background on that driver design needs to take a look.
Ben mentioned a few times that fences might be busted but we all have no idea what's actually wrong. So it might be that your change is indeed triggering something which was always broken or something else.
Description sounds a bit like we're doing a clear before Xorg has had a chance to copy the pixmap to the frontbuffer perhaps? That would point to a fencing issue in userspace, and somehow ignoring fences ensures that the Xorg copy/blt completes before we get around to clearing stuff.
I'm assuming we're rendering with glamour, so is nouveau relying on kernel implicit sync or doing it's own fencing in userspace? -Daniel
Please test if that patch changes anything.
Thanks, Christian.
Cheers,
-- Dan