4 ms·
Wayland has a pretty deep issue that loss of the compositor socket is treated as fatal and kills the client application. And when the IPC socket buffer is full
by the8472 3y ago
Wayland has a pretty deep issue that loss of the compositor socket is treated as fatal and kills the client application. And when the IPC socket buffer is full that's leads to a close (so it is one of those fatal errors). So any latency spike in the event loop of the client process can lead to a process kill. The GTK implementation even calls _exit() which means atexit handlers won't trigger and save-on-exit or crash reporters won't run. So with wayland lag gets "upgraded" to hard process kills. That's a pretty crazy design choice.
X11 handles momentarily unresponsive processes far more gracefully.
https://gitlab.freedesktop.org/wayland/wayland/-/issues/159 https://gitlab.freedesktop.org/wayland/wayland/-/issues/159 https://bugzilla.mozilla.org/show_bug.cgi?id=1743144 https://bugzilla.mozilla.org/show_bug.cgi?id=1743144
- Arnavion 3y agoThis is not a wayland (the protocol) issue. It's a client issue. In fact Qt6 was recently in the news here for having fixed it in their client code, by simply reconnecting when the wayland socket closes instead of crashing. https://news.ycombinator.com/item?id=37480331 https://news.ycombinator.com/item?id=37480331 (Their main justification is to be resilient to server restarts, but from the client's perspective the two are the same.) You're welcome to try and convince GTK devs to do the same.
- twic 3y agoWayland is like systemd all over again. We had something ancient and crufty which just about worked, but was a genuine obstacle to progress. A group of crazy people got together and designed a replacement. Everyone else pointed out that the design was crazy. The designers carried on anyway. And now the crazy project is the only game in town.
- uecker 3y agoWell perceived as ancient and crufty. I do not think there is any genuine obstacle to progress. But the thing is not just that some crazy people got together and implemented something we could all use or not, the problem with both systemd and Wayland is that it comes with all the propaganda that this is the future and nothing else, that everything else is "ancient and crufty", "unfixable", and "broken". This is clearly meant to demoralize everybody interested in alternatives. For example, there was no really good reason for Debian to force the systemd decision. That an entire distribution spawned from frustration about this decision clearly shows that there is enough interest and man power to maintain alternatives. Let's hope some people step up for X as well.