Bug 369050 - Konsole crashs randomly.
Summary: Konsole crashs randomly.
Status: RESOLVED FIXED
Alias: None
Product: konsole
Classification: Applications
Component: general (show other bugs)
Version: 15.12.3
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords: drkonqi
: 362893 363926 364587 364685 365347 365374 370309 370330 375485 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-09-19 13:53 UTC by Christophe Larsonneur
Modified: 2020-10-23 08:53 UTC (History)
13 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
gdb session with some pretty-printers showing the event details. (28.69 KB, text/plain)
2017-01-20 14:59 UTC, Bernhard Übelacker
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Christophe Larsonneur 2016-09-19 13:53:19 UTC
Application: konsole (15.12.3)

Qt Version: 5.6.1
Frameworks Version: 5.25.0
Operating System: Linux 4.7.3-100.fc23.x86_64 x86_64
Distribution: "Fedora release 23 (Twenty Three)"

-- Information about the crash:
Currently I have no assumption about why konsole die. Most of the time it dies randomly, even if the tool is in foreground or in background. So, appenrently I do nothing that could break konsole.

The frequency is between 1 to 3 times per week.

The crash can be reproduced sometimes.

-- Backtrace:
Application: Konsole (konsole), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
84	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f1f794fa940 (LWP 20529))]

