Bug 466923

Summary: XWayland crash on wake with DP monitor that takes 6 seconds to turn on
Product: [Plasma] kwin Reporter: Jason Playne <jason>
Component: wayland-genericAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DOWNSTREAM    
Severity: normal CC: kde, nate
Priority: NOR    
Version: 5.27.2   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: The the back traces in systemd after resume

Description Jason Playne 2023-03-06 03:59:06 UTC
Created attachment 157029 [details]
The the back traces in systemd after resume

SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***


STEPS TO REPRODUCE
1. Log into a wayland session
2. open an xwayland app (for example, discord)
3. push system to sleep
4. wake system

OBSERVED RESULT
No XWayland apps are running

EXPECTED RESULT
The software I started before putting the machine to sleep is there when I wake it up

SOFTWARE/OS VERSIONS
Operating System: KDE neon 5.27
KDE Plasma Version: 5.27.2
KDE Frameworks Version: 5.103.0
Qt Version: 5.15.8
Kernel Version: 6.2.2-x64v3-xanmod1 (64-bit)
Graphics Platform: Wayland
Processors: 24 × AMD Ryzen 9 7900X 12-Core Processor
Memory: 30.5 GiB of RAM
Graphics Processor: AMD Radeon RX 7900 XT
Manufacturer: Gigabyte Technology Co., Ltd.
Product Name: B650 AORUS ELITE AX

ADDITIONAL INFORMATION
this happens every time i put the computer to sleep and wake it again.
It has been happening for a while now (sometime during the 5.26 release cycle)
Comment 1 Jason Playne 2023-03-06 04:06:14 UTC
The first entry in systemd's coredump list for /usr/bin/Xwayland is from Fri 2022-12-09
Comment 2 Jason Playne 2023-03-06 04:07:43 UTC
xwayland installed version is 2:22.1.1-1ubuntu0.5
Comment 3 Nate Graham 2023-03-08 05:15:51 UTC
Can you get a backtrace of the crash? In a terminal window, enter `coredumpctl gdb 264915`, then `bt`, then hit the return key a few times.
Comment 4 Jason Playne 2023-03-09 01:03:07 UTC
Sure

