| Summary: | kwin_wayland SIGSEGV in KWaylandServer::OutputInterface::handle() | ||
|---|---|---|---|
| Product: | [Plasma] kwin | Reporter: | kdebugs <kdebugs> |
| Component: | wayland-generic | Assignee: | KWin default assignee <kwin-bugs-null> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | crash | CC: | nate, tamius.han, wolfendeathx |
| Priority: | NOR | ||
| Version First Reported In: | 5.27.2 | ||
| Target Milestone: | --- | ||
| Platform: | Fedora RPMs | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: |
system journal
decoded backtrace drkonqi link to core file |
||
Created attachment 157203 [details]
decoded backtrace
Created attachment 157204 [details]
drkonqi
Created attachment 157207 [details]
link to core file
Pasting backtrace inline for searchability:
#0 std::__uniq_ptr_impl<KWaylandServer::OutputInterfacePrivate, std::default_delete<KWaylandServer::OutputInterfacePrivate> >::_M_ptr (this=0x10) at /usr/include/c++/12/bits/unique_ptr.h:191
191 pointer _M_ptr() const noexcept { return std::get<0>(_M_t); }
[Current thread is 1 (Thread 0x7fb7849c2980 (LWP 2168))]
(gdb) bt full
#0 std::__uniq_ptr_impl<KWaylandServer::OutputInterfacePrivate, std::default_delete<KWaylandServer::OutputInterfacePrivate> >::_M_ptr() const (this=0x10)
at /usr/include/c++/12/bits/unique_ptr.h:191
#1 std::unique_ptr<KWaylandServer::OutputInterfacePrivate, std::default_delete<KWaylandServer::OutputInterfacePrivate> >::get() const (this=0x10) at /usr/include/c++/12/bits/unique_ptr.h:462
#2 std::unique_ptr<KWaylandServer::OutputInterfacePrivate, std::default_delete<KWaylandServer::OutputInterfacePrivate> >::operator->() const (this=0x10)
at /usr/include/c++/12/bits/unique_ptr.h:455
#3 KWaylandServer::OutputInterface::handle() const (this=0x0) at /usr/src/debug/kwin-5.27.2-1.fc37.x86_64/src/wayland/output_interface.cpp:263
#4 0x00007fb78b9f14af in KWaylandServer::DpmsInterface::sendMode() (this=0x7fb77000b550) at /usr/src/debug/kwin-5.27.2-1.fc37.x86_64/src/wayland/dpms_interface.cpp:141
mode = <optimized out>
wlMode = <optimized out>
#5 0x00007fb78b9f183a in operator() (__closure=0x55966c53a920) at /usr/src/debug/kwin-5.27.2-1.fc37.x86_64/src/wayland/dpms_interface.cpp:92
this = 0x7fb77000b550
#6 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KWaylandServer::DpmsInterface::DpmsInterface(KWaylandServer::OutputInterface*, wl_resource*)::<lambda()> >::call
(arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#7 QtPrivate::Functor<KWaylandServer::DpmsInterface::DpmsInterface(KWaylandServer::OutputInterface*, wl_resource*)::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>, f=...)
at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#8 QtPrivate::QFunctorSlotObject<KWaylandServer::DpmsInterface::DpmsInterface(KWaylandServer::OutputInterface*, wl_resource*)::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x55966c53a910, r=<optimized out>, a=<optimized out>, ret=<optimized out>)
at /usr/include/qt5/QtCore/qobjectdefs_impl.h:443
#9 0x00007fb789ed0e96 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffcad5720d0, r=<optimized out>, this=0x55966c53a910)
at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
receiver = <optimized out>
td = <optimized out>
receiverInSameThread = <optimized out>
senderData = {previous = 0x0, receiver = 0x7fb77000b550, sender = 0x55966b864520, signal = 14}
c = 0x7fb770018060
connections = {d = 0x55966b87a800}
list = <optimized out>
inSenderThread = true
highestConnectionId = 340
signalVector = 0x55966b9354b0
currentThreadId = 0x7fb7849c2980
sp = <optimized out>
signal_spy_set = 0x0
empty_argv = {0x0}
senderDeleted = false
#10 doActivate<false>(QObject*, int, void**) (sender=0x55966b864520, signal_index=14, argv=0x7ffcad5720d0) at kernel/qobject.cpp:3923
receiver = <optimized out>
td = <optimized out>
receiverInSameThread = <optimized out>
senderData = {previous = 0x0, receiver = 0x7fb77000b550, sender = 0x55966b864520, signal = 14}
c = 0x7fb770018060
connections = {d = 0x55966b87a800}
list = <optimized out>
inSenderThread = true
highestConnectionId = 340
signalVector = 0x55966b9354b0
currentThreadId = 0x7fb7849c2980
sp = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--c
signal_spy_set = 0x0
empty_argv = {0x0}
senderDeleted = false
#11 0x00007fb78b7f93d1 in KWin::Output::setState(KWin::Output::State const&) (this=0x55966b864520, state=...) at /usr/src/debug/kwin-5.27.2-1.fc37.x86_64/src/core/output.cpp:292
oldState = {position = {xp = 0, yp = 0}, scale = 1, transform = KWin::Output::Transform::Normal, modes = {<QListSpecialMethods<std::shared_ptr<KWin::OutputMode> >> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic<int> = { -1 }}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55966b87a830}, d = 0x55966b87a830}}, currentMode = std::shared_ptr<KWin::OutputMode> (use count 9, weak count 23) = {get() = 0x55966b871430}, dpmsMode = KWin::Output::DpmsMode::On, subPixel = KWin::Output::SubPixel::Unknown, enabled = true, overscan = 0, rgbRange = KWin::Output::RgbRange::Automatic}
#12 0x00007fb78b9a9ba9 in KWin::DrmOutput::updateDpmsMode(KWin::Output::DpmsMode) (this=this@entry=0x55966b864520, dpmsMode=dpmsMode@entry=KWin::Output::DpmsMode::Off)
at /usr/src/debug/kwin-5.27.2-1.fc37.x86_64/src/backends/drm/drm_output.cpp:353
next = {position = {xp = 0, yp = 0}, scale = 1, transform = KWin::Output::Transform::Normal, modes = {<QListSpecialMethods<std::shared_ptr<KWin::OutputMode> >> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic<int> = { -1 }}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55966b87a830}, d = 0x55966b87a830}}, currentMode = std::shared_ptr<KWin::OutputMode> (use count 9, weak count 23) = {get() = 0x55966b871430}, dpmsMode = KWin::Output::DpmsMode::Off, subPixel = KWin::Output::SubPixel::Unknown, enabled = true, overscan = 0, rgbRange = KWin::Output::RgbRange::Automatic}
#13 0x00007fb78b9aac1d in KWin::DrmOutput::setDrmDpmsMode(KWin::Output::DpmsMode) (this=0x55966b864520, mode=KWin::Output::DpmsMode::Off)
at /usr/src/debug/kwin-5.27.2-1.fc37.x86_64/src/backends/drm/drm_output.cpp:276
active = false
isActive = true
#14 0x00007fb789ed0e96 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffcad5723a0, r=<optimized out>, this=0x55966b8789c0)
at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
receiver = <optimized out>
td = <optimized out>
receiverInSameThread = <optimized out>
senderData = {previous = 0x0, receiver = 0x55966b864520, sender = 0x55966b864618, signal = 3}
c = 0x55966b870350
connections = {d = 0x55966b87a590}
list = <optimized out>
inSenderThread = true
highestConnectionId = 1
signalVector = 0x55966b870bc0
currentThreadId = 0x7fb7849c2980
sp = <optimized out>
signal_spy_set = 0x0
empty_argv = {0x0}
senderDeleted = false
#15 doActivate<false>(QObject*, int, void**) (sender=0x55966b864618, signal_index=3, argv=0x7ffcad5723a0) at kernel/qobject.cpp:3923
receiver = <optimized out>
td = <optimized out>
receiverInSameThread = <optimized out>
senderData = {previous = 0x0, receiver = 0x55966b864520, sender = 0x55966b864618, signal = 3}
c = 0x55966b870350
connections = {d = 0x55966b87a590}
list = <optimized out>
inSenderThread = true
highestConnectionId = 1
signalVector = 0x55966b870bc0
currentThreadId = 0x7fb7849c2980
sp = <optimized out>
signal_spy_set = 0x0
empty_argv = {0x0}
senderDeleted = false
#16 0x00007fb789ecbe27 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
(sender=<optimized out>, m=m@entry=0x7fb78a15e580 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffcad5723a0) at kernel/qobject.cpp:3983
#17 0x00007fb789ed421e in QTimer::timeout(QTimer::QPrivateSignal) (this=<optimized out>, _t1=...) at .moc/moc_qtimer.cpp:205
_a = {0x0, 0x7ffcad57239f}
#18 0x00007fb789ec7fc5 in QObject::event(QEvent*) (this=0x55966b864618, e=0x7ffcad572500) at kernel/qobject.cpp:1369
#19 0x00007fb7893aed62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x55966b864618, e=0x7ffcad572500) at kernel/qapplication.cpp:3640
consumed = false
filtered = false
#20 0x00007fb789e9d4e8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55966b864618, event=0x7ffcad572500) at kernel/qcoreapplication.cpp:1064
selfRequired = true
result = false
cbdata = {0x55966b864618, 0x7ffcad572500, 0x7ffcad57248f}
d = <optimized out>
threadData = 0x55966b4aa6a0
scopeLevelCounter = {threadData = 0x55966b4aa6a0}
#21 0x00007fb789e9d6d2 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1462
#22 0x00007fb789eed981 in QTimerInfoList::activateTimers() (this=this@entry=0x55966b4af498) at kernel/qtimerinfo_unix.cpp:643
*** Bug 467307 has been marked as a duplicate of this bug. *** *** Bug 467298 has been marked as a duplicate of this bug. *** *** This bug has been marked as a duplicate of bug 466346 *** |
Created attachment 157202 [details] system journal SUMMARY System is a laptop with an external monitor attached on HDMI port; I was not at the computer when the crash happened, and certainly wasn't interacting with it. When I came back to it I found that kwin_wayland had crashed and restarted, so I'm afraid I can't provide exact events leading up to the crash, perhaps it has to do with screenlocking. But I've attached core dump, back trace & libs info as found by drkonqi and system journal around the crash. STEPS TO REPRODUCE unsure OBSERVED RESULT kwin_wayland crashed EXPECTED RESULT kwin_wayland should not crash SOFTWARE/OS VERSIONS Operating System: Fedora Linux 37 KDE Plasma Version: 5.27.2 KDE Frameworks Version: 5.103.0 Qt Version: 5.15.8 Kernel Version: 6.1.14-200.fc37.x86_64 (64-bit) Graphics Platform: Wayland Processors: 16 × AMD Ryzen 7 PRO 6850U with Radeon Graphics Memory: 14.4 GiB of RAM Graphics Processor: AMD Radeon Graphics 680M