Thread 3 (Thread 0x7f1f794f6700 (LWP 20530)):
#0  0x00007f1f87ecd76d in read () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1f7f75b073 in ?? () from /usr/lib64/nvidia/tls/libnvidia-tls.so.367.44
#2  0x00007f1f837ec3f0 in read (__nbytes=16, __buf=0x7f1f794f5a40, __fd=<optimized out>) at /usr/include/bits/unistd.h:44
#3  g_wakeup_acknowledge (wakeup=0x7f1f74001200) at gwakeup.c:210
#4  0x00007f1f837a8c84 in g_main_context_check (context=context@entry=0x7f1f74001600, max_priority=2147483647, fds=fds@entry=0x7f1f740033b0, n_fds=n_fds@entry=1) at gmain.c:3632
#5  0x00007f1f837a9130 in g_main_context_iterate (context=context@entry=0x7f1f74001600, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3837
#6  0x00007f1f837a929c in g_main_context_iteration (context=0x7f1f74001600, may_block=may_block@entry=1) at gmain.c:3901
#7  0x00007f1f88cc6b5b in QEventDispatcherGlib::processEvents (this=0x7f1f740008e0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#8  0x00007f1f88c7725a in QEventLoop::exec (this=this@entry=0x7f1f794f5c50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#9  0x00007f1f88ad7bd4 in QThread::exec (this=this@entry=0x7f1f8eda3040 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:500
#10 0x00007f1f8ed2f675 in QDBusConnectionManager::run (this=0x7f1f8eda3040 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:189
#11 0x00007f1f88adc00c in QThreadPrivate::start (arg=0x7f1f8eda3040 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:341
#12 0x00007f1f8624c61a in start_thread (arg=0x7f1f794f6700) at pthread_create.c:334
#13 0x00007f1f87edd5fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f1f6a3e0700 (LWP 20531)):
#0  0x00007f1f87ed1b7d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1f84587272 in poll (__timeout=-1, __nfds=1, __fds=0x7f1f6a3dfb80) at /usr/include/bits/poll2.h:46
#2  _xcb_conn_wait (c=c@entry=0x55687ccf4bc0, cond=cond@entry=0x55687ccf4c00, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:459
#3  0x00007f1f84588ee7 in xcb_wait_for_event (c=0x55687ccf4bc0) at xcb_in.c:693
#4  0x00007f1f78c08039 in QXcbEventReader::run (this=0x55687cd039a0) at qxcbconnection.cpp:1325
#5  0x00007f1f88adc00c in QThreadPrivate::start (arg=0x55687cd039a0) at thread/qthread_unix.cpp:341
#6  0x00007f1f8624c61a in start_thread (arg=0x7f1f6a3e0700) at pthread_create.c:334
#7  0x00007f1f87edd5fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f1f794fa940 (LWP 20529)):
[KCrash Handler]
#6  0x00007f1f87e0fa28 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
#7  0x00007f1f87e1162a in __GI_abort () at abort.c:89
#8  0x00007f1f88ac83a1 in qt_message_fatal (context=..., message=<synthetic pointer>) at global/qlogging.cpp:1648
#9  QMessageLogger::fatal (this=this@entry=0x7ffd82b96dd0, msg=msg@entry=0x7f1f8ed8bba8 "Internal error: got invalid meta type %d (%s) when trying to convert to meta type %d (%s)") at global/qlogging.cpp:790
#10 0x00007f1f8ed3b1b1 in QDBusConnectionPrivate::deliverCall (this=<optimized out>, object=<optimized out>, msg=..., metaTypes=..., slotIdx=<optimized out>) at qdbusintegrator.cpp:940
#11 0x00007f1f88ca0871 in QObject::event (this=0x55687d04d790, e=<optimized out>) at kernel/qobject.cpp:1256
#12 0x00007f1f8950810c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55687d04d790, e=0x7f1f740151d0) at kernel/qapplication.cpp:3804
#13 0x00007f1f8950d646 in QApplication::notify (this=0x7ffd82b974f0, receiver=0x55687d04d790, e=0x7f1f740151d0) at kernel/qapplication.cpp:3561
#14 0x00007f1f88c783ea in QCoreApplication::notifyInternal2 (receiver=0x55687d04d790, event=event@entry=0x7f1f740151d0) at kernel/qcoreapplication.cpp:1015
#15 0x00007f1f88c7a40a in QCoreApplication::sendEvent (event=0x7f1f740151d0, receiver=<optimized out>) at kernel/qcoreapplication.h:225
#16 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x55687ccb0f30) at kernel/qcoreapplication.cpp:1650
#17 0x00007f1f88c7a8c8 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1508
#18 0x00007f1f88cc6ac3 in postEventSourceDispatch (s=0x55687cd337a0) at kernel/qeventdispatcher_glib.cpp:270
#19 0x00007f1f837a8e5a in g_main_dispatch (context=0x7f1f74001710) at gmain.c:3154
#20 g_main_context_dispatch (context=context@entry=0x7f1f74001710) at gmain.c:3769
#21 0x00007f1f837a91f0 in g_main_context_iterate (context=context@entry=0x7f1f74001710, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840
#22 0x00007f1f837a929c in g_main_context_iteration (context=0x7f1f74001710, may_block=may_block@entry=1) at gmain.c:3901
#23 0x00007f1f88cc6b3f in QEventDispatcherGlib::processEvents (this=0x55687cd33780, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#24 0x00007f1f88c7725a in QEventLoop::exec (this=this@entry=0x7ffd82b973b0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#25 0x00007f1f88c7ebdc in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1285
#26 0x00007f1f88fa923c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1607
#27 0x00007f1f895050c5 in QApplication::exec () at kernel/qapplication.cpp:2979
#28 0x00007f1f8ea4b63e in kdemain (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/konsole-15.12.3/src/main.cpp:125
#29 0x00007f1f87dfb580 in __libc_start_main (main=0x55687bc1cb70 <main(int, char**)>, argc=1, argv=0x7ffd82b97638, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffd82b97628) at libc-start.c:289
#30 0x000055687bc1cba9 in _start ()

Possible duplicates by query: bug 364721, bug 364342, bug 355096, bug 353914, bug 353057.

Reported using DrKonqi
Comment 1 Christophe Larsonneur 2016-10-05 13:14:55 UTC
Hi,

It looks like konsole is crashing really more frequently. About 3/5 per days.

Konsole version 15.12.3
Using:
KDE Frameworks 5.26.0
Qt 5.6.1 (built against 5.6.1)
The xcb windowing system

Following is the crash information:

Application: Konsole (kdeinit5), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
84	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f789eb148c0 (LWP 8923))]

