https://bugs.kde.org/show_bug.cgi?id=501204

            Bug ID: 501204
           Summary: Certain monitor combinations cause kwin to crash
    Classification: Plasma
           Product: kwin
           Version: 6.3.2
          Platform: Neon
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: wayland-generic
          Assignee: kwin-bugs-n...@kde.org
          Reporter: k...@neonhorizon.co.uk
  Target Milestone: ---

SUMMARY
Since an update received on 26th Feb, plugging in specific combinations of
monitors causes kwin to crash resulting in the current user being logged out
and preventing any future user from logging back in on a wayland session
(screens flash multiple times and then the system drops back to the login
screen).

STEPS TO REPRODUCE
I currently have a setup with 7 display port monitors on two ARC A580 GPU's.
The issue does not appear to be linked to either of the GPUs or any of the
monitors specifically. All monitors work in different combinations up to 5 and
more often than not 6. However plugging in the 7th monitor triggers kwin to
crash. The GPU selected for the 7th monitor connection does not change the
result.

OBSERVED RESULT
User gets logged out and can't log back in

EXPECTED RESULT
Connected screen gets activated

Operating System: 
KDE neon 6.3
KDE Plasma Version: 6.3.2
KDE Frameworks Version: 6.11.0
Qt Version: 6.8.2
Kernel Version: 6.11.0-19-generic (64-bit)
Graphics Platform: Wayland
Processors: 32 × AMD Ryzen 9 9950X 16-Core Processor
Memory: 30.4 GiB of RAM
Graphics Processor 1: Mesa Intel® Arc
Graphics Processor 2: AMD Radeon Graphics
Graphics Processor 3: Mesa Intel® Arc
Manufacturer: Micro-Star International Co., Ltd.
Product Name: MS-7D69
System Version: 1.0

ADDITIONAL INFORMATION

Discussion can be seen here:
https://discuss.kde.org/t/multiple-monitor-issues-since-26-feb/31180

>From syslog:
kernel: i915 0000:03:00.0: [drm] *ERROR* Failed to read DPCD register 0x92
kwin_wayland[2204]: kwin_core: Applying output config failed!
kwin_wayland[2204]: ASSERT: "m_pending.crtc" in file
./src/backends/drm/drm_pipeline.cpp, line 53
kwin_wayland_wrapper[2204]: KCrash: Application 'kwin_wayland' crashing...
crashRecursionCounter = 2

The affected assert:
https://invent.kde.org/plasma/kwin/-/blob/master/src/backends/drm/drm_pipeline.cpp?ref_type=heads#L53

