https://bugs.kde.org/show_bug.cgi?id=374553
Bug ID: 374553 Summary: Plasma crashes when docking/undocking the laptop and disabling the internal screen Product: plasmashell Version: 5.8.4 Platform: Fedora RPMs OS: Linux Status: UNCONFIRMED Keywords: drkonqi Severity: crash Priority: NOR Component: general Assignee: k...@davidedmundson.co.uk Reporter: von.kde....@martin-ueding.de CC: bhus...@gmail.com, plasma-b...@kde.org Target Milestone: 1.0 Application: plasmashell (5.8.4) Qt Version: 5.7.1 Frameworks Version: 5.27.0 Operating System: Linux 4.8.15-300.fc25.x86_64 x86_64 Distribution (Platform): Fedora RPMs -- Information about the crash: - What I was doing when the application crashed: I have a ThinkPad X220 with a docking station. At home, I have two DisplayPort screens attached, at work I have one DVI and one VGA screen attached. Since the Intel Sandy Bridge iGPU can only power two screens, I disable the internal laptop screen. Plasma crashes when I call my `thinkpad-dock off` script that uses `xrandr` to disable the external screens and enable the internal one. It can also crash when I put it back onto the docking station. - Unusual behavior I noticed: When docking off or docking back on, most of the time I do not have a Plasma panel at the bottom of the screen. I can fix it with an `killall plasmashell` and `plasmashell &`. I use Fedora 25 with all updates installed. The crash can be reproduced every time. -- Backtrace: Application: Plasma (plasmashell), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 84 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) [Current thread is 1 (Thread 0x7f1a2e5564c0 (LWP 6130))] Thread 8 (Thread 0x7f197918f700 (LWP 6159)): #0 0x00007f1a35323ac4 in g_main_context_check (context=context@entry=0x7f1974000990, max_priority=2147483647, fds=fds@entry=0x7f19740044c0, n_fds=n_fds@entry=1) at gmain.c:3742 #1 0x00007f1a353240f4 in g_main_context_iterate (context=context@entry=0x7f1974000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3926 #2 0x00007f1a3532426c in g_main_context_iteration (context=0x7f1974000990, may_block=may_block@entry=1) at gmain.c:3990 #3 0x00007f1a3d39173b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f19740008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #4 0x00007f1a3d34273a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f197918ec40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 #5 0x00007f1a3d19f5f3 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:507 #6 0x00007f197ae972c7 in KCupsConnection::run() () at /lib64/libkcupslib.so #7 0x00007f1a3d1a39da in QThreadPrivate::start(void*) (arg=0x5581c364cac0) at thread/qthread_unix.cpp:368 #8 0x00007f1a3b8df6ca in start_thread (arg=0x7f197918f700) at pthread_create.c:333 #9 0x00007f1a3c596f7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 7 (Thread 0x7f1987328700 (LWP 6154)): #0 0x00007f1a3c58b01d in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f1a35324156 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7f19800013c0, timeout=<optimized out>, context=0x7f1980000990) at gmain.c:4228 #2 0x00007f1a35324156 in g_main_context_iterate (context=context@entry=0x7f1980000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3924 #3 0x00007f1a3532426c in g_main_context_iteration (context=0x7f1980000990, may_block=may_block@entry=1) at gmain.c:3990 #4 0x00007f1a3d39173b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f19800008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #5 0x00007f1a3d34273a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f1987327c10, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 #6 0x00007f1a3d19f5f3 in QThread::exec() (this=this@entry=0x5581c0a5e3f0) at thread/qthread.cpp:507 #7 0x00007f1a40d958b6 in QQuickPixmapReader::run() (this=0x5581c0a5e3f0) at /usr/src/debug/qtdeclarative-opensource-src-5.7.1/src/quick/util/qquickpixmapcache.cpp:822 #8 0x00007f1a3d1a39da in QThreadPrivate::start(void*) (arg=0x5581c0a5e3f0) at thread/qthread_unix.cpp:368 #9 0x00007f1a3b8df6ca in start_thread (arg=0x7f1987328700) at pthread_create.c:333 #10 0x00007f1a3c596f7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 6 (Thread 0x7f1a118e1700 (LWP 6153)): #0 0x00007f1a3b8e5460 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f1a42c2e2f4 in QTWTF::TCMalloc_PageHeap::scavengerThread() (this=0x7f1a42d1a380 <QTWTF::pageheap_memory>) at /usr/src/debug/qtscript-opensource-src-5.7.1/src/3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359 #2 0x00007f1a42c2e339 in QTWTF::TCMalloc_PageHeap::runScavengerThread(void*) (context=<optimized out>) at /usr/src/debug/qtscript-opensource-src-5.7.1/src/3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464 #3 0x00007f1a3b8df6ca in start_thread (arg=0x7f1a118e1700) at pthread_create.c:333 #4 0x00007f1a3c596f7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 5 (Thread 0x7f1a135d5700 (LWP 6152)): #0 0x00007f1a3c586bed in read () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f1a35368450 in read (__nbytes=16, __buf=0x7f1a135d4a40, __fd=<optimized out>) at /usr/include/bits/unistd.h:44 #2 0x00007f1a35368450 in g_wakeup_acknowledge (wakeup=0x7f1a18002390) at gwakeup.c:210 #3 0x00007f1a35323c60 in g_main_context_check (context=context@entry=0x7f1a0c000990, max_priority=2147483647, fds=fds@entry=0x7f1a0c003070, n_fds=n_fds@entry=1) at gmain.c:3707 #4 0x00007f1a353240f4 in g_main_context_iterate (context=context@entry=0x7f1a0c000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3926 #5 0x00007f1a3532426c in g_main_context_iteration (context=0x7f1a0c000990, may_block=may_block@entry=1) at gmain.c:3990 #6 0x00007f1a3d39173b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f1a0c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #7 0x00007f1a3d34273a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f1a135d4c60, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 #8 0x00007f1a3d19f5f3 in QThread::exec() (this=this@entry=0x5581c0305f70) at thread/qthread.cpp:507 #9 0x00007f1a4040d4e5 in QQmlThreadPrivate::run() (this=0x5581c0305f70) at /usr/src/debug/qtdeclarative-opensource-src-5.7.1/src/qml/qml/ftw/qqmlthread.cpp:147 #10 0x00007f1a3d1a39da in QThreadPrivate::start(void*) (arg=0x5581c0305f70) at thread/qthread_unix.cpp:368 #11 0x00007f1a3b8df6ca in start_thread (arg=0x7f1a135d5700) at pthread_create.c:333 #12 0x00007f1a3c596f7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 4 (Thread 0x7f1a21094700 (LWP 6151)): #0 0x00007f1a3c58b01d in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f1a35324156 in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7f1a18002e70, timeout=<optimized out>, context=0x7f1a18000990) at gmain.c:4228 #2 0x00007f1a35324156 in g_main_context_iterate (context=context@entry=0x7f1a18000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3924 #3 0x00007f1a3532426c in g_main_context_iteration (context=0x7f1a18000990, may_block=may_block@entry=1) at gmain.c:3990 #4 0x00007f1a3d39173b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f1a180008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #5 0x00007f1a3d34273a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f1a21093c60, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 #6 0x00007f1a3d19f5f3 in QThread::exec() (this=this@entry=0x5581c02b07d0) at thread/qthread.cpp:507 #7 0x00007f1a4040d4e5 in QQmlThreadPrivate::run() (this=0x5581c02b07d0) at /usr/src/debug/qtdeclarative-opensource-src-5.7.1/src/qml/qml/ftw/qqmlthread.cpp:147 #8 0x00007f1a3d1a39da in QThreadPrivate::start(void*) (arg=0x5581c02b07d0) at thread/qthread_unix.cpp:368 #9 0x00007f1a3b8df6ca in start_thread (arg=0x7f1a21094700) at pthread_create.c:333 #10 0x00007f1a3c596f7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 3 (Thread 0x7f1a22ad9700 (LWP 6150)): #0 0x00007f1a35369814 in g_mutex_unlock (mutex=0x7f1a14000990) at gthread-posix.c:1348 #1 0x00007f1a3532368c in g_main_context_prepare (context=context@entry=0x7f1a14000990, priority=priority@entry=0x7f1a22ad8b00) at gmain.c:3499 #2 0x00007f1a3532407b in g_main_context_iterate (context=context@entry=0x7f1a14000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3909 #3 0x00007f1a3532426c in g_main_context_iteration (context=0x7f1a14000990, may_block=may_block@entry=1) at gmain.c:3990 #4 0x00007f1a3d39173b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f1a140008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #5 0x00007f1a3d34273a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f1a22ad8c40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 #6 0x00007f1a3d19f5f3 in QThread::exec() (this=this@entry=0x7f1a3dab5060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:507 #7 0x00007f1a3da3f739 in QDBusConnectionManager::run() (this=0x7f1a3dab5060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:178 #8 0x00007f1a3d1a39da in QThreadPrivate::start(void*) (arg=0x7f1a3dab5060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:368 #9 0x00007f1a3b8df6ca in start_thread (arg=0x7f1a22ad9700) at pthread_create.c:333 #10 0x00007f1a3c596f7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 2 (Thread 0x7f1a2412d700 (LWP 6149)): #0 0x00007f1a3c58b01d in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f1a41551d10 in poll (__timeout=-1, __nfds=1, __fds=0x7f1a2412cb80) at /usr/include/bits/poll2.h:46 #2 0x00007f1a41551d10 in _xcb_conn_wait (c=c@entry=0x5581c01e52a0, cond=cond@entry=0x5581c01e52e0, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:479 #3 0x00007f1a41553aa9 in xcb_wait_for_event (c=0x5581c01e52a0) at xcb_in.c:693 #4 0x00007f1a27981d69 in QXcbEventReader::run() (this=0x5581c01ef700) at qxcbconnection.cpp:1343 #5 0x00007f1a3d1a39da in QThreadPrivate::start(void*) (arg=0x5581c01ef700) at thread/qthread_unix.cpp:368 #6 0x00007f1a3b8df6ca in start_thread (arg=0x7f1a2412d700) at pthread_create.c:333 #7 0x00007f1a3c596f7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 1 (Thread 0x7f1a2e5564c0 (LWP 6130)): [KCrash Handler] #6 0x00007f1a3d34c49b in QMetaObject::cast(QObject const*) const (this=this@entry=0x7f1a415412e0 <Plasma::Corona::staticMetaObject>, obj=0x4864286f8b481857) at kernel/qmetaobject.cpp:366 #7 0x00007f1a3d34c4e5 in QMetaObject::cast(QObject*) const (this=this@entry=0x7f1a415412e0 <Plasma::Corona::staticMetaObject>, obj=<optimized out>) at kernel/qmetaobject.cpp:355 #8 0x00007f1a412c4d48 in qobject_cast<Plasma::Corona*>(QObject*) (object=<optimized out>) at /usr/include/qt5/QtCore/qobject.h:516 #9 0x00007f1a412c4d48 in Plasma::Containment::corona() const (this=this@entry=0x5581c0407490) at /usr/src/debug/plasma-framework-5.27.0/src/plasma/containment.cpp:315 #10 0x00007f1a412c4dc9 in Plasma::Containment::screen() const (this=0x5581c0407490) at /usr/src/debug/plasma-framework-5.27.0/src/plasma/containment.cpp:479 #11 0x00005581bec1f06c in ShellCorona::createContainmentForActivity(QString const&, int) (this=this@entry=0x5581c027c330, activity=..., screenNum=screenNum@entry=1) at /usr/src/debug/plasma-workspace-5.8.4/shell/shellcorona.cpp:1191 #12 0x00005581bec1f357 in ShellCorona::addOutput(QScreen*) (this=0x5581c027c330, screen=<optimized out>) at /usr/src/debug/plasma-workspace-5.8.4/shell/shellcorona.cpp:1154 #13 0x00007f1a3d36aae6 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffe799158c0, r=0x5581c027c330, this=<optimized out>) at ../../src/corelib/kernel/qobject_impl.h:101 #14 0x00007f1a3d36aae6 in QMetaObject::activate(QObject*, int, int, void**) (sender=0x7ffe799161e0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe799158c0) at kernel/qobject.cpp:3723 #15 0x00007f1a3d36b057 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7f1a3da14540 <QGuiApplication::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe799158c0) at kernel/qobject.cpp:3602 #16 0x00007f1a3d670672 in QGuiApplication::screenAdded(QScreen*) (this=<optimized out>, _t1=<optimized out>) at .moc/moc_qguiapplication.cpp:359 #17 0x00007f1a3d663fbd in QPlatformIntegration::screenAdded(QPlatformScreen*, bool) (this=<optimized out>, ps=<optimized out>, isPrimary=<optimized out>) at kernel/qplatformintegration.cpp:463 #18 0x00007f1a2798199d in QXcbConnection::createScreen(QXcbVirtualDesktop*, xcb_randr_output_change_t const&, xcb_randr_get_output_info_reply_t*) (this=this@entry=0x5581c01c4170, virtualDesktop=virtualDesktop@entry=0x5581c01f0060, outputChange=..., outputInfo=outputInfo@entry=0x7f1a1c005a10) at qxcbconnection.cpp:356 #19 0x00007f1a27983447 in QXcbConnection::updateScreens(xcb_randr_notify_event_t const*) (this=this@entry=0x5581c01c4170, event=event@entry=0x7f1a1c005c90) at qxcbconnection.cpp:267 #20 0x00007f1a27983da3 in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) (this=this@entry=0x5581c01c4170, event=event@entry=0x7f1a1c005c90) at qxcbconnection.cpp:1250 #21 0x00007f1a27984225 in QXcbConnection::processXcbEvents() (this=0x5581c01c4170) at qxcbconnection.cpp:1741 #22 0x00007f1a3d36b879 in QObject::event(QEvent*) (this=0x5581c01c4170, e=<optimized out>) at kernel/qobject.cpp:1263 #23 0x00007f1a3dc0fecc in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x5581c01c4170, e=0x7f1a1c003660) at kernel/qapplication.cpp:3799 #24 0x00007f1a3dc17671 in QApplication::notify(QObject*, QEvent*) (this=0x7ffe799161e0, receiver=0x5581c01c4170, e=0x7f1a1c003660) at kernel/qapplication.cpp:3556 #25 0x00007f1a3d3437aa in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x5581c01c4170, event=event@entry=0x7f1a1c003660) at kernel/qcoreapplication.cpp:988 #26 0x00007f1a3d345e90 in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x7f1a1c003660, receiver=<optimized out>) at kernel/qcoreapplication.h:231 #27 0x00007f1a3d345e90 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x5581c01c4ca0) at kernel/qcoreapplication.cpp:1649 #28 0x00007f1a3d346368 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1503 #29 0x00007f1a3d3916a3 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x5581c0221450) at kernel/qeventdispatcher_glib.cpp:276 #30 0x00007f1a35323e42 in g_main_dispatch (context=0x7f1a1c0016f0) at gmain.c:3203 #31 0x00007f1a35323e42 in g_main_context_dispatch (context=context@entry=0x7f1a1c0016f0) at gmain.c:3856 #32 0x00007f1a353241c0 in g_main_context_iterate (context=context@entry=0x7f1a1c0016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3929 #33 0x00007f1a3532426c in g_main_context_iteration (context=0x7f1a1c0016f0, may_block=may_block@entry=1) at gmain.c:3990 #34 0x00007f1a3d39171f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x5581c02313d0, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #35 0x00007f1a3d34273a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe79916070, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 #36 0x00007f1a3d34a23c in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1261 #37 0x00005581bebfd442 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.8.4/shell/main.cpp:166 Possible duplicates by query: bug 373569. Reported using DrKonqi -- You are receiving this mail because: You are watching all bug changes.