Thread 3 (Thread 0x7f78827e0700 (LWP 8924)):
#0  0x00007f789c08bb7d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f789a72218c in g_main_context_poll (priority=2147483647, n_fds=1, fds=0x7f787c0033b0, timeout=<optimized out>, context=0x7f787c001600) at gmain.c:4135
#2  g_main_context_iterate (context=context@entry=0x7f787c001600, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3835
#3  0x00007f789a72229c in g_main_context_iteration (context=0x7f787c001600, may_block=may_block@entry=1) at gmain.c:3901
#4  0x00007f789ce80b5b in QEventDispatcherGlib::processEvents (this=0x7f787c0008e0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#5  0x00007f789ce3125a in QEventLoop::exec (this=this@entry=0x7f78827dfcd0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f789cc91bd4 in QThread::exec (this=this@entry=0x7f789ec43040 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:500
#7  0x00007f789ebcf675 in QDBusConnectionManager::run (this=0x7f789ec43040 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:189
#8  0x00007f789cc9600c in QThreadPrivate::start (arg=0x7f789ec43040 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:341
#9  0x00007f789b8d761a in start_thread (arg=0x7f78827e0700) at pthread_create.c:334
#10 0x00007f789c0975fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f787a157700 (LWP 8925)):
#0  0x00007f789c08bb7d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f789de42272 in poll (__timeout=-1, __nfds=1, __fds=0x7f787a156c00) at /usr/include/bits/poll2.h:46
#2  _xcb_conn_wait (c=c@entry=0x560103544520, cond=cond@entry=0x560103544560, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:459
#3  0x00007f789de43ee7 in xcb_wait_for_event (c=0x560103544520) at xcb_in.c:693
#4  0x00007f7881ef2039 in QXcbEventReader::run (this=0x560103551f40) at qxcbconnection.cpp:1325
#5  0x00007f789cc9600c in QThreadPrivate::start (arg=0x560103551f40) at thread/qthread_unix.cpp:341
#6  0x00007f789b8d761a in start_thread (arg=0x7f787a157700) at pthread_create.c:334
#7  0x00007f789c0975fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f789eb148c0 (LWP 8923)):
[KCrash Handler]
#6  0x00007f789bfc9a28 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
#7  0x00007f789bfcb62a in __GI_abort () at abort.c:89
#8  0x00007f789cc823a1 in qt_message_fatal (context=..., message=<synthetic pointer>) at global/qlogging.cpp:1648
#9  QMessageLogger::fatal (this=this@entry=0x7fff92692f90, msg=msg@entry=0x7f789ec2bba8 "Internal error: got invalid meta type %d (%s) when trying to convert to meta type %d (%s)") at global/qlogging.cpp:790
#10 0x00007f789ebdb1b1 in QDBusConnectionPrivate::deliverCall (this=<optimized out>, object=<optimized out>, msg=..., metaTypes=..., slotIdx=<optimized out>) at qdbusintegrator.cpp:940
#11 0x00007f789ce5a871 in QObject::event (this=0x560103b26c30, e=<optimized out>) at kernel/qobject.cpp:1256
#12 0x00007f789d6c210c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x560103b26c30, e=0x7f787c0151d0) at kernel/qapplication.cpp:3804
#13 0x00007f789d6c7646 in QApplication::notify (this=0x7fff926936b0, receiver=0x560103b26c30, e=0x7f787c0151d0) at kernel/qapplication.cpp:3561
#14 0x00007f789ce323ea in QCoreApplication::notifyInternal2 (receiver=0x560103b26c30, event=event@entry=0x7f787c0151d0) at kernel/qcoreapplication.cpp:1015
#15 0x00007f789ce3440a in QCoreApplication::sendEvent (event=0x7f787c0151d0, receiver=<optimized out>) at kernel/qcoreapplication.h:225
#16 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x5601034a8e30) at kernel/qcoreapplication.cpp:1650
#17 0x00007f789ce348c8 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1508
#18 0x00007f789ce80ac3 in postEventSourceDispatch (s=0x560103650f00) at kernel/qeventdispatcher_glib.cpp:270
#19 0x00007f789a721e5a in g_main_dispatch (context=0x7f787c001710) at gmain.c:3154
#20 g_main_context_dispatch (context=context@entry=0x7f787c001710) at gmain.c:3769
#21 0x00007f789a7221f0 in g_main_context_iterate (context=context@entry=0x7f787c001710, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840
#22 0x00007f789a72229c in g_main_context_iteration (context=0x7f787c001710, may_block=may_block@entry=1) at gmain.c:3901
#23 0x00007f789ce80b3f in QEventDispatcherGlib::processEvents (this=0x560103657b30, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#24 0x00007f789ce3125a in QEventLoop::exec (this=this@entry=0x7fff92693570, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#25 0x00007f789ce38bdc in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1285
#26 0x00007f789d16323c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1607
#27 0x00007f789d6bf0c5 in QApplication::exec () at kernel/qapplication.cpp:2979
#28 0x00007f788c71863e in kdemain (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/konsole-15.12.3/src/main.cpp:125
#29 0x00005601020e44cf in launch(int, char const*, char const*, char const*, int, char const*, bool, char const*, bool, char const*) ()
#30 0x00005601020e57a7 in handle_launcher_request(int, char const*) [clone .isra.26] ()
#31 0x00005601020e5f58 in handle_requests(int) ()
#32 0x00005601020e0f92 in main ()
Comment 2 Maarten ter Huurne 2016-10-22 05:37:21 UTC
I had a crash of Konsole today with a very similar backtrace. However, I had seen that backtrace before, when kmix crashed, which I reported as bug 370650. So I think it's a problem in a library rather than in Konsole itself, but I don't know which library to file it on.