Output from coredumpctl -1 gdb kwin_wayland:
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)
at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=<optimized out>) at
./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at
./nptl/pthread_kill.c:89
#3  0x00007908f884527e in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26
#4  0x00007908fc3942ab in KCrash::defaultCrashHandler(int) () from
/lib/x86_64-linux-gnu/libKF6Crash.so.6
#5  <signal handler called>
#6  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)
at ./nptl/pthread_kill.c:44
#7  __pthread_kill_internal (signo=6, threadid=<optimized out>) at
./nptl/pthread_kill.c:78
#8  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at
./nptl/pthread_kill.c:89
#9  0x00007908f884527e in __GI_raise (sig=sig@entry=6) at
../sysdeps/posix/raise.c:26
#10 0x00007908f88288ff in __GI_abort () at ./stdlib/abort.c:79
#11 0x00007908f950c1ac in ?? () from /lib/x86_64-linux-gnu/libQt6Core.so.6
#12 0x00007908f950d089 in QMessageLogger::fatal(char const*, ...) const () from
/lib/x86_64-linux-gnu/libQt6Core.so.6
#13 0x00007908f950d100 in qt_assert(char const*, char const*, int) () from
/lib/x86_64-linux-gnu/libQt6Core.so.6
#14 0x00007908fbbdc130 in ?? () from /lib/x86_64-linux-gnu/libkwin.so.6
#15 0x00007908fbec6e89 in
KWin::DrmOutput::present(std::shared_ptr<KWin::OutputFrame> const&) () from
/lib/x86_64-linux-gnu/libkwin.so.6
#16 0x00007908fbc0c90a in KWin::WaylandCompositor::composite(KWin::RenderLoop*)
() from /lib/x86_64-linux-gnu/libkwin.so.6
#17 0x00007908f94763e9 in ?? () from /lib/x86_64-linux-gnu/libQt6Core.so.6
#18 0x00007908fbc2d7c4 in KWin::RenderLoop::frameRequested(KWin::RenderLoop*)
() from /lib/x86_64-linux-gnu/libkwin.so.6
#19 0x00007908fbc2e652 in KWin::RenderLoopPrivate::dispatch() () from
/lib/x86_64-linux-gnu/libkwin.so.6
#20 0x00007908f94763e9 in ?? () from /lib/x86_64-linux-gnu/libQt6Core.so.6
#21 0x00007908f942025d in QTimer::timeout(QTimer::QPrivateSignal) () from
/lib/x86_64-linux-gnu/libQt6Core.so.6
#22 0x00007908f9403806 in QObject::event(QEvent*) () from
/lib/x86_64-linux-gnu/libQt6Core.so.6
#23 0x00007908fa801158 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /lib/x86_64-linux-gnu/libQt6Widgets.so.6
#24 0x00007908f94aefa0 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() from /lib/x86_64-linux-gnu/libQt6Core.so.6
#25 0x00007908f9385f58 in QTimerInfoList::activateTimers() () from
/lib/x86_64-linux-gnu/libQt6Core.so.6
#26 0x00007908f9388fba in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
from /lib/x86_64-linux-gnu/libQt6Core.so.6
#27 0x00007908f9f5a7b2 in
QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
() from /lib/x86_64-linux-gnu/libQt6Gui.so.6
#28 0x00007908f94b14d3 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
/lib/x86_64-linux-gnu/libQt6Core.so.6
#29 0x00007908f94b2ffd in QCoreApplication::exec() () from
/lib/x86_64-linux-gnu/libQt6Core.so.6
#30 0x0000629c87950384 in ?? ()
#31 0x00007908f882a1ca in __libc_start_call_main
(main=main@entry=0x629c8794e4a0, argc=argc@entry=14,
argv=argv@entry=0x7ffebc1e7eb8) at ../sysdeps/nptl/libc_start_call_main.h:58
#32 0x00007908f882a28b in __libc_start_main_impl (main=0x629c8794e4a0, argc=14,
argv=0x7ffebc1e7eb8, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7ffebc1e7ea8) at ../csu/libc-start.c:360
#33 0x0000629c87956665 in ?? ()

Start of output from coredumpctl -1 info kwin_wayland:
           PID: 41504 (kwin_wayland)
           UID: 1000 (daniel)
           GID: 1000 (daniel)
        Signal: 6 (ABRT)
     Timestamp: Fri 2025-03-07 17:02:51 GMT (15min ago)
  Command Line: /usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0
--xwayland-fd 8 --xwayland-fd 9 --xwayland-display :1 --xwayland-xauthority
/run/user/1000/xauth_jLvdSz --xwayland
    Executable: /usr/bin/kwin_wayland
 Control Group:
/user.slice/user-1000.slice/user@1000.service/session.slice/plasma-kwin_wayland.service
          Unit: user@1000.service
     User Unit: plasma-kwin_wayland.service
         Slice: user-1000.slice
     Owner UID: 1000 (daniel)
       Boot ID: ebd186c6c50347eb8dddeb8e0306e63f
    Machine ID: 58cb5763b0c14d1ba65fa14a9b9a25df
      Hostname: Limo
       Storage:
/var/lib/systemd/coredump/core.kwin_wayland.1000.ebd186c6c50347eb8dddeb8e0306e63f.41504.1741366971000000.zst
(inaccessible)
       Message: Process 41504 (kwin_wayland) of user 1000 dumped core.

                Module libgomp.so.1 from deb gcc-14-14.2.0-4ubuntu2~24.04.amd64
                Module libgcc_s.so.1 from deb
