10-21-2020, 06:54 PM
(09-23-2020, 08:29 AM)JasonG-FR Wrote: Hi,
Updating to mesa-git-20.3.0_devel.128278.20a4235c4c9-1 caused a kwin_x11 crash, preventing it to use OpenGL as the compositor engine which resulted in a sluggish device (even after rebooting it).
After rebooting, the crash didn’t happen again, but it appeared that I’d lost transparency (during animations like moving windows, using the drop-down terminal, moving the mouse cursor, even the shutdown menu background was completely black) and the system felt sluggish when it used to display transparency before the update (like it was dropping frames and it kinda felt like it was using the CPU instead of the GPU to render the desktop).
To fix this, downgrade mesa-git to the previous version (mesa-git-20.3.0_devel.127750.ac6b8e42ce2-1), then go to System Settings > Hardware > Display and Monitor > Compositor. There should be a message on top saying that OpenGL detection was turned off because it caused crashes in the past and asking to re-enable it. Re-enabling it and rebooting fixed the issue for me.
(10-21-2020, 03:02 AM)icecream95 Wrote: Hint to everyone here: This issue isn't going to automatically fix itself.I'm happy to put some time in helping with this, but while I'm fully capable of running commands and determining if something is broken, I'm not a developer. I tried to run the meson command and got asked for a directory. Do I need to navigate somewhere, or should a specify a directory?
I haven't been able to reproduce this myself, so someone here who has the problem will have to help find the problem by bisecting.
You'll have to use git bisect on Mesa, with a "good" commit of ac6b8e42ce2 and a "bad" commit of 20a4235c4c9 (man git-bisect for docs).
Configure Mesa from the build directory like this:
Code:meson -Dgallium-drivers=panfrost,kmsro -Dvulkan-drivers= -Db_ndebug=false --buildtype=plain
Compile and install with `ninja; sudo ninja install`
Install ccache beforehand to speed up the bisect process significantly.
Once an issue is narrowed down to a specific commit, it's usually pretty easy to find what the problem is and fix it.