Application: konsole (15.12.3)

Qt Version: 5.7.0
Frameworks Version: 5.27.0
Operating System: Linux 4.1.31-30-default x86_64
Distribution: "openSUSE Leap 42.1 (x86_64)"

Thread 1 (Thread 0x7ff55aef1800 (LWP 2888)):
[KCrash Handler]
#6  0x00007ff55a7870c7 in raise () from /lib64/libc.so.6
#7  0x00007ff55a788478 in abort () from /lib64/libc.so.6
#8  0x00007ff556c57c7e in qt_message_fatal (context=..., message=<synthetic pointer>) at global/qlogging.cpp:1680
#9  QMessageLogger::fatal (this=this@entry=0x7ffe718dfcb0, msg=msg@entry=0x7ff5550907b0 "Internal error: got invalid meta type %d (%s) when trying to convert to meta type %d (%s)") at global/qlogging.cpp:793
#10 0x00007ff5550497f4 in QDBusConnectionPrivate::deliverCall (this=0x7ff5400039c0, object=0x2562680, msg=..., metaTypes=..., slotIdx=11) at qdbusintegrator.cpp:948
#11 0x00007ff556e4cdc6 in QObject::event (this=0x2562680, e=<optimized out>) at kernel/qobject.cpp:1263
#12 0x00007ff557adaa9c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x2562680, e=0x7ff54000c230) at kernel/qapplication.cpp:3799
#13 0x00007ff557ae1a20 in QApplication::notify (this=0x7ffe718e0470, receiver=0x2562680, e=0x7ff54000c230) at kernel/qapplication.cpp:3556
#14 0x00007ff556e235c5 in QCoreApplication::notifyInternal2 (receiver=0x2562680, event=event@entry=0x7ff54000c230) at kernel/qcoreapplication.cpp:988
#15 0x00007ff556e25623 in QCoreApplication::sendEvent (event=0x7ff54000c230, receiver=<optimized out>) at kernel/qcoreapplication.h:231
#16 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x2217eb0) at kernel/qcoreapplication.cpp:1649
#17 0x00007ff556e25b68 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1503
#18 0x00007ff556e726e3 in postEventSourceDispatch (s=0x229c3c0) at kernel/qeventdispatcher_glib.cpp:276
#19 0x00007ff54fcb5c84 in g_main_dispatch (context=0x7ff540002450) at gmain.c:3122
#20 g_main_context_dispatch (context=context@entry=0x7ff540002450) at gmain.c:3737
#21 0x00007ff54fcb5ed8 in g_main_context_iterate (context=context@entry=0x7ff540002450, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3808
#22 0x00007ff54fcb5f7c in g_main_context_iteration (context=0x7ff540002450, may_block=1) at gmain.c:3869
#23 0x00007ff556e71f2c in QEventDispatcherGlib::processEvents (this=0x222df80, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#24 0x00007ff556e2189b in QEventLoop::exec (this=this@entry=0x7ffe718e0330, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210
#25 0x00007ff556e29696 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1261
#26 0x00007ff55ab22e87 in kdemain () from /usr/lib64/libkdeinit5_konsole.so
#27 0x00007ff55a773b25 in __libc_start_main () from /lib64/libc.so.6
#28 0x00000000004007ee in _start ()
Comment 3 Christophe Larsonneur 2016-10-22 15:39:13 UTC
ok. I haven't seen it on kmix crash. But I believe you are right. It is certainly something around konsole, ie a library somewhere.

