Bug 462027 - Notification Pop-Up from Steam, causes Steam client to hang Wayland
Summary: Notification Pop-Up from Steam, causes Steam client to hang Wayland
Status: RESOLVED UPSTREAM
Alias: None
Product: kwin
Classification: Plasma
Component: wayland-generic (show other bugs)
Version: 5.26.3
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-11-19 10:51 UTC by kodatarule
Modified: 2022-11-29 17:43 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description kodatarule 2022-11-19 10:51:36 UTC
SUMMARY
***
Notification Pop-Up from Steam, causes Steam client to hang Wayland
***


STEPS TO REPRODUCE
1. Open steam, install a game or wait until a friend enters a game so that the client may show notification, once the notification is gone -> Client freezes and has to be closed.


OBSERVED RESULT
Client freezes and can't be interacted with

EXPECTED RESULT
To be able to continue using it as normal

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: KDE PLASMA 
(available in About System)
KDE Plasma Version: 5.26.3
KDE Frameworks Version:  5.100.0
Qt Version: 5.15.7
Comment 1 Nate Graham 2022-11-22 18:34:11 UTC
I just tried this myself on Wayland (current git master), and got no freeze once the notification that a friend joined the game disappeared. Nor for any other notifications send by the Steam client app.

How reproducible is this for you? Does it always happen or only sometimes? Does it affect all games, or only some?
Comment 2 kodatarule 2022-11-23 05:08:55 UTC
Hello, it is happening every single time I get a notification, as a workaround if I click on the notification when it shows up for it to disappear it doesn't trigger the client to hang.
This started since 5.25 and has been present since.
Launching steam from terminal didn't show anything unusual nor an error message.
Any KDE log I could provide perhaps ?
Comment 3 David Gow 2022-11-23 09:42:49 UTC
(In reply to Nate Graham from comment #1)
> How reproducible is this for you? Does it always happen or only sometimes?
> Does it affect all games, or only some?

This used to occur sporadically for me (~6–12 months ago), then mysteriously stopped (or became very rare), but then mysteriously started again about ~½ an hour ago, after a reboot and an upgrade of the nVidia drivers (→ 525.53_k6.0.8_1-16.3), fcitx (→5.0.20-1.1), and Qt6 (→6.4.1-1.1) from openSUSE Tumbleweed. It's now happening pretty consistently (there are a lot of pending notifications on Steam, all of which successfully display, then one of the other steam windows will 'freeze'). One notification doesn't seem like it's enough to knock it over (unless it's badly timed), but I'd wager that lots of moving/resizing windows probably does…

This has only occurred with nVidia for me, and I think was helped last time by an upgrade (or hack to fix threading bugs) of libnvidia-egl-wayland. I'm currently running version 1.1.11, which should have all of the previously-useful fixes. (I had assumed we were hitting this issue: https://github.com/NVIDIA/egl-wayland/pull/53 )

Stacktrace from steam while it's frozen (only putting the active thread: the others didn't seem hugely useful. It's all in X11/the nVidia driver):

> Thread 1 (Thread 0xf7cbeb80 (LWP 9253) "steam"):
> #0  __kernel_vsyscall () at ../arch/x86/entry/vdso/vdso32/system_call.S:72
> #1  0xf7b157a7 in __GI___poll (timeout=-1, nfds=1, fds=0xfff68f1c) at ../sysdeps/unix/sysv/linux/poll.c:29
> #2  __GI___poll (fds=0xfff68f1c, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:26
> #3  0xf7cd2b65 in poll (__timeout=-1, __nfds=1, __fds=0xfff68f1c) at /usr/include/bits/poll2.h:39
> #4  _xcb_conn_wait (c=0x5840c2a0, vector=0x0, count=0x0, cond=<optimized out>) at /usr/src/debug/libxcb-1.15-1.4.i386/src/xcb_conn.c:508
> #5  0xf7cd4c7d in _xcb_conn_wait (count=0x0, vector=0x0, cond=0x58c63dd8, c=0x5840c2a0) at /usr/src/debug/libxcb-1.15-1.4.i386/src/xcb_conn.c:474
> #6  xcb_wait_for_special_event (c=0x5840c2a0, se=0x58c63dc0) at /usr/src/debug/libxcb-1.15-1.4.i386/src/xcb_in.c:806
> #7  0xf75160bd in  () at /lib/libGLX_nvidia.so.0
> #8  0xf74fa46b in  () at /lib/libGLX_nvidia.so.0
> #9  0xf615f6e3 in  () at /lib/libnvidia-glcore.so.525.53
> #10 0xf751948c in  () at /lib/libGLX_nvidia.so.0
> #11 0xf74e4192 in  () at /lib/libGLX_nvidia.so.0
> #12 0xedf85cd7 in  () at /home/david/.local/share/Steam/ubuntu12_32/vgui2_s.so
> #13 0xedf760f6 in  () at /home/david/.local/share/Steam/ubuntu12_32/vgui2_s.so
> #14 0xedf85811 in  () at /home/david/.local/share/Steam/ubuntu12_32/vgui2_s.so
> #15 0xedf8cbec in  () at /home/david/.local/share/Steam/ubuntu12_32/vgui2_s.so
> #16 0xf1d4408e in  () at /home/david/.local/share/Steam/ubuntu12_32/steamui.so
> #17 0xf1d46799 in  () at /home/david/.local/share/Steam/ubuntu12_32/steamui.so
> #18 0xf1d481f0 in  () at /home/david/.local/share/Steam/ubuntu12_32/steamui.so
> #19 0x5664dc99 in  ()
> #20 0x5664ebae in  ()
> #21 0x56638b30 in  ()
> #22 0xf7a23295 in __libc_start_call_main (main=main@entry=0x56638b00, argc=argc@entry=1, argv=argv@entry=0xfff6f954) at ../sysdeps/nptl/libc_start_call_main.h:58
> #23 0xf7a23358 in __libc_start_main_impl (main=0x56638b00, argc=1, argv=0xfff6f954, init=0x56ab1bb0 <__libc_csu_init>, fini=0x56ab1c20 <__libc_csu_fini>, rtld_fini=0xf7f6c990 <_dl_fini>, stack_end=0xfff6f94c) at ../csu/libc-start.c:381
> #24 0x5663d9f5 in _start ()

System info:
Operating System: openSUSE Tumbleweed 20221121
KDE Plasma Version: 5.26.3
KDE Frameworks Version: 5.100.0
Qt Version: 5.15.7
Kernel Version: 6.0.8-1-default (64-bit)
Graphics Platform: Wayland
Processors: 8 × Intel® Core™ i7-4770K CPU @ 3.50GHz
Memory: 31.3 GiB of RAM
Graphics Processor: NVIDIA GeForce GTX 1060 3GB/PCIe/SSE2
Manufacturer: Gigabyte Technology Co., Ltd.
Product Name: Z87X-UD5H
Comment 4 Nate Graham 2022-11-29 17:43:28 UTC
Thanks, that's really helpful. Despite the lack of debug symbols, we can clearly see that the issue is somewhere in the library for the NVIDIA driver, or the Steam library that's calling it. I would highly recommend reporting the bug to NVIDIA, either by sending an email to linux-bugs@nvidia.com or making a post at https://forums.developer.nvidia.com/c/gpu-graphics/linux. It would be helpful to the NVIDIA developers if you could run nvidia-bug-report.sh and attach the resulting file in your report. Thanks!

If that doesn't bear fruit, Valve would be the next candidate.