Bug 372620

Summary: konsole PID: 2825 Signal: Segmentation fault (11)
Product: [Applications] konsole Reporter: Don Curtis <bugrprt21882>
Component: generalAssignee: Konsole Developer <konsole-devel>
Status: RESOLVED FIXED    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: 16.08.2   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Don Curtis 2016-11-18 10:18:19 UTC
Application: konsole (16.08.2)

Qt Version: 5.6.1
Frameworks Version: 5.26.0
Operating System: Linux 4.4.27-2-default x86_64
Distribution: "openSUSE Leap 42.2"

-- Information about the crash:
- What I was doing when the application crashed:
<Ctrl-D> in the Konsole window to exit from the user's bash session.

-- Backtrace:
Application: Konsole (konsole), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f60464378c0 (LWP 2825))]

Thread 4 (Thread 0x7f601dde3700 (LWP 2829)):
#0  0x00007f603dc490af in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f602923e533 in radeon_drm_cs_emit_ioctl (mtx=0x146fce0, cond=<optimized out>) at ../../../../../include/c11/threads_posix.h:159
#2  0x00007f602923e533 in radeon_drm_cs_emit_ioctl (sema=0x146fce0) at ../../../../../src/gallium/auxiliary/os/os_thread.h:259
#3  0x00007f602923e533 in radeon_drm_cs_emit_ioctl (param=param@entry=0x146f8b0) at radeon_drm_winsys.c:688
#4  0x00007f602923dd57 in impl_thrd_routine (p=<optimized out>) at ../../../../../include/c11/threads_posix.h:87
#5  0x00007f603dc44734 in start_thread () at /lib64/libpthread.so.0
#6  0x00007f6045d75d3d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f602aceb700 (LWP 2828)):
#0  0x00007f6045d6d49d in poll () at /lib64/libc.so.6
#1  0x00007f603d720314 in g_main_context_iterate (priority=2147483647, n_fds=1, fds=0x7f6024003020, timeout=-1, context=0x7f6024000990) at gmain.c:4135
#2  0x00007f603d720314 in g_main_context_iterate (context=context@entry=0x7f6024000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3835
#3  0x00007f603d72042c in g_main_context_iteration (context=0x7f6024000990, may_block=1) at gmain.c:3901
#4  0x00007f604235632b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f60240008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#5  0x00007f6042303fdb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f602aceace0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f604213ef1a in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:500
#7  0x00007f60404eb1d5 in  () at /usr/lib64/libQt5DBus.so.5
#8  0x00007f60421439e9 in QThreadPrivate::start(void*) (arg=0x7f6040753ce0) at thread/qthread_unix.cpp:341
#9  0x00007f603dc44734 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f6045d75d3d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f60311c3700 (LWP 2827)):
#0  0x00007f6045d6d49d in poll () at /lib64/libc.so.6
#1  0x00007f603e06f3e2 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f603e070fcf in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f603374d839 in QXcbEventReader::run() (this=0x12a4f80) at qxcbconnection.cpp:1325
#4  0x00007f60421439e9 in QThreadPrivate::start(void*) (arg=0x12a4f80) at thread/qthread_unix.cpp:341
#5  0x00007f603dc44734 in start_thread () at /lib64/libpthread.so.0
#6  0x00007f6045d75d3d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f60464378c0 (LWP 2825)):
[KCrash Handler]
#6  0x00007f60459d9360 in  () at /usr/lib64/libkonsoleprivate.so.16
#7  0x00007f60459f7eac in Konsole::Session::getDynamicTitle() () at /usr/lib64/libkonsoleprivate.so.16
#8  0x00007f6045a01189 in Konsole::SessionController::snapshot() () at /usr/lib64/libkonsoleprivate.so.16
#9  0x00007f60423301c3 in QMetaObject::activate(QObject*, int, int, void**) (a=0x7ffe591f4ac0, r=0x1fdc520, this=0x1e7d280) at ../../src/corelib/kernel/qobject_impl.h:124
#10 0x00007f60423301c3 in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x1e7a2f0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3715
#11 0x00007f6042330717 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x1e7a2f0, m=m@entry=0x7f604274c700 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3595
#12 0x00007f60423a9220 in QTimer::timeout(QTimer::QPrivateSignal) (this=this@entry=0x1e7a2f0) at .moc/moc_qtimer.cpp:198
#13 0x00007f604233d112 in QTimer::timerEvent(QTimerEvent*) (this=0x1e7a2f0, e=<optimized out>) at kernel/qtimer.cpp:247
#14 0x00007f6042330f34 in QObject::event(QEvent*) (this=0x1e7a2f0, e=<optimized out>) at kernel/qobject.cpp:1237
#15 0x00007f60432a8e3c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#16 0x00007f60432ad49a in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#17 0x00007f6042305fc5 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x1e7a2f0, event=event@entry=0x7ffe591f4f00) at kernel/qcoreapplication.cpp:1015
#18 0x00007f6042355c7e in QTimerInfoList::activateTimers() (event=0x7ffe591f4f00, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:225
#19 0x00007f6042355c7e in QTimerInfoList::activateTimers() (this=0x12e5310) at kernel/qtimerinfo_unix.cpp:637
#20 0x00007f6042356041 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:176
#21 0x00007f603d720134 in g_main_context_dispatch (context=0x7f602c0016f0) at gmain.c:3154
#22 0x00007f603d720134 in g_main_context_dispatch (context=context@entry=0x7f602c0016f0) at gmain.c:3769
#23 0x00007f603d720388 in g_main_context_iterate (context=context@entry=0x7f602c0016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840
#24 0x00007f603d72042c in g_main_context_iteration (context=0x7f602c0016f0, may_block=1) at gmain.c:3901
#25 0x00007f604235632b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x12f2fd0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#26 0x00007f6042303fdb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe591f5140, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#27 0x00007f604230bec6 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1285
#28 0x00007f604605c63a in kdemain () at /usr/lib64/libkdeinit5_konsole.so
#29 0x00007f6045cac6e5 in __libc_start_main () at /lib64/libc.so.6
#30 0x0000000000400789 in _start ()