This said, even if a library may fail, I do not expect konsole to crash.
Comment 4 Christophe Larsonneur 2016-10-22 15:43:25 UTC
I believe this issue is co-related to DBus:

Look here:
QMessageLogger::fatal (this=this@entry=0x7ffd82b96dd0, msg=msg@entry=0x7f1f8ed8bba8 "Internal error: got invalid meta type %d (%s) when trying to convert to meta type %d (%s)") at global/qlogging.cpp:790 #10 0x00007f1f8ed3b1b1 in QDBusConnectionPrivate::deliverCall (this=<optimized out>, object=<optimized out>, msg=..., metaTypes=..., slotIdx=<optimized out>) at qdbusintegrator.cpp:940

So, konsole did deal correctly with this internal error and DBus crashed konsole...
Comment 5 Christophe Larsonneur 2016-10-22 15:44:21 UTC
... konsole did NOT deal ...
Comment 6 Christoph Feck 2016-10-23 02:13:23 UTC
Is there a reliable way to reproduce this? The bug is in the Qt library, but Qt developers need a test case to be able to reproduce and fix it.
Comment 7 Christoph Feck 2016-10-23 02:20:58 UTC
*** Bug 362893 has been marked as a duplicate of this bug. ***
Comment 8 Christoph Feck 2016-10-23 02:21:22 UTC
*** Bug 363926 has been marked as a duplicate of this bug. ***
Comment 9 Christoph Feck 2016-10-23 02:22:00 UTC
*** Bug 364587 has been marked as a duplicate of this bug. ***
Comment 10 Christoph Feck 2016-10-23 02:22:37 UTC
*** Bug 364685 has been marked as a duplicate of this bug. ***
Comment 11 Christoph Feck 2016-10-23 02:23:00 UTC
*** Bug 365347 has been marked as a duplicate of this bug. ***
Comment 12 Christoph Feck 2016-10-23 02:23:21 UTC
*** Bug 365374 has been marked as a duplicate of this bug. ***
Comment 13 Christoph Feck 2016-10-23 02:23:45 UTC
*** Bug 370309 has been marked as a duplicate of this bug. ***
Comment 14 Christoph Feck 2016-10-23 02:24:05 UTC
*** Bug 370330 has been marked as a duplicate of this bug. ***
Comment 15 Christophe Larsonneur 2016-10-23 13:54:13 UTC
Hi,

No, unfortunately, I did not find a way to reproduce it. It looks random.
I tried to understand what was wrong but I found nothing that could explain. At least for now. 

If I found something new to help reproducing it, I will let you know.

For now, I'm not fully sure, but It looks to be a little more stable. At least, I can say that I haven't seen new crash as frequent as I saw before.
Comment 16 Maarten ter Huurne 2016-10-28 10:35:40 UTC
I haven't found a reliable way yet to reproduce the crash, but I did observe some things that might be useful.

One time Konsole crashed very shortly after a new e-mail came in and the new mail notification was displayed.

