Set 'expose_rgb10_configs' false when gnome-shell is the client. Gnome-Shell/Wayland (= Mutter drm/kms wayland backend) currently can't handle non RGB8 configs. It will treat any framebuffer as RGBX8 or RGBA8, so if provided with a RGB10A2 or RGB10X2 framebuffer, the compositors kms backend will simply pass it to the kernel as RGBX8 for scanout, resulting in false colors.
Gnome-Shell/X11 displays 10 bpc drawables correctly without any color artifacts if X-Screen DefaultDepth 30 is set. Both Gnome-Shell Wayland and X11 for some reason seem to have problems with hit-testing for RGB10 modes, making them almost unusable: Neither context menus (right mouse click) on the desktop, nor the icons in the dock, nor any part of the menu bar at the top, nor any icons on the desktop, respond to any mouse clicks. The same problem appears for window decorations (resize, move, close of windows via mouse impossible). The same problem happens when testing with the amdgpu-pro proprietary OpenGL library in "DefaultDepth 30" mode, and with the NVidia proprietary driver with depth 30 mode, so this seems to be a problem inside Gnome-Shell, not in Mesa, X or Wayland. Not exposing RGB10 configs keeps Gnome-Shell usable, and still allows other X-Clients to do RGB10 rendering if X "DefaultDepth 30" is selected. No such problems happened under Gnome flashback session (Metacity), or with Compiz based UI's, or under KDE-5 with or without compositing. Signed-off-by: Mario Kleiner <mario.kleiner...@gmail.com> --- src/util/drirc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/util/drirc b/src/util/drirc index 30ac9c8..c3170be 100644 --- a/src/util/drirc +++ b/src/util/drirc @@ -160,6 +160,10 @@ TODO: document the other workarounds. <option name="glsl_correct_derivatives_after_discard" value="true"/> </application> + <application name="gnome-shell" executable="gnome-shell"> + <option name="expose_rgb10_configs" value="false"/> + </application> + <!-- The GL thread whitelist is below, workarounds are above. Keep it that way. --> -- 2.7.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev