Bug 355764 - Systemsettings crashes on exit after monitor plugin
Summary: Systemsettings crashes on exit after monitor plugin
Status: RESOLVED UPSTREAM
Alias: None
Product: kde
Classification: I don't know
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Unassigned bugs mailing-list
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-11-23 00:39 UTC by Bernie Innocenti
Modified: 2016-01-16 16:58 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Screenshot demonstrating the bug (57.13 KB, image/png)
2015-11-23 00:42 UTC, Bernie Innocenti
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bernie Innocenti 2015-11-23 00:39:00 UTC
Application: kded5 ()

Qt Version: 5.5.1
Operating System: Linux 4.2.5-300.fc23.x86_64 x86_64
Distribution: "Fedora release 23 (Twenty Three)"

-- Information about the crash:
1. I plugged my laptop in the dock, which is connected to an external monitor.
2. KDE Failed to notice (a separate bug), so I opened systemsettings
3. As soon as I opened the display kcm, X switched modes to switch on the external monitor output and turn off the laptop display (as expected)
4. At this point, the screens layout display became empty (it should contain the 2 displays at this point)
5. I closed systemsettings, and... SIGSEGV!

The crash can be reproduced every time.

-- Backtrace:
Application: kded5 (kded5), 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 0x7ffff7f1f8c0 (LWP 463))]

