Bug 414872 - Crash when unplugging second monitor under Wayland
Summary: Crash when unplugging second monitor under Wayland
Status: RESOLVED FIXED
Alias: None
Product: Powerdevil
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2019-12-05 19:19 UTC by markuss
Modified: 2022-11-15 11:52 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (6.36 KB, text/plain)
2020-02-10 12:33 UTC, Felix Bachstein
Details

Note You need to log in before you can comment on or make changes to this bug.
Description markuss 2019-12-05 19:19:17 UTC
Application: org_kde_powerdevil (2.0.0)

Qt Version: 5.13.1
Frameworks Version: 5.64.0
Operating System: Linux 5.3.12-1-default x86_64
Distribution: "openSUSE Tumbleweed"

-- Information about the crash:
- What I was doing when the application crashed:

I was using an external screen with my notebook. Unplugging it caused the crash.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KDE Power Management System (org_kde_powerdevil), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fd0d4dd1800 (LWP 2299))]

Thread 6 (Thread 0x7fd0c3fff700 (LWP 2357)):
#0  0x00007fd0d72a1bdf in poll () from /lib64/libc.so.6
#1  0x00007fd0d5e1427e in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fd0d5e1439f in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fd0d784398b in QEventDispatcherGlib::processEvents (this=0x7fd0b8000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007fd0d77ec0cb in QEventLoop::exec (this=this@entry=0x7fd0c3ffeda0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#5  0x00007fd0d7624021 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#6  0x00007fd0d76251a2 in QThreadPrivate::start (arg=0x55b701e340c0) at thread/qthread_unix.cpp:360
#7  0x00007fd0d6903f2a in start_thread () from /lib64/libpthread.so.0
#8  0x00007fd0d72ac4af in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7fd0d0fe5700 (LWP 2356)):
#0  0x00007fd0d72a1bdf in poll () from /lib64/libc.so.6
#1  0x00007fd0d5e1427e in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fd0d5e1439f in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fd0d784398b in QEventDispatcherGlib::processEvents (this=0x7fd0bc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007fd0d77ec0cb in QEventLoop::exec (this=this@entry=0x7fd0d0fe4da0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#5  0x00007fd0d7624021 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#6  0x00007fd0d76251a2 in QThreadPrivate::start (arg=0x55b701e1e360) at thread/qthread_unix.cpp:360
#7  0x00007fd0d6903f2a in start_thread () from /lib64/libpthread.so.0
#8  0x00007fd0d72ac4af in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7fd0d1abd700 (LWP 2314)):
#0  0x00007fd0d72a1bdf in poll () from /lib64/libc.so.6
#1  0x00007fd0d5e1427e in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fd0d5e145e3 in g_main_loop_run () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fd0d24919c6 in ?? () from /usr/lib64/libgio-2.0.so.0
#4  0x00007fd0d5e3d11e in ?? () from /usr/lib64/libglib-2.0.so.0
#5  0x00007fd0d6903f2a in start_thread () from /lib64/libpthread.so.0
#6  0x00007fd0d72ac4af in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7fd0d22be700 (LWP 2313)):
#0  0x00007fd0d72a1bdf in poll () from /lib64/libc.so.6
#1  0x00007fd0d5e1427e in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fd0d5e1439f in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fd0d5e143f1 in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007fd0d5e3d11e in ?? () from /usr/lib64/libglib-2.0.so.0
#5  0x00007fd0d6903f2a in start_thread () from /lib64/libpthread.so.0
#6  0x00007fd0d72ac4af in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fd0d2e11700 (LWP 2310)):
#0  0x00007fd0d5e10f12 in ?? () from /usr/lib64/libglib-2.0.so.0
#1  0x00007fd0d5e12564 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fd0d5e13743 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fd0d5e141ab in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007fd0d5e1439f in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x00007fd0d784398b in QEventDispatcherGlib::processEvents (this=0x7fd0cc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#6  0x00007fd0d77ec0cb in QEventLoop::exec (this=this@entry=0x7fd0d2e10d70, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#7  0x00007fd0d7624021 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#8  0x00007fd0d7acc4f6 in ?? () from /usr/lib64/libQt5DBus.so.5
#9  0x00007fd0d76251a2 in QThreadPrivate::start (arg=0x7fd0d7b4ed80) at thread/qthread_unix.cpp:360
#10 0x00007fd0d6903f2a in start_thread () from /lib64/libpthread.so.0
#11 0x00007fd0d72ac4af in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fd0d4dd1800 (LWP 2299)):
[KCrash Handler]
#6  0x00007fd0d11e7094 in KWayland::Client::OutputDevice::enabled (this=0x55b701df9fb0) at /usr/src/debug/kwayland-5.64.0-1.1.x86_64/src/client/outputdevice.cpp:535
#7  0x00007fd0d0ff8186 in KScreen::WaylandOutput::updateKScreenOutput (this=this@entry=0x55b701e5a750, output=...) at /usr/include/qt5/QtCore/qsharedpointer_impl.h:312
#8  0x00007fd0d0ffa374 in KScreen::WaylandOutput::toKScreenOutput (this=0x55b701e5a750) at /usr/src/debug/libkscreen2-5.17.3-1.1.x86_64/backends/kwayland/waylandoutput.cpp:94
#9  0x00007fd0d0ff34ee in KScreen::WaylandConfig::currentConfig (this=0x7fd0cc007e90) at /usr/src/debug/libkscreen2-5.17.3-1.1.x86_64/backends/kwayland/waylandconfig.cpp:249
#10 0x00007fd0d0ff0103 in KScreen::WaylandBackend::<lambda()>::operator() (__closure=<optimized out>) at /usr/src/debug/libkscreen2-5.17.3-1.1.x86_64/backends/kwayland/waylandbackend.cpp:47
#11 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KScreen::WaylandBackend::WaylandBackend()::<lambda()> >::call (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#12 QtPrivate::Functor<KScreen::WaylandBackend::WaylandBackend()::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#13 QtPrivate::QFunctorSlotObject<KScreen::WaylandBackend::WaylandBackend()::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=<optimized out>, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:439
#14 0x00007fd0d7818638 in QtPrivate::QSlotObjectBase::call (a=0x7fffb29fbbd0, r=0x55b701e3f7f0, this=0x7fd0b8007780) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#15 QMetaObject::activate (sender=0x7fd0cc007e90, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3789
#16 0x00007fd0d0ff18e9 in KScreen::WaylandConfig::removeOutput (output=<optimized out>, this=0x7fd0cc007e90) at /usr/src/debug/libkscreen2-5.17.3-1.1.x86_64/backends/kwayland/waylandconfig.cpp:211
#17 KScreen::WaylandConfig::removeOutput (this=0x7fd0cc007e90, output=<optimized out>) at /usr/src/debug/libkscreen2-5.17.3-1.1.x86_64/backends/kwayland/waylandconfig.cpp:197
#18 0x00007fd0d7818638 in QtPrivate::QSlotObjectBase::call (a=0x7fffb29fbd00, r=0x7fd0cc007e90, this=0x55b701e080a0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#19 QMetaObject::activate (sender=0x55b701e5a750, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3789
#20 0x00007fd0d7818638 in QtPrivate::QSlotObjectBase::call (a=0x7fffb29fbdf0, r=0x55b701e5a750, this=0x55b701e336c0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#21 QMetaObject::activate (sender=0x55b701e15640, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3789
#22 0x00007fd0d7818638 in QtPrivate::QSlotObjectBase::call (a=0x7fffb29fbf40, r=0x55b701e15640, this=0x55b701e314c0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#23 QMetaObject::activate (sender=0x55b701e38ba0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3789
#24 0x00007fd0d11d3d11 in KWayland::Client::Registry::interfaceRemoved (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kwayland-5.64.0-1.1.x86_64/build/src/client/KF5WaylandClient_autogen/EWIEGA46WW/moc_registry.cpp:1597
#25 0x00007fd0d2e56edd in ?? () from /usr/lib64/libffi.so.7
#26 0x00007fd0d2e5631a in ?? () from /usr/lib64/libffi.so.7
#27 0x00007fd0d2ee8a1f in wl_closure_invoke (closure=closure@entry=0x7fd0b8009740, target=<optimized out>, target@entry=0x55b701e06770, opcode=opcode@entry=1, data=<optimized out>, flags=1) at src/connection.c:1014
#28 0x00007fd0d2ee9ee3 in dispatch_event (display=display@entry=0x7fd0b8002230, queue=<optimized out>) at src/wayland-client.c:1430
#29 0x00007fd0d2eea25c in dispatch_queue (queue=0x55b701e37630, display=0x7fd0b8002230) at src/wayland-client.c:1576
#30 wl_display_dispatch_queue_pending (display=0x7fd0b8002230, queue=0x55b701e37630) at src/wayland-client.c:1818
#31 0x00007fd0d11e139e in KWayland::Client::EventQueue::dispatch (this=0x55b701e37540) at /usr/src/debug/kwayland-5.64.0-1.1.x86_64/src/client/event_queue.cpp:96
#32 0x00007fd0d7818eea in QObject::event (this=0x55b701e37540, e=<optimized out>) at kernel/qobject.cpp:1260
#33 0x00007fd0d77ed562 in QCoreApplication::notifyInternal2 (receiver=0x55b701e37540, event=0x7fd0b8001b00) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:143
#34 0x00007fd0d77f01f8 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55b701d573e0) at kernel/qcoreapplication.cpp:1840
#35 0x00007fd0d7844333 in postEventSourceDispatch (s=0x55b701dc2570) at kernel/qeventdispatcher_glib.cpp:277
#36 0x00007fd0d5e13f88 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#37 0x00007fd0d5e14310 in ?? () from /usr/lib64/libglib-2.0.so.0
#38 0x00007fd0d5e1439f in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#39 0x00007fd0d7843971 in QEventDispatcherGlib::processEvents (this=0x55b701d749b0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#40 0x00007fd0d77ec0cb in QEventLoop::exec (this=this@entry=0x7fffb29fc660, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#41 0x00007fd0d77f3d32 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#42 0x000055b70029dc70 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/powerdevil5-5.17.3-1.1.x86_64/daemon/powerdevilapp.cpp:221
[Inferior 1 (process 2299) detached]

