# Testing Linux EGL

**URL:** <https://forums.plex.tv/t/testing-linux-egl/776726>\
**Category:** Plex Players\
**Tags:** plex-htpc\
**Created:** [February 16, 2022, 3:28pm UTC](https://forums.plex.tv/t/testing-linux-egl/776726 "2022-02-16T15:28:33Z")\
**Posts on this page:** 1\
**Showing post:** 8

<div class="post-metadata">

**Author:** ![LudvigH](https://avatars.discourse-cdn.com/v4/letter/l/c68b51/32.png) [@LudvigH](https://forums.plex.tv/u/LudvigH)\
**Post date:** [February 17, 2022, 11:35pm UTC](https://forums.plex.tv/t/testing-linux-egl/776726/8 "2022-02-17T23:35:37Z")

</div>

### Bugs and issues unrelated to EGL

(This is not related to this thread though so if you want a detailed bug report elsewhere let me know)

- The app does not run on wayland at all. (needs `DISABLE_WAYLAND=1`)
- Text and UI around the app looks a bit blurry. (My DE runs at native resolution with 100% scaling, so that’s not affecting it). Might be related to Wayland issues?

> **EDIT: Wayland debugging information here**
>
> > I don’t use (or like) snaps so I don’t have much experience debugging them, but I followed the steps in their docs as best I could.
> 
> Checking any policy violations, I get a SECCOMP violation when running normally. Here is the kernel log when running the snap:
> 
> ```auto
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=64 op=LOAD
> Feb 18 09:58:32 xps-hoz audit[14292]: SYSCALL arch=c000003e syscall=321 success=yes exit=9 a0=5 a1=7ffcf7c522b0 a2=80 a3=1000 items=0 ppid=5714 pid=14292 auid=1000 uid=1000 gid=984 euid=0 suid=0 fsuid=0 egid=0 sgid=984 fsgid=0 tty=pts1 ses=4 comm="snap-confine" exe="/usr/lib/snapd/snap-confine" key=(null)
> Feb 18 09:58:32 xps-hoz audit: PROCTITLE proctitle=2F7573722F6C69622F736E6170642F736E61702D636F6E66696E65002D2D6261736500636F7265323000736E61702E706C65782D687470632E706C65782D68747063002F7573722F6C69622F736E6170642F736E61702D6578656300706C65782D68747063
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.597:363): prog-id=64 op=LOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1300 audit(1645174712.597:363): arch=c000003e syscall=321 success=yes exit=9 a0=5 a1=7ffcf7c522b0 a2=80 a3=1000 items=0 ppid=5714 pid=14292 auid=1000 uid=1000 gid=984 euid=0 suid=0 fsuid=0 egid=0 sgid=984 fsgid=0 tty=pts1 ses=4 comm="snap-confine" exe="/usr/lib/snapd/snap-confine" key=(null)
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1327 audit(1645174712.597:363): proctitle=2F7573722F6C69622F736E6170642F736E61702D636F6E66696E65002D2D6261736500636F7265323000736E61702E706C65782D687470632E706C65782D68747063002F7573722F6C69622F736E6170642F736E61702D6578656300706C65782D68747063
> Feb 18 09:58:32 xps-hoz audit[14292]: SECCOMP auid=1000 uid=1000 gid=984 ses=4 pid=14292 comm="snap-exec" exe="/usr/lib/snapd/snap-exec" sig=0 arch=c000003e syscall=334 compat=0 ip=0x5df350 code=0x50000
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1326 audit(1645174712.603:364): auid=1000 uid=1000 gid=984 ses=4 pid=14292 comm="snap-exec" exe="/usr/lib/snapd/snap-exec" sig=0 arch=c000003e syscall=334 compat=0 ip=0x5df350 code=0x50000
> Feb 18 09:58:32 xps-hoz audit[14337]: SECCOMP auid=1000 uid=1000 gid=984 ses=4 pid=14337 comm="snapctl" exe="/usr/lib/snapd/snapctl" sig=0 arch=c000003e syscall=334 compat=0 ip=0x71fd90 code=0x50000
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1326 audit(1645174712.610:365): auid=1000 uid=1000 gid=984 ses=4 pid=14337 comm="snapctl" exe="/usr/lib/snapd/snapctl" sig=0 arch=c000003e syscall=334 compat=0 ip=0x71fd90 code=0x50000
> Feb 18 09:58:32 xps-hoz audit[14416]: ANOM_ABEND auid=1000 uid=1000 gid=984 ses=4 pid=14416 comm="Plex" exe="/snap/plex-htpc/x3/bin/Plex" sig=6 res=1
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1701 audit(1645174712.670:366): auid=1000 uid=1000 gid=984 ses=4 pid=14416 comm="Plex" exe="/snap/plex-htpc/x3/bin/Plex" sig=6 res=1
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=65 op=LOAD
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=66 op=LOAD
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=67 op=LOAD
> Feb 18 09:58:32 xps-hoz audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@6-14418-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.717:367): prog-id=65 op=LOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.717:368): prog-id=66 op=LOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.717:369): prog-id=67 op=LOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1130 audit(1645174712.717:370): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@6-14418-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1131 audit(1645174712.790:371): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@6-14418-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
> Feb 18 09:58:32 xps-hoz audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@6-14418-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=0 op=UNLOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.807:372): prog-id=0 op=UNLOAD
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=0 op=UNLOAD
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=0 op=UNLOAD
> Feb 18 09:58:32 xps-hoz audit: BPF prog-id=0 op=UNLOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.943:373): prog-id=0 op=UNLOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.943:374): prog-id=0 op=UNLOAD
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1334 audit(1645174712.943:375): prog-id=0 op=UNLOAD
> 
> ```
> 
> It seems these syscalls are the culprits:
> 
> ```auto
> Feb 18 09:58:32 xps-hoz audit[14292]: SECCOMP auid=1000 uid=1000 gid=984 ses=4 pid=14292 comm="snap-exec" exe="/usr/lib/snapd/snap-exec" sig=0 arch=c000003e syscall=334 compat=0 ip=0x5df350 code=0x50000
> Feb 18 09:58:32 xps-hoz kernel: audit: type=1326 audit(1645174712.603:364): auid=1000 uid=1000 gid=984 ses=4 pid=14292 comm="snap-exec" exe="/usr/lib/snapd/snap-exec" sig=0 arch=c000003e syscall=334 compat=0 ip=0x5df350 code=0x50000
> Feb 18 09:58:32 xps-hoz audit[14337]: SECCOMP auid=1000 uid=1000 gid=984 ses=4 pid=14337 comm="snapctl" exe="/usr/lib/snapd/snapctl" sig=0 arch=c000003e syscall=334 compat=0 ip=0x71fd90 code=0x50000
> 
> ```
> 
> Checking the syscall `334` on my system is `rseq`.
> 
> Running `snappy-debug` yielded the same results.

Otherwise the app looks amazing! I love the UI and the interface in general with all the options. Awesome job guys. Props to the whole team for pushing through and finally pulling this off!

## Main setup (Intel Graphics on gnome wayland)

1. _What GPU are you using?_  
**Device:** `Intel Corporation CometLake-H GT2 [UHD Graphics]`

2. _Which drivers (particularly those with Nvidia GPUs and whether they are the proprietary or OSS drivers)?_  
**Drivers:** `mesa-21.3.5` ` linux-firmware-20220209.6342082-1`

3. _When you launched with the environment variable set, did the UI display and work?_  
No. Running the snap yielded `Aborted (core dumped)`  
Setting `WAYLAND_DISABLE=1` fixed it and the app runs as expected (on the XWayland socket). So it seems the app does **not** work on wayland by default.

4. _Did playback work (both cases)?_  
Yes

5. _Did you get the expected values for the hardware decoding?_  
No. With or without the env var the value for hardware decoding is `vaapi-copy (?)`

## NVIDIA (Gnome wayland) with prime render offloading

1. _What GPU are you using?_  
**Device:** `NVIDIA GeForce GTX 1650 Ti Mobile`

2. _Which drivers (particularly those with Nvidia GPUs and whether they are the proprietary or OSS drivers)?_  
**Drivers:** `nvidia-510.54` (proprietary)

3. _When you launched with the environment variable set, did the UI display and work?_  
No. Again it does not work on wayland.  
Launched with: `prime-run env DISABLE_WAYLAND=1 env QT_XCB_GL_INTEGRATION=xcb_egl snap run plex-htpc` then it works.

4. _Did playback work (both cases)?_  
Yes.

5. _Did you get the expected values for the hardware decoding?_  
No. In both cases the value is `vaapi-copy (?)`

Something that’s strange though is that without the environment variable, plex seems to run on the GPU as expected with `prime-run` (`nvidia-smi` reports plex as a running GPU process) but when setting the env var, it’s not anymore? So it seems the EGL env var overrides prime render offloading and runs the process on the Intel GPU instead.

In any case, as far as I know, nvidia drivers as of `495` has GBM support and as such mutter (gnome-shell compositor) will run on the GBM backend as of `nvidia-495` and `gnome-shell-41`. I’m not sure if it’s related or how Qt does this internally and if it just uses the EGL backend directly?, but essentially there is no part in the graphics pipeline that runs on EGLStreams if that helps.

## NVIDIA (Gnome on [X.Org](http://X.Org)) through prime render offloading

> I would never run on this configuration personally.

1. _What GPU are you using?_  
**Device:** `NVIDIA GeForce GTX 1650 Ti Mobile`

2. _Which drivers (particularly those with Nvidia GPUs and whether they are the proprietary or OSS drivers)?_  
**Drivers:** `nvidia-510.54` (proprietary)

3. _When you launched with the environment variable set, did the UI display and work?_  
Launched with: `prime-run env QT_XCB_GL_INTEGRATION=xcb_egl snap run plex-htpc`  
Yes.

4. _Did playback work (both cases)?_  
Yes.

5. _Did you get the expected values for the hardware decoding?_  
Yes. In this instance the value is `vaapi (vaapi-egl)` and the egl backend seems to work properly

---

_[View the full topic](https://forums.plex.tv/t/testing-linux-egl/776726)._