If I keep opening lots of Konsole instances via a button in the panel, at some point they all crash at the same time. This seems to happen more often if I don't allow Konsole to be grouped in the task bar, but I'm not sure if this is a rule or a coincidence.

I have been monitoring the DBUS session and system bus to see if there is any particular type of message that triggers this crash. There was no activity on the system bus when Konsole crashed, but lots of activity on the session bus, so I wasn't able to pin-point any particular message.
Comment 17 Martin Sandsmark 2016-11-06 00:44:35 UTC
Can someone see if they can find the actual error message that should be displayed when Qt aborts Konsole when this happens? Either in the journal (with «journalctl») or in .xsession-errors?

The message should be something with «Internal error: got invalid meta type [...]», the interesting thing is the rest of the message indicating the invalid values.

IMHO, Qt shouldn't abort on this kind of error at all. Unfortunately there's nothing Konsole or other applications can do about it.
Comment 18 Bernhard Übelacker 2017-01-20 02:15:13 UTC
I think I got the same issue here.
It happened when I switched a some video playing in VLC (started via dolphin).
When switching back I noticed my konsoles did disappear.

(In reply to Martin Sandsmark from comment #17)
> Can someone see if they can find the actual error message ... or in .xsession-errors?

Internal error: got invalid meta type 11 (QStringList) when trying to convert to meta type 10 (QString)
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = kdeinit5 path = /usr/bin pid = 12699
KCrash: Arguments: /usr/bin/kdeinit5 --workdir /home/bernhard/data

I still have the process existing and trying to inspect
with gdb with debian debug symbols installed.
Unfortunately nearly all that I want to see is <optimized out> ...

...
(gdb) up
#12 0x00007fb12f591b2c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0xed8120, e=0x7fb110016490) at kernel/qapplication.cpp:3799
3799        bool consumed = receiver->event(e);
(gdb) print *e
$57 = (QDBusCallDeliveryEvent) {<QMetaCallEvent> = {<QEvent> = {_vptr.QEvent = 0x7fb127d49eb0 <vtable for QDBusCallDeliveryEvent+16>, d = 0x0, t = 43, posted = 0, spont = 0, m_accept = 1, reserved = 0}, slotObj_ = 0x0, sender_ = 0x7fb110012500, signalId_ = -1, nargs_ = 0, types_ = 0x0, args_ = 0x0, semaphore_ = 0x0, callFunction_ = 0x0, method_offset_ = 0, method_relative_ = 6}, connection = {d = 0x7fb110012500}, message = {d_ptr = 0x7fb1100139d0}, metaTypes = {d = 0xad1490}, flags = 0}
(gdb) print *(e->message.d_ptr)
$60 = {arguments = {<QListSpecialMethods<QVariant>> = {<No data fields>}, {p = {d = 0x7fb110017290}, d = 0x7fb110017290}}, service = {d = 0x7fb110017260}, path = {d = 0x7fb110017200}, interface = {d = 0x7fb1100171b0}, name = {d = 0x7fb1100170f0}, message = {d = 0x7fb130da6e80 <QArrayData::shared_null>}, signature = {d = 0x7fb1100173a0}, msg = 0x7fb110012d60, reply = 0x0, localReply = 0x0, ref = {<QAtomicInteger<int>> = {<QBasicAtomicInteger<int>> = {_q_value = {<std::__atomic_base<int>> = {_M_i = 1}, <No data fields>}}, <No data fields>}, <No data fields>}, type = QDBusMessage::SignalMessage, delayedReply = 0, localMessage = 0, parametersValidated = 0, autoStartService = 1}
(gdb) print *(e->metaTypes.d)
$63 = {<QArrayData> = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {_M_i = 2}, <No data fields>}}}, size = 3, alloc = 10, capacityReserved = 0, offset = 24}, <No data fields>}