Reported using DrKonqi
Comment 1 Martin Sandsmark 2016-11-20 13:42:48 UTC
Git commit 40b1f0e851c115e1a2df79e7ec4bc4fe726d9e43 by Martin T. H. Sandsmark.
Committed on 20/11/2016 at 13:40.
Pushed by sandsmark into branch 'master'.

Only use foreground process info if valid

getProcessInfo() returned _foregroundProcessInfo without checking the
return value of updateForegroundProcessInfo() indicating whether
_foregroundProcessInfo was non-existent or invalid.

I think this might be the solution to a bunch of recent crash bugs,
but not closing them as I can't test.

Also skipping RB because it is a simple patch and RB is down from here.
Related: bug 372401, bug 372619, bug 372593

M  +1    -2    src/Session.cpp

http://commits.kde.org/konsole/40b1f0e851c115e1a2df79e7ec4bc4fe726d9e43
Comment 2 Kurt Hindenburg 2016-11-24 14:47:46 UTC
Git commit d28afb6664459cf28d73d7617b74c49711ce7a86 by Kurt Hindenburg, on behalf of Martin T. H. Sandsmark.
Committed on 24/11/2016 at 14:42.
Pushed by hindenburg into branch 'Applications/16.12'.

Only use foreground process info if valid

getProcessInfo() returned _foregroundProcessInfo without checking the
return value of updateForegroundProcessInfo() indicating whether
_foregroundProcessInfo was non-existent or invalid.

I think this might be the solution to a bunch of recent crash bugs,
but not closing them as I can't test.

Also skipping RB because it is a simple patch and RB is down from here.
Related: bug 372401, bug 372619, bug 372593
(cherry picked from commit 40b1f0e851c115e1a2df79e7ec4bc4fe726d9e43)

M  +1    -2    src/Session.cpp

https://commits.kde.org/konsole/d28afb6664459cf28d73d7617b74c49711ce7a86
Comment 3 Kurt Hindenburg 2019-07-12 03:24:00 UTC
Reopen if you can duplicate the issue in 19.08 - a lot has changed since 16.08