gcc-14-14.2.0-4ubuntu2~24.04.amd64
                Module libudev.so.1 from deb systemd-255.4-1ubuntu8.5.amd64
                Module libzstd.so.1 from deb
libzstd-1.5.5+dfsg2-2build1.1.amd64
                Module libstdc++.so.6 from deb
gcc-14-14.2.0-4ubuntu2~24.04.amd64
                Module libsystemd.so.0 from deb systemd-255.4-1ubuntu8.5.amd64
                Stack trace of thread 41504:
                #0  0x00007b6a2c09eb2c __pthread_kill_implementation (libc.so.6
+ 0x9eb2c)
                #1  0x00007b6a2c04527e __GI_raise (libc.so.6 + 0x4527e)
                #2  0x00007b6a2fa3b2ab _ZN6KCrash19defaultCrashHandlerEi
(libKF6Crash.so.6 + 0x92ab)
                #3  0x00007b6a2c045330 __restore_rt (libc.so.6 + 0x45330)
                #4  0x00007b6a2c09eb2c __pthread_kill_implementation (libc.so.6
+ 0x9eb2c)
                #5  0x00007b6a2c04527e __GI_raise (libc.so.6 + 0x4527e)
                #6  0x00007b6a2c0288ff __GI_abort (libc.so.6 + 0x288ff)
                #7  0x00007b6a2cd0c1ac n/a (libQt6Core.so.6 + 0x50c1ac)
                #8  0x00007b6a2cd0d089 _ZNK14QMessageLogger5fatalEPKcz
(libQt6Core.so.6 + 0x50d089)
                #9  0x00007b6a2cd0d100 _Z9qt_assertPKcS0_i (libQt6Core.so.6 +
0x50d100)
                #10 0x00007b6a2f1dc130 n/a (libkwin.so.6 + 0x1dc130)
                #11 0x00007b6a2f4c6e89
_ZN4KWin9DrmOutput7presentERKSt10shared_ptrINS_11OutputFrameEE (libkwin.so.6 +
0x4c6e89)
                #12 0x00007b6a2f20c90a
_ZN4KWin17WaylandCompositor9compositeEPNS_10RenderLoopE (libkwin.so.6 +
0x20c90a)
                #13 0x00007b6a2cc763e9 n/a (libQt6Core.so.6 + 0x4763e9)
                #14 0x00007b6a2f22d7c4
_ZN4KWin10RenderLoop14frameRequestedEPS0_ (libkwin.so.6 + 0x22d7c4)
                #15 0x00007b6a2f22e652 _ZN4KWin17RenderLoopPrivate8dispatchEv
(libkwin.so.6 + 0x22e652)
                #16 0x00007b6a2cc763e9 n/a (libQt6Core.so.6 + 0x4763e9)
                #17 0x00007b6a2cc2025d _ZN6QTimer7timeoutENS_14QPrivateSignalE
(libQt6Core.so.6 + 0x42025d)
                #18 0x00007b6a2cc03806 _ZN7QObject5eventEP6QEvent
(libQt6Core.so.6 + 0x403806)
                #19 0x00007b6a2de01158
_ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt6Widgets.so.6 +
0x601158)
                #20 0x00007b6a2ccaefa0
_ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 +
0x4aefa0)
                #21 0x00007b6a2cb85f58 _ZN14QTimerInfoList14activateTimersEv
(libQt6Core.so.6 + 0x385f58)
                #22 0x00007b6a2cb88fba
_ZN20QEventDispatcherUNIX13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE
(libQt6Core.so.6 + 0x388fba)
                #23 0x00007b6a2d55a7b2
_ZN23QUnixEventDispatcherQPA13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE
(libQt6Gui.so.6 + 0x75a7b2)
                #24 0x00007b6a2ccb14d3
_ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 +
0x4b14d3)
                #25 0x00007b6a2ccb2ffd _ZN16QCoreApplication4execEv
(libQt6Core.so.6 + 0x4b2ffd)
                #26 0x00005a05c23d9384 n/a (kwin_wayland + 0x66384)
                #27 0x00007b6a2c02a1ca __libc_start_call_main (libc.so.6 +
