[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Git][xorg-team/lib/mesa][ubuntu+1] 2 commits: dont-expose-10bpc-to-gnome-shell.diff: Add a workaround to not use 10bit RGB…



Title: GitLab

Timo Aaltonen pushed to branch ubuntu+1 at X Strike Force / lib / mesa

Commits:

3 changed files:

Changes:

  • debian/changelog
    1
    -mesa (18.0.0~rc4-1ubuntu2) UNRELEASED; urgency=medium
    
    1
    +mesa (18.0.0~rc4-1ubuntu2) bionic; urgency=medium
    
    2 2
     
    
    3 3
       * control: Remove libtxc-* Recommends which were left over after a
    
    4 4
         merge.
    
    5
    +  * dont-expose-10bpc-to-gnome-shell.diff: Add a workaround to not use
    
    6
    +    10bit RGB config with gnome-shell, until mutter is fixed. (LP:
    
    7
    +    #1752123)
    
    5 8
     
    
    6
    - -- Timo Aaltonen <tjaalton@debian.org>  Sun, 18 Feb 2018 19:26:10 +0200
    
    9
    + -- Timo Aaltonen <tjaalton@debian.org>  Wed, 28 Feb 2018 13:55:43 +0200
    
    7 10
     
    
    8 11
     mesa (18.0.0~rc4-1ubuntu1) bionic; urgency=medium
    
    9 12
     
    

  • debian/patches/dont-expose-10bpc-to-gnome-shell.diff
    1
    +>From cf1b6bf1faf973afb61c80376ae067d2048a535b Mon Sep 17 00:00:00 2001
    
    2
    +From: Mario Kleiner <mario.kleiner.de@gmail.com>
    
    3
    +Date: Thu, 24 Aug 2017 14:20:54 +0200
    
    4
    +Subject: [PATCH 1/2] drirc: Don't expose 10 bpc visuals/configs to
    
    5
    + gnome-shell. (v2)
    
    6
    +
    
    7
    +Set 'allow_rgb10_configs' false when gnome-shell is the
    
    8
    +client.
    
    9
    +
    
    10
    +Gnome-Shell/Wayland (= Mutter drm/kms wayland backend)
    
    11
    +currently can't handle non RGB8 configs. It will treat
    
    12
    +any framebuffer as RGBX8 or RGBA8, so if provided with
    
    13
    +a RGB10A2 or RGB10X2 framebuffer, the compositors
    
    14
    +kms backend will simply pass it to the kernel as RGBX8
    
    15
    +for scanout, resulting in false colors.
    
    16
    +
    
    17
    +Gnome-Shell/X11 displays 10 bpc drawables correctly without
    
    18
    +any color artifacts if X-Screen DefaultDepth 30 is set.
    
    19
    +
    
    20
    +Both Gnome-Shell Wayland and X11 for some reason seem to
    
    21
    +have problems with hit-testing for RGB10 modes, making them
    
    22
    +almost unusable: Neither context menus (right mouse click)
    
    23
    +on the desktop, nor the icons in the dock, nor any part of
    
    24
    +the menu bar at the top, nor any icons on the desktop,
    
    25
    +respond to any mouse clicks. The same problem appears for
    
    26
    +window decorations (resize, move, close of windows via mouse
    
    27
    +impossible).
    
    28
    +
    
    29
    +The same problem happens when testing with the amdgpu-pro
    
    30
    +proprietary OpenGL library in "DefaultDepth 30" mode, and
    
    31
    +with the NVidia proprietary driver with depth 30 mode, so
    
    32
    +this seems to be a problem inside Gnome-Shell, not in Mesa,
    
    33
    +X or Wayland.
    
    34
    +
    
    35
    +Not exposing RGB10 configs keeps Gnome-Shell usable, and
    
    36
    +still allows other X-Clients to do RGB10 rendering if X
    
    37
    +"DefaultDepth 30" is selected.
    
    38
    +
    
    39
    +No such problems happened under Gnome flashback session
    
    40
    +(Metacity), or with Compiz based UI's, or under KDE-5 with
    
    41
    +or without compositing.
    
    42
    +
    
    43
    +The most likely culprit is to be found in clutters picking
    
    44
    +code, which is based on rendering color coded "actor" id's
    
    45
    +to some framebuffer, then later reading it back at the
    
    46
    +(x,y) picking position and decoding into actor id's again.
    
    47
    +
    
    48
    +Possible starting points / culprits for debugging this:
    
    49
    +
    
    50
    +https://github.com/GNOME/clutter/blob/master/clutter/clutter-stage.c
    
    51
    +_clutter_stage_do_pick(),
    
    52
    +
    
    53
    +and
    
    54
    +
    
    55
    +https://github.com/GNOME/clutter/blob/master/clutter/clutter-main.c
    
    56
    +_clutter_pixel_to_id() and _clutter_id_to_color()
    
    57
    +
    
    58
    +v2: Renamed option from expose_rgb10_configs to allow_rgb10_configs.
    
    59
    +    Add some hints to the possible location of the clutter problems.
    
    60
    +
    
    61
    +Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    
    62
    +---
    
    63
    + src/util/drirc | 3 +++
    
    64
    + 1 file changed, 3 insertions(+)
    
    65
    +
    
    66
    +--- a/src/util/drirc
    
    67
    ++++ b/src/util/drirc
    
    68
    +@@ -166,6 +166,9 @@ TODO: document the other workarounds.
    
    69
    + 
    
    70
    +         <application name="Observer" executable="TheObserver-Linux-Shipping">
    
    71
    +             <option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
    
    72
    ++
    
    73
    ++        <application name="gnome-shell" executable="gnome-shell">
    
    74
    ++            <option name="allow_rgb10_configs" value="false"/>
    
    75
    +         </application>
    
    76
    + 
    
    77
    +         <application name="Steamroll" executable="Steamroll-Linux-Shipping">

  • debian/patches/series
    ... ... @@ -9,3 +9,4 @@ egl-platform-mir.patch
    9 9
     egl-platform-rs.patch
    
    10 10
     khr_platform_mir.patch
    
    11 11
     dri3-reinstate-get_dri_screen-callback.diff
    
    12
    +dont-expose-10bpc-to-gnome-shell.diff


  • Reply to: