Skip to content

wayland: Make setting realtime scheduler more fine grained

Vlad Zahorodnii requested to merge work/zzag/fine-grain-realtime into master

With this only the main and the libinput threads will use realtime scheduling, so it will be harder to leak realtime scheduling to somebody else.

The only caveat is that kwin would need to keep CAP_SYS_NICE around, however on the other hand, it's needed to ensure that kwin_wayland is able to get high priority EGL contexts with some drivers, e.g. intel.


Before

vlad        1141    1140    1141   19 RR   41 09:56 ?        00:00:37 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1169   19 RR   41 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1183   19 RR   41 09:56 ?        00:00:02 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1184   19 B     0 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1185   19 RR   41 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1186   19 RR   41 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1187   19 RR   41 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1188   19 RR   41 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1189   19 RR   41 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1190   19 RR   41 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1191   19 B     0 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1192   19 B     0 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1193   19 B     0 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1194   19 B     0 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1197   19 RR   41 09:56 ?        00:00:06 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1213   19 TS   19 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1214   19 TS   19 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    1216   19 TS   19 09:56 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland
vlad        1141    1140    5354   19 TS   19 10:14 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_dVYNNy --xwayland

After

vlad         942     941     942   19 RR   41 10:44 ?        00:00:08 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     959   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     982   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     983   19 B     0 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     984   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     986   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     987   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     988   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     989   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     990   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     991   19 B     0 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     992   19 B     0 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     993   19 B     0 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     994   19 B     0 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941     996   19 RR   41 10:44 ?        00:00:01 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941    1009   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941    1010   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941    1012   19 TS   19 10:44 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland
vlad         942     941    1884   19 TS   19 10:45 ?        00:00:00 /data/projects/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0 --xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority /run/user/1000/xauth_nHtMYT --xwayland

Merge request reports