0x2a1ca)
                #28 0x00007b6a2c02a28b __libc_start_main_impl (libc.so.6 +
0x2a28b)
                #29 0x00005a05c23df665 n/a (kwin_wayland + 0x6c665)

Further syslog detail:
2025-03-07T17:02:42.875099+00:00 Limo konsole[3163]: qt.qpa.wayland: Attempting
wayland reconnect
2025-03-07T17:02:42.875146+00:00 Limo evolution-alarm[4215]: Error reading
events from display: Broken pipe
2025-03-07T17:02:42.875194+00:00 Limo ckb-next[2961]: The Wayland connection
broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875213+00:00 Limo ckb-next[2961]: The Wayland connection
broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875254+00:00 Limo org_kde_powerdevil[4522]: The Wayland
connection broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875296+00:00 Limo xdg-desktop-portal-kde[2584]: The Wayland
connection broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875339+00:00 Limo kactivitymanagerd[2574]: The Wayland
connection broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875383+00:00 Limo kdeconnectd[2763]: 2025-03-07T17:02:42
default: The Wayland connection broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875399+00:00 Limo org_kde_powerdevil[4522]: qt.qpa.wayland:
Attempting wayland reconnect
2025-03-07T17:02:42.875407+00:00 Limo kdeconnectd[2763]: 2025-03-07T17:02:42
qt.qpa.wayland: Attempting wayland reconnect
2025-03-07T17:02:42.875418+00:00 Limo baloorunner[38936]: Failed to write to
the pipe: Bad file descriptor.
2025-03-07T17:02:42.875465+00:00 Limo solaar[2981]: Error reading events from
display: Broken pipe
2025-03-07T17:02:42.875513+00:00 Limo xdg-desktop-por[2239]: Error reading
events from display: Broken pipe
2025-03-07T17:02:42.875572+00:00 Limo kded6[2514]: The Wayland connection
broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875586+00:00 Limo kded6[2514]: qt.qpa.wayland: Attempting
wayland reconnect
2025-03-07T17:02:42.875597+00:00 Limo org_kde_powerdevil[4522]: Failed to write
to the pipe: Bad file descriptor.
2025-03-07T17:02:42.875609+00:00 Limo baloorunner[38936]: qt.qpa.wayland: There
are no outputs - creating placeholder screen
2025-03-07T17:02:42.875670+00:00 Limo polkit-kde-authentication-agent-1[2582]:
The Wayland connection broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875699+00:00 Limo org_kde_powerdevil[4522]: qt.qpa.wayland:
There are no outputs - creating placeholder screen
2025-03-07T17:02:42.875710+00:00 Limo polkit-kde-authentication-agent-1[2582]:
qt.qpa.wayland: Attempting wayland reconnect
2025-03-07T17:02:42.875754+00:00 Limo plasmashell[2543]: The Wayland connection
broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875771+00:00 Limo kactivitymanagerd[2574]: qt.qpa.wayland:
Attempting wayland reconnect
2025-03-07T17:02:42.875784+00:00 Limo kdeconnectd[2763]: 2025-03-07T17:02:42
default: Failed to write to the pipe: Bad file descriptor.
2025-03-07T17:02:42.875869+00:00 Limo kwalletd6[2161]: The Wayland connection
broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875950+00:00 Limo DiscoverNotifier[3004]: The Wayland
connection broke. Did the Wayland compositor die?
2025-03-07T17:02:42.875969+00:00 Limo konsole[3163]: Failed to write to the
pipe: Bad file descriptor.
2025-03-07T17:02:42.875979+00:00 Limo kwalletd6[2161]: qt.qpa.wayland:
Attempting wayland reconnect

As an additional piece of information - when waking from sleep even with a
combination of monitors connected that works, since the update I am greeted by
all black screens one of which has a stationary mouse cursor on it. It seems
like some kind of hard lock as even ctrl-alt-F# doesn't reach a terminal.
Nothing seems to work except hitting the power button. This may or may not be
connected.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to