Thread 5 (Thread 0x7fffe8146700 (LWP 464)):
#0  0x00007ffff4b7efdd in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffefa97272 in _xcb_conn_wait (__timeout=-1, __nfds=1, __fds=0x7fffe8145c00) at /usr/include/bits/poll2.h:46
#2  0x00007fffefa97272 in _xcb_conn_wait (c=c@entry=0x5555557848d0, cond=cond@entry=0x555555784910, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:459
#3  0x00007fffefa98ee7 in xcb_wait_for_event (c=0x5555557848d0) at xcb_in.c:693
#4  0x00007fffeab12da9 in QXcbEventReader::run() (this=0x55555578ef80) at qxcbconnection.cpp:1254
#5  0x00007ffff57873ce in QThreadPrivate::start(void*) (arg=0x55555578ef80) at thread/qthread_unix.cpp:331
#6  0x00007ffff487260a in start_thread (arg=0x7fffe8146700) at pthread_create.c:334
#7  0x00007ffff4b8aa7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7fffda779700 (LWP 465)):
#0  0x00007ffff4327200 in g_source_iter_next (iter=iter@entry=0x7fffda778b50, source=source@entry=0x7fffda778b48) at gmain.c:955
#1  0x00007ffff4329778 in g_main_context_prepare (context=context@entry=0x7fffd4000990, priority=priority@entry=0x7fffda778bd0) at gmain.c:3420
#2  0x00007ffff432a09b in g_main_context_iterate (context=context@entry=0x7fffd4000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3820
#3  0x00007ffff432a27c in g_main_context_iteration (context=0x7fffd4000990, may_block=may_block@entry=1) at gmain.c:3901
#4  0x00007ffff59bef0b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffd40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007ffff5965f0a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffda778d00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007ffff5782424 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007ffff57873ce in QThreadPrivate::start(void*) (arg=0x55555582a8c0) at thread/qthread_unix.cpp:331
#8  0x00007ffff487260a in start_thread (arg=0x7fffda779700) at pthread_create.c:334
#9  0x00007ffff4b8aa7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fffb2c5e700 (LWP 488)):
#0  0x00007ffff436e719 in g_mutex_lock (mutex=mutex@entry=0x7fffa4000990) at gthread-posix.c:1338
#1  0x00007ffff4329719 in g_main_context_prepare (context=context@entry=0x7fffa4000990, priority=priority@entry=0x7fffb2c5db90) at gmain.c:3444
#2  0x00007ffff432a09b in g_main_context_iterate (context=context@entry=0x7fffa4000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3820
#3  0x00007ffff432a27c in g_main_context_iteration (context=0x7fffa4000990, may_block=may_block@entry=1) at gmain.c:3901
#4  0x00007ffff59bef0b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffa40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007ffff5965f0a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffb2c5dcc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007ffff5782424 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007fffcc86c3c7 in KCupsConnection::run() () at /lib64/libkcupslib.so
#8  0x00007ffff57873ce in QThreadPrivate::start(void*) (arg=0x5555559182b0) at thread/qthread_unix.cpp:331
#9  0x00007ffff487260a in start_thread (arg=0x7fffb2c5e700) at pthread_create.c:334
#10 0x00007ffff4b8aa7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fffb245d700 (LWP 489)):
#0  0x00007ffff43271c8 in g_source_iter_next (iter=iter@entry=0x7fffb245cb50, source=source@entry=0x7fffb245cb48) at gmain.c:933
#1  0x00007ffff43296ab in g_main_context_prepare (context=context@entry=0x7fffac000990, priority=priority@entry=0x7fffb245cbd0) at gmain.c:3420
#2  0x00007ffff432a09b in g_main_context_iterate (context=context@entry=0x7fffac000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3820
#3  0x00007ffff432a27c in g_main_context_iteration (context=0x7fffac000990, may_block=may_block@entry=1) at gmain.c:3901
#4  0x00007ffff59bef0b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffac0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007ffff5965f0a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffb245cd00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007ffff5782424 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007ffff57873ce in QThreadPrivate::start(void*) (arg=0x555555988510) at thread/qthread_unix.cpp:331
#8  0x00007ffff487260a in start_thread (arg=0x7fffb245d700) at pthread_create.c:334
#9  0x00007ffff4b8aa7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ffff7f1f8c0 (LWP 463)):
[KCrash Handler]
#6  0x00007fffeab2b85f in QXcbWindow::handleClientMessageEvent(xcb_client_message_event_t const*) (this=0x55555588ace0, event=0x7fffe0003fa0) at qxcbwindow.cpp:1943
#7  0x00007fffeab14dcb in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) (this=this@entry=0x555555783130, event=event@entry=0x7fffe0003fa0) at qxcbconnection.cpp:1080
#8  0x00007fffeab15433 in QXcbConnection::processXcbEvents() (this=0x555555783130) at qxcbconnection.cpp:1527
#9  0x00007ffff59981b1 in QObject::event(QEvent*) (this=0x555555783130, e=<optimized out>) at kernel/qobject.cpp:1239
#10 0x00007ffff749341c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x555555773920, receiver=receiver@entry=0x555555783130, e=e@entry=0x7fffe0005350) at kernel/qapplication.cpp:3716
#11 0x00007ffff74988e6 in QApplication::notify(QObject*, QEvent*) (this=0x7fffffffdc90, receiver=0x555555783130, e=0x7fffe0005350) at kernel/qapplication.cpp:3499
#12 0x00007ffff596877b in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7fffffffdc90, receiver=0x555555783130, event=event@entry=0x7fffe0005350) at kernel/qcoreapplication.cpp:965
#13 0x00007ffff596ab76 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (event=0x7fffe0005350, receiver=<optimized out>) at kernel/qcoreapplication.h:224
#14 0x00007ffff596ab76 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x555555773a90) at kernel/qcoreapplication.cpp:1593
#15 0x00007ffff596b058 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1451
#16 0x00007ffff59beae3 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x5555557c6080) at kernel/qeventdispatcher_glib.cpp:271
#17 0x00007ffff4329e3a in g_main_context_dispatch (context=0x7fffe00016f0) at gmain.c:3154
#18 0x00007ffff4329e3a in g_main_context_dispatch (context=context@entry=0x7fffe00016f0) at gmain.c:3769
#19 0x00007ffff432a1d0 in g_main_context_iterate (context=context@entry=0x7fffe00016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840
#20 0x00007ffff432a27c in g_main_context_iteration (context=0x7fffe00016f0, may_block=may_block@entry=1) at gmain.c:3901
#21 0x00007ffff59beeef in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x5555557cf920, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#22 0x00007ffff5965f0a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffdba0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#23 0x00007ffff596dfec in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229
#24 0x00007ffff7bd3ee6 in kdemain () at /lib64/libkdeinit5_kded5.so
#25 0x00007ffff4aa8580 in __libc_start_main (main=0x555555554900 <main>, argc=1, argv=0x7fffffffde08, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffddf8) at libc-start.c:289
#26 0x0000555555554939 in _start ()

Possible duplicates by query: bug 355221, bug 353563.

Reported using DrKonqi
Comment 1 Bernie Innocenti 2015-11-23 00:42:34 UTC
Created attachment 95666 [details]
Screenshot demonstrating the bug
Comment 2 Christoph Feck 2015-12-03 13:35:35 UTC
Crashes in QXcbScreen from Qt library. Those are still being investigated, see e.g. https://bugreports.qt.io/browse/QTBUG-42985
Comment 3 Chris Hubick 2016-01-16 16:58:39 UTC
I'm often getting crashes in "QXcbWindow::handleClientMessageEvent at qxcbwindow.cpp:1943" as well.  https://bugzilla.redhat.com/show_bug.cgi?id=1294707

This bug is marked as "resolved upstream", yet the upstream bug was supposedly fixed in 5.5.0, yet both myself and the reporter here are on 5.5.1.