(gdb) printq5string e->message.d_ptr.name
EventListenerDeregistered
(gdb) printq5string e->message.d_ptr.service
:1.7
(gdb) printq5string e->message.d_ptr.path
/org/a11y/atspi/registry
(gdb) printq5string e->message.d_ptr.interface
org.a11y.atspi.Registry
(gdb) printq5string e->message.d_ptr.signature
ss

Is there anything else someone is interested in while the process still exists?
Comment 19 Bernhard Übelacker 2017-01-20 14:59:46 UTC
Created attachment 103561 [details]
gdb session with some pretty-printers showing the event details.

Hello,
It took some time to get the pretty-printers in place.
Please see attached file for more informations on the
QDBusCallDeliveryEvent object.

Who is sending the message I could not find out.
Right now no "org.a11y.atspi.Registry" is visible
in qdbusviewer, just a "org.a11y.Bus" ?

At least in [1] Qt5 seems to listen to this
"EventListenerDeregistered" message.

The message member seems to contain a member arguments [2],
a QList<QVariant>, containing 2 QVariant of type = 10.

type = 10 == QVariant::String == QMetaType::QString ?

The error message:
    Internal error: got invalid meta type 11 (QStringList)
    when trying to convert to meta type 10 (QString)

So it looks like the arguments got converted in [3] somehow to
a QStringList instead a QString, and do therefore not
match the "eventListenerDeregistered" signature anymore.


Kind regards,
Bernhard





[1] qtbase-opensource-src-5.7.1+dfsg/src/platformsupport/linuxaccessibility/atspiadaptor.cpp:140
    success = success && m_dbus->connection().connect(QLatin1String("org.a11y.atspi.Registry"), QLatin1String("/org/a11y/atspi/registry"),
                                                      QLatin1String("org.a11y.atspi.Registry"), QLatin1String("EventListenerDeregistered"), this,
                                                      SLOT(eventListenerDeregistered(QString,QString)));

[2]
(gdb) print *(e->message.d_ptr)
$8 = {
  arguments = QList<QVariant> = {
    [0] = {
      d = {
        data = {
          ..
          ptr = 0x7fb1100117f0, 
          shared = 0x7fb1100117f0
        }, 
        type = 10, 
        is_shared = 0, 
        is_null = 0
      }
    },
    [1] = {
      d = {
        data = {
          ..
          ptr = 0x7fb1100172c0, 
          shared = 0x7fb1100172c0
        }, 
        type = 10, 
        is_shared = 0, 
        is_null = 0
      }
    }
  }, 
  ...
  interface = "org.a11y.atspi.Registry", 
  name = "EventListenerDeregistered", 
  ...

[3] qtbase-opensource-src-5.7.1+dfsg/src/dbus/qdbusintegrator.cpp:935
        const QVariant &arg = msg.arguments().at(i - 1);
        if (arg.userType() == id)
            ...
        else if (arg.userType() == qMetaTypeId<QDBusArgument>()) {
            ...
        } else {
            qFatal("Internal error: got invalid meta type %d (%s) "
                   "when trying to convert to meta type %d (%s)",
                   arg.userType(), QMetaType::typeName(arg.userType()),
                   id, QMetaType::typeName(id));
        }
Comment 20 Christoph Feck 2017-01-24 23:06:55 UTC
Looks related to Qt AT-SPI accessibility, maybe that's the reason developers cannot reproduce it.
Comment 21 Christoph Feck 2017-01-25 02:25:06 UTC
*** Bug 375485 has been marked as a duplicate of this bug. ***
Comment 22 Justin Zobel 2020-10-23 02:24:22 UTC
Can you please confirm if this is still an issue with Konsole 20.08.1+.
Comment 23 Chris Ross 2020-10-23 08:47:48 UTC
(In reply to Justin from comment #22)
> Can you please confirm if this is still an issue with Konsole 20.08.1+.

I am running Konsole 20.04.1 and I can confirm that is stable. It has not crashed for me in a very long time despite my running it all day, every day, on two different computers (one running Fedora 31, the other F32).
Comment 24 Justin Zobel 2020-10-23 08:53:19 UTC
Thanks for the update. I'll close this bug but if it comes back again feel free to report it.