Reported using DrKonqi
Comment 1 Felix Bachstein 2020-02-10 12:33:53 UTC
Created attachment 125816 [details]
New crash information added by DrKonqi

org_kde_powerdevil (2.0.0) using Qt 5.14.1

- What I was doing when the application crashed:
I changed the frequency of my second screen in the system settings, while using wayland

- Unusual behavior I noticed:
Plasmashell  and the system settings crashed

-- Backtrace (Reduced):
#6  0x00007fbda13c2224 in KWayland::Client::OutputDevice::enabled() const () at /usr/lib/libKF5WaylandClient.so.5
#7  0x00007fbda1455d28 in  () at /usr/lib/qt/plugins/kf5/kscreen/KSC_KWayland.so
#8  0x00007fbda1457fc9 in  () at /usr/lib/qt/plugins/kf5/kscreen/KSC_KWayland.so
#9  0x00007fbda1450eff in  () at /usr/lib/qt/plugins/kf5/kscreen/KSC_KWayland.so
#10 0x00007fbda144d9c4 in  () at /usr/lib/qt/plugins/kf5/kscreen/KSC_KWayland.so
Comment 2 Nicolas Fella 2020-10-27 10:50:48 UTC
I remember various crashes related to screen unplugging, but seems to be fixed with current master and Qt 5.15.2
Comment 3 Justin Zobel 2022-10-30 00:40:30 UTC
Thank you for reporting this crash in KDE software. As it has been a while since this issue was reported, can we please ask you to see if you can reproduce the crash with a recent software version?

If you can reproduce the issue, please change the status to "REPORTED" when replying. Thank you!
Comment 4 Bug Janitor Service 2022-11-14 05:16:04 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 5 Felix Bachstein 2022-11-15 11:52:57 UTC
As this happened not on my daily driver I havent tested this in a long time. My setup changed slightly sincce then, but with the  bug report given back then I cannot reproduce this issue anymore. As Nicolas Fella in this thread mentioned this was then probably fixed a while ago.
I shall test this again with a setup similar to what I had, but for now I consider this resolved.