Die Welt der Linux-Desktops verändert sich rasant, nicht zuletzt mit der zunehmenden Verbreitung von Wayland als neuem Display-Server-Protokoll. Für viele Nutzer von GNOME, das Mutter als Standard-Compositor verwendet, hat die Umstellung große Vorteile in puncto Stabilität und moderner Grafikarchitektur gebracht. Doch eine Schattenseite zeichnet sich ab: Chromium-basierte Browser wie Google Chrome, sowie auf Chromium aufbauende Anwendungen wie Slack, Discord oder Visual Studio Code, zeigen ein nerviges Problem im Zusammenspiel mit Workspaces und Wayland. Viele Nutzer berichten von eingefrorenen oder schwarzen Fenstern beim Wechsel zwischen virtuellen Desktops. Dieses Phänomen hat sich seit 2023 zu einem weit verbreiteten Ärgernis entwickelt – und ist sämtlichen bisherigen Legenden über defekte Grafiktreiber zum Trotz nicht auf Hardwareprobleme zurückzuführen.
Stattdessen sind tiefgreifende Änderungen in der Art und Weise, wie GNOME Mutter und Chromium mit inaktive Fenster und deren Bildwiedergabe umgehen, verantwortlich. Die Ursache liegt in einem mutigen Versuch, Energie zu sparen und Systeme effizienter zu machen: Das Wegfallen von sogenannten Frame-Callbacks an vollständig verdeckten Oberflächen. Diese Frame-Callbacks sind aus Sicht von Wayland wichtige Zeitgeber, die Anwendungen signalisieren, wann sie neue Bildinhalte rendern sollen. GNOME Mutter hat seit seiner Version 3.38 2020 eine Policy implementiert, die vollständig ausgeblendete Fenster als "throttled" oder gedrosselt markiert.
Dabei werden gezielt keine Frame-Callbacks mehr an solche Fenster gesendet, um unnötigen Rechen- und Energieaufwand zu vermeiden. Für viele Anwendungen war das zunächst kein Problem, denn sie hielten ihre Fenster-Inhalte während des Ausblendens aktiv im Speicher vor und konnten so beim Wiederaufrufen den Bildinhalt ohne Verzögerung präsentieren. Mit Chromium kam im Sommer 2023 ein bedeutsamer Wandel hinzu: ab Version 115 wurde die Funktion EvictionThrottlesDraw standardmäßig aktiviert. Dieses Feature betrachtet das ausbleibende Frame-Callback als Signal, dass der Speicherinhalt der Oberfläche entleert oder verworfen werden kann, um Ressourcen zu sparen. Die Folge ist, dass bei einem Workspace-Wechsel das Chromium-Fenster keinen aktiven Bildpuffer mehr hat und nichts darstellen kann.
Aus Sicht des Nutzers wirkt das Fenster eingefroren oder schwarz – bis eine Eingabe oder ein Umgestalten wie das Bewegen oder Minimieren das Rendering reaktiviert. Dieses Verhalten ist in der Praxis auf sämtlichen GNOME-Wayland-Setups zu beobachten, darunter populäre Distributionen wie Fedora, Ubuntu, Arch Linux, Manjaro oder openSUSE Tumbleweed. Das Problem entsteht nicht nur bei Chrome selbst, sondern auch bei allen Anwendungen, die auf der Chromium-Renderengine basieren. Die Community berichtete vermehrt seit Anfang 2024 von diesen Problemen, die mit der gestiegenen Verbreitung von Wayland-Sitzungen und der Verschärfung der Occlusion-Throttling-Mechanismen in Mutter 46 und neueren Versionen zunehmend zum Alltag gehören. Andere Compositoren wie KWin (KDE), Sway oder wlroots-basierte Systeme sind davon weitgehend nicht betroffen, da sie entweder keine Frame-Callback-Drosselung anwenden oder alternative Mechanismen wie Presentations-Feedback nutzen, um den Status von Fenstern präziser zu ermitteln.
Die Entwicklungen auf Seiten von GNOME und Chromium zur Behebung der Problematik verlaufen derzeit unabhängig voneinander, was eine koordinierte Lösung erschwert. GNOME arbeitet an einem Patch mit der Bezeichnung MR !4401, der als per-surface Frame Scheduler fungiert. Dieses Konzept erlaubt wieder die garantierte Aussendung von mindestens einem Frame-Callback sobald ein Fenster sichtbar wird, wodurch der Renderer zuverlässig aufgeweckt wird ohne unnötigen Ressourcenverbrauch im Hintergrund. Dieser Patch befindet sich in einem stabilen Entwurfsstatus und ist in einigen experimentellen Repositories und Nightly-Builds testbar. Google hingegen hat für Chromium eine Funktion namens UsePresentationFeedbackForOccludedSurfaces entwickelt und eine Methode implementiert, die EvictionThrottlesDraw dynamisch zu deaktivieren, wenn Wayland erkannt wird.
Diese Patches sind in den Beta- und Entwicklerfassungen von Chromium ab Version 127 bzw. Canary Build 128 verfügbar, werden aber noch nicht allgemein ausgeliefert. Distributionen wie Fedora planen, den GNOME-Patch in Fedora 42 und Ubuntu ihn in Version 24.10 vorzubereiten, was Hoffnung auf baldige Entspannung bei den Nutzern weckt. Bis dahin müssen Anwender selbst tätig werden, um den frustrierenden Zustand zu verbessern.
Ein praktikabler Workaround besteht darin, Chrom-basierte Anwendungen mit speziellen Startoptionen zu versehen. Dazu gehört insbesondere das Starten mit --ozone-platform=wayland --disable-features=EvictionThrottlesDraw, womit die automatische Speicherfreigabe deaktiviert und der klassische Darstellungsmodus auf Wayland erzwungen wird. Alternativ hilft es auch, vorerst auf eine GNOME-Sitzung unter Xorg zu wechseln, welche die historischen Abläufe nutzt und ohne Drosselung auskommt. Für die technisch versierteren Nutzer öffnet sich mit Tests von Build-Varianten mit den genannten Patches die Möglichkeit, wertvolles Feedback an GNOME- und Chromium-Entwickler zu liefern. Die offizielle Issue #1563 im GNOME GitLab und der Chromium-Bug 1427954 dienen als zentrale Anlaufstellen, um Log-Dateien und Reproduktionsfälle zu teilen und so die Entwicklung zu beschleunigen.
Langfristig zeigt das Szenario eindrucksvoll, wie schwer es sein kann, moderne Desktop-Technologien nachhaltig zu integrieren und das Zusammenspiel zwischen verschiedenen Projekten zu gewährleisten. Mutter, als integraler Bestandteil von GNOME, verfolgt konsequent den Weg der Optimierung und Effizienzsteigerung. Gleichzeitig führen solche Optimierungen auf Chromium-Seite zu unerwarteten Nebeneffekten für Anwender. Ein gemeinsames Verständnis von Funktion und Grenzen der Wayland-Mechanismen, gepaart mit abgestimmten Implementierungen, bleibt der Schlüssel für eine reibungslose Nutzung. Für alle Linux-Nutzer, die auf moderne Browser und Applikationen angewiesen sind, ist es wichtig, sich über diesen Hintergrund zu informieren, um Probleme zu erkennen und gezielt zu reagieren.
Auch wenn die heutige Situation noch nicht perfekt ist, zeichnet sich am Horizont eine Lösung ab, die das Zusammenspiel von Wayland, Mutter und Chromium deutlich verbessern wird. Bis dahin helfen Workarounds, experimentelle Builds und Kommunikation mit Entwicklern dabei, den Alltag zu erleichtern. So wird der Traum von einem modernen, flüssigen GNOME-Desktop mit Chrome auf Wayland Schritt für Schritt Realität – und der größte Ärger bald Vergangenheit.