Bug 454919

Summary: ASSERT: "d->m_texture" in file kwin/src/libkwineffects/kwingltexture.cpp, line 451
Product: [Plasma] kwin Reporter: Bernie Innocenti <bernie>
Component: scene-openglAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED WORKSFORME    
Severity: crash CC: kde, nate, sekritmail9, xaver.hugl
Priority: NOR    
Version First Reported In: master   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: trace

Description Bernie Innocenti 2022-06-06 06:40:56 UTC
SUMMARY

kwin_wayland asserts and crashes when recording the screen with the OBS pipewire plugin

STEPS TO REPRODUCE
1. Open OBS and setup the Screen Capture (PipeWire) plugin
2. Start recording to a file (not sure if this step is necessary
3. Open Steam and start a game (probably any fullscreen OpenGL app will do)
4. Switch back to the desktop

OBSERVED RESULT
kwin_wayland dies, and the entire session is lost

EXPECTED RESULT
kwin_wayland should stay alive

SOFTWARE/OS VERSIONS
KDE Plasma Version: everything built from git as of today
Qt Version: 5.15.4+kde+r0-1

ADDITIONAL INFORMATION
Using amdgpu, in case it matters
BTW I use Arch :-)
Comment 1 Bernie Innocenti 2022-06-06 06:43:18 UTC
Journal:

```
Jun 05 23:28:15 goreboot kwin_wayland[47828]: kwin_screencast: Dropping a screencast cursor update because the compositor is slow
Jun 05 23:28:15 goreboot kwin_wayland[47828]: kwin_screencast: Dropping a screencast cursor update because the compositor is slow
Jun 05 23:28:15 goreboot kwin_wayland[47828]: kwin_screencast: Dropping a screencast cursor update because the compositor is slow
Jun 05 23:28:25 goreboot kwin_wayland[47828]: kwin_screencast: Dropping a screencast frame because the compositor is slow
Jun 05 23:28:27 goreboot xdg-desktop-portal-kde[147351]: xdp-kde-background: GetAppState called: no parameters
Jun 05 23:28:32 goreboot kwin_wayland[47828]: kwin_screencast: Dropping a screencast frame because the compositor is slow
Jun 05 23:28:32 goreboot kwin_wayland[47828]: kwin_screencast: Dropping a screencast frame because the compositor is slow
Jun 05 23:28:44 goreboot kwin_wayland[47828]: kwin_screencast: Dropping a screencast frame because the compositor is slow
Jun 05 23:28:45 goreboot kwin_wayland[47828]: ASSERT: "d->m_texture" in file /home/bernie/kde/src/kwin/src/libkwineffects/kwingltexture.cpp, line 451
Jun 05 23:28:46 goreboot systemd-coredump[147552]: [🡕] Process 47828 (kwin_wayland) of user 1000 dumped core.
 ```
Comment 2 Bernie Innocenti 2022-06-06 07:14:29 UTC
I suspect Elite Dangerous triggers the bug by using a different screen resolution when running full-screen.
I tried a different game on Steam, and switching between the game and the desktop did not crash kwin...
Comment 3 neto0110 2022-06-14 18:41:34 UTC
This is probably the same crash that I am experiencing using plasma 5.25
It is really easy to trigger it, I Just do this.
1 - Open a full screen game (I tried some DXVK game and War Thunder both using the same resolution as the desktop).
2 - Start a Pipewire full screen capture using OBS, it is not necessary to start recording.
3 - alt-tab windows fast between the game and some other window.
Kwin then crashes bringing the entire wayland session down with it.
I'm also using Arch with amdgpu.
Comment 4 neto0110 2022-06-14 20:47:42 UTC
Created attachment 149705 [details]
trace
Comment 5 Zamundaaa 2024-06-07 20:35:43 UTC
The relevant code has changed significantly, and specifically the assert has been removed and the GLTexture code reworked so that textures can never be invalid. So I assume this bug report isn't relevant anymore