대기 또는 화면 잠금에서 깨어날 때 KDE Wayland 세션이 충돌합니다. 이유를 찾는 방법은 무엇입니까?

대기 또는 화면 잠금에서 깨어날 때 KDE Wayland 세션이 충돌합니다. 이유를 찾는 방법은 무엇입니까?

저는 KDE와 Wayland와 함께 Debian 11을 실행하고 있습니다. 이는 KDE 버전 Debian11의 X11이 아닌 Wayland의 문제입니다.

대기 모드에서 깨어날 때 일반적으로 대기 모드에서 깨어날 때 표시되는 로그인 화면 대신 시작 시 다른 로그인 화면이 표시됩니다. 대기 모드에서 재개할 때처럼 세션을 재개하는 대신 새 세션을 시작합니다(그리고 실행 중인 모든 애플리케이션을 다시 시작해야 합니다). 이 문제의 원인을 어떻게 알 수 있나요? 가능하다면 문제를 해결하는 데 도움이 되는 팁이 도움이 될 것입니다.

KDE Plasma 5.20.5에 대한 Wayland 지원이 좋지 않다는 것을 알고 있지만 며칠 전까지 계속 충돌이 발생할 때까지 몇 가지 문제에도 불구하고 전반적으로 오랫동안 작동했습니다 The Wayland connection broke. Did the Wayland compositor die?.

sudo journalctl | tail -n 1000관련성이 있을 수 있는 다음 로그 항목(깨어난 후)을 찾았습니다 .

...
systemd-sleep[190007]: System resumed.
polkitd(authority=local)[594]: Unregistered Authentication Agent for unix-session:21 (system bus name :1.335, object path /org/kde/PolicyKit1/AuthenticationAgent, locale .._...UTF-8) (disconnected from bus)
...
systemd[1]: Starting Refresh fwupd metadata and update motd...
anacron[190080]: Jobs will be executed sequentially
systemd[1]: Starting Rotate log files...
systemd[1]: Starting Daily man-db regeneration...
fwupd[189875]: FuPluginLinuxSwap    could not parse /proc/swaps: Error when getting information for file "/home/username/swapfile": No such file or directory
systemd[1]: fwupd-refresh.service: Succeeded
systemd[1]: Finished Refresh fwupd metadata and update motd.
kernel: kwin_wayland[181388]: segfault at 0 ip 0000000000000000 sp 00007ffd113c1538 error 14 in kwin_wayland[556620415000+12000]
kernel: Code: Unable to access opcode bytes at RIP 0xffffffffffffffd6.
...
org.kde.ActivityManager[189945]: kf.notifications: env says KDE is running but SNI unavailable -- check KDE_FULL_SESSION and XDG_CURRENT_DESKTOP
org.kde.ActivityManager[189945]: The Wayland connection broke. Did the Wayland compositor die?
org.kde.ActivityManager[189945]: KCrash: crashing... crashRecursionCounter = 2
org.kde.ActivityManager[189945]: KCrash: Application Name = drkonqi path = /usr/lib/x86_64-linux-gnu/libexec pid = 189945
org.kde.ActivityManager[189945]: KCrash: Arguments: /usr/lib/x86_64-linux-gnu/libexec/drkonqi --appname kactivitymanagerd --apppath /usr/lib/x86_64-linux-gnu/libexec --signal 11 --pid 181538 --startupid 0
...

KSystemLogWayland에서 실행하지 마십시오. 그렇지 않으면 관련 메시지가 더 있으면 다른 로그를 빠르게 확인하는 것이 쉬울 것입니다. 그 밖에 확인할 사항이 있나요?


이는 AFK 및 화면 잠금이 켜져 있거나 켜진 후 잠시 동안 발생합니다. 이런 일이 항상 발생하는 것은 아니지만 대부분의 경우 컴퓨터가 유휴 상태입니다. 예를 들어 로그에서(충돌 중 하나에 대한) 다음과 같습니다.

kernel: show_signal_msg: 53 callbacks suppressed
kernel: kwin_wayland[2291]: segfault at 29e700000000 ip 00007ff25989dc70 sp 00007ffe1e2adfe8 error 4 in libgbm.so.1.0.0[7ff25989d000+7000]
kernel: Code: 00 16 00 00 00 31 c0 48 83 c4 08 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 8b 07 ff a0 48 01 00 00 0f 1f 80 00 00 00 00 <48> 8b 07 ff a0 30 01 00 00 0f 1f 80 00 00 00 00 48 8b 07 ff a0 38
org.kde.ActivityManager[2460]: The Wayland connection broke. Did the Wayland compositor die?
org.kde.ActivityManager[2460]: KCrash: crashing... crashRecursionCounter = 2
org.kde.ActivityManager[2460]: KCrash: Application Name = kactivitymanagerd path = /usr/lib/x86_64-linux-gnu/libexec pid = 2460
org.kde.ActivityManager[2460]: KCrash: Arguments: /usr/lib/x86_64-linux-gnu/libexec/kactivitymanagerd
org.kde.ActivityManager[2460]: KCrash: Attempting to start /usr/lib/x86_64-linux-gnu/libexec/drkonqi
pulseaudio[2271]: X connection to :1 broken (explicit kill or server shutdown).

디스플레이 구성에서 다른 모니터를 활성화한 다음 다른 모니터를 활성화하고 이전 모니터를 비활성화한 다음 이를 되돌려 이전 모니터로 다시 전환하면 이런 일이 발생하기 시작했습니다. 그 사이에 몇 번의 충돌이 있었습니다.이전에 다른 모니터로 전환할 수 있는 해결 방법으로 이 작업을 여러 번 수행했습니다.일반적으로 충돌이 발생하지 않으므로(일부 Qt 애플리케이션만 충돌) 충돌하지 않으며 세션을 종료할 필요가 없습니다.

그러나 이렇게 해도 며칠 전까지만 해도 이 문제가 발생하지 않았습니다. 그 외에는 최근 몇 가지 업그레이드만 설치했는데 관련성이 있는 유일한 업그레이드는 sudo와 firefox뿐입니다. 시스템에 최신 업데이트가 있습니다. /home/username/swapfile존재합니다. 슬프게도이 블루투스 취약점에는 여전히 취약합니다.따라서 이것은 fwupd와 관련이 있을 수 있습니다. 또한 최근에는 메인 드라이브의 디스크 공간이 가득 차서 logrotate 프로세스를 종료했습니다.

답변1

Debian12에서는 더 이상 충돌이 발생하지 않습니다. 화면 잠금에 몇 가지 문제가 있었지만 X11에서 버그를 수정한 후 이제 Wayland가 작동합니다. 예를 들어, 디스플레이 구성에서 두 번째로 꺼진 모니터를 비활성화해야 했습니다. 하지만 아직 그 이유를 알아내는 방법을 모르겠습니다. 왜냐하면Wayland-session.log파일이 비어 있고 Journalctl 로그에서 무엇을 찾아야 할지 모르겠습니다.

관련 정보