warning: Section `.reg-xstate/264915' in core file too small.
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=139954276735168) at ./nptl/pthread_kill.c:44
44      ./nptl/pthread_kill.c: No such file or directory.
[Current thread is 1 (Thread 0x7f49a4f318c0 (LWP 264915))]
(gdb) bt
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=139954276735168) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=139954276735168) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=139954276735168, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007f49a5442476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007f49a54287f3 in __GI_abort () at ./stdlib/abort.c:79
#5  0x000055bd2cded080 in ?? ()
#6  0x000055bd2cdf8b2f in ?? ()
#7  0x000055bd2cdeb274 in ?? ()
#8  <signal handler called>
#9  0x000055bd2ccbf389 in ?? ()
#10 0x00007f49a53fae2e in ?? () from /lib/x86_64-linux-gnu/libffi.so.8
#11 0x00007f49a53f7493 in ?? () from /lib/x86_64-linux-gnu/libffi.so.8
#12 0x00007f49a5b99b20 in ?? () from /lib/x86_64-linux-gnu/libwayland-client.so.0
#13 0x00007f49a5b9a2c3 in ?? () from /lib/x86_64-linux-gnu/libwayland-client.so.0
#14 0x00007f49a5b9a4bc in wl_display_dispatch_queue_pending () from /lib/x86_64-linux-gnu/libwayland-client.so.0
#15 0x000055bd2ccc44bb in ?? ()
#16 0x000055bd2cdec841 in ?? ()
#17 0x000055bd2cd2ccb0 in ?? ()
#18 0x000055bd2ccbac63 in ?? ()
#19 0x00007f49a5429d90 in __libc_start_call_main (main=main@entry=0x55bd2ccb9420, argc=argc@entry=13, argv=argv@entry=0x7ffc5a458b48) at ../sysdeps/nptl/libc_start_call_main.h:58
#20 0x00007f49a5429e40 in __libc_start_main_impl (main=0x55bd2ccb9420, argc=13, argv=0x7ffc5a458b48, init=<optimised out>, fini=<optimised out>, rtld_fini=<optimised out>, stack_end=0x7ffc5a458b38)
    at ../csu/libc-start.c:392
#21 0x000055bd2ccbc495 in ?? ()
Comment 5 Jason Playne 2023-03-09 01:06:07 UTC
seems to be a lot of question marks there, how do I tell which debug libs I need to install?
Comment 6 Jason Playne 2023-03-09 01:08:46 UTC
with xwayland-dbgsym installed I get this


warning: Section `.reg-xstate/42875' in core file too small.
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=139852397381824) at ./nptl/pthread_kill.c:44
44      ./nptl/pthread_kill.c: No such file or directory.
[Current thread is 1 (Thread 0x7f31ec7788c0 (LWP 42875))]
(gdb) bt
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=139852397381824) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=139852397381824) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=139852397381824, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007f31ecc42476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007f31ecc287f3 in __GI_abort () at ./stdlib/abort.c:79
#5  0x0000564cd6182080 in OsAbort () at ../os/utils.c:1353
#6  0x0000564cd618db2f in AbortServer () at ../os/log.c:879
#7  FatalError (f=0x564cd61e1020 "Caught signal %d (%s). Server aborting\n") at ../os/log.c:1017
#8  0x0000564cd6180274 in OsSigHandler (unused=<optimised out>, sip=0x7fff9ce043f0, signo=11) at ../os/osinit.c:156
#9  OsSigHandler (signo=11, sip=0x7fff9ce043f0, unused=<optimised out>) at ../os/osinit.c:110
#10 <signal handler called>
#11 xwl_screen_destroy_drm_lease_device (xwl_screen=0x564cd8d5b380, wp_drm_lease_device_v1=0x564cd8d80d00) at ../hw/xwayland/xwayland-drm-lease.c:430
#12 0x00007f31ece6ee2e in ?? () from /lib/x86_64-linux-gnu/libffi.so.8
#13 0x00007f31ece6b493 in ?? () from /lib/x86_64-linux-gnu/libffi.so.8
#14 0x00007f31ed3e0b20 in ?? () from /lib/x86_64-linux-gnu/libwayland-client.so.0
#15 0x00007f31ed3e12c3 in ?? () from /lib/x86_64-linux-gnu/libwayland-client.so.0
#16 0x00007f31ed3e14bc in wl_display_dispatch_queue_pending () from /lib/x86_64-linux-gnu/libwayland-client.so.0
#17 0x0000564cd60594bb in xwl_read_events (xwl_screen=0x564cd805a550) at ../hw/xwayland/xwayland-screen.c:482
#18 xwl_read_events (xwl_screen=0x564cd805a550) at ../hw/xwayland/xwayland-screen.c:469
#19 0x0000564cd6181841 in ospoll_wait (ospoll=0x564cd8056210, timeout=<optimised out>) at ../os/ospoll.c:657
#20 0x0000564cd60c1cb0 in WaitForSomething (are_ready=0) at ../os/WaitFor.c:208
#21 Dispatch () at ../dix/dispatch.c:492
#22 0x0000564cd604fc63 in dix_main (envp=<optimised out>, argv=<optimised out>, argc=<optimised out>) at ../dix/main.c:271
#23 main (argc=<optimised out>, argv=<optimised out>, envp=<optimised out>) at ../dix/stubmain.c:34
Comment 7 Nate Graham 2023-03-10 15:13:23 UTC
Thanks. We're still missing a lot of debug symbols but it seems like it's crashing when screens change? Do you have multiple screens, and are any of them slow to turn on/reconnect? Are any of them using a DisplayPort cable?
Comment 8 Jason Playne 2023-03-10 15:25:30 UTC
(In reply to Nate Graham from comment #7)
> Thanks. We're still missing a lot of debug symbols but it seems like it's
> crashing when screens change? Do you have multiple screens, and are any of
> them slow to turn on/reconnect? Are any of them using a DisplayPort cable?

I have a single monitor (AOC 34" 3440x1440 doing 144hz) plugged in via Display Port.

I personally wouldn't call it "A long time", <6 seconds for the whole system to resume and screen to turn on I would guess - but what's the threshold there? how many seconds?
Comment 9 Nate Graham 2023-03-13 14:43:37 UTC
There's no set threshold, but the longer it takes to turn back on, the higher the chance that it will trigger a re-layout of stuff which runs a lot of code and could be the cause of this crash. That's why I was asking.
Comment 10 Jason Playne 2023-03-13 14:52:56 UTC
(In reply to Nate Graham from comment #9)
> There's no set threshold, but the longer it takes to turn back on, the
> higher the chance that it will trigger a re-layout of stuff which runs a lot
> of code and could be the cause of this crash. That's why I was asking.

it's about 6 seconds from sleep to monitor on showing SDDM - if that helps
Comment 11 David Edmundson 2023-06-12 21:45:15 UTC
If xwayland crashes that's an xwayland bug that needs fixing there.
Please file a bug with that trace