kscreenlocker_greet crashes inside Mesa when running with llvmpipe or softpipe.
This is because it creates file-backed buffers for DRI2 surfaces.
So just allow creation of files for the affected targets.
Details
- Reviewers
graesslin - Group Reviewers
Plasma - Commits
- R133:f6307641e51e: Fix greeter crashing with software rendering on wayland
Ran a windowed kwin_wayland session and started kscreenlocker_greet with
LIBGL_ALWAYS_SOFTWARE=1. Now it works.
Diff Detail
- Repository
- R133 KScreenLocker
- Lint
Automatic diff as part of commit; lint not applicable. - Unit
Automatic diff as part of commit; unit tests not applicable.
Also needs https://phabricator.kde.org/D9495 as llvmpipe/softpipe are not detected properly without.
I'm not sure what to do with the https://phabricator.kde.org/D9495 fixes for kscreenlocker.
Just copying over the files with the bug fixed won't work as it depends on XCB and libexpoxy now and needs to know whether it's running on EGL or GLX (KWin::NoOpenGLPlatformInterface should work, I guess).
Should I just "backport" the gallium fix into kwinglplatform.cpp for 5.11? What to do for master? Branching kwinglplatform.cpp here is probably not a good idea.
The kwinglutils.cpp in kscreenlocker are not a 1:1 copy from KWin. It has everything specific from KWin removed.
I think the best solution would be to take the same approach and "manually" cherry-pick the patch.
Ok, did that to Plasma/5.11 (no review as it's identical to P9496) and merged to master.