Bug 399630 - Kwin crash when starting short script
Summary: Kwin crash when starting short script
Status: RESOLVED DUPLICATE of bug 399612
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: 5.14.0
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2018-10-10 19:51 UTC by Robby Engelmann
Modified: 2018-10-11 12:45 UTC (History)
2 users (show)

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


Attachments
requested output (6.08 KB, text/plain)
2018-10-11 12:45 UTC, Robby Engelmann
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Robby Engelmann 2018-10-10 19:51:10 UTC
Application: kwin_x11 (5.14.0)

Qt Version: 5.11.2
Frameworks Version: 5.50.0
Operating System: Linux 4.18.12-1-default x86_64
Distribution: "openSUSE Tumbleweed"

-- Information about the crash:
- What I was doing when the application crashed:
I was closing a crypted container via a script. The script is started via a desktop file, that is linked to an activity and is shown in folderview.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f2c43761880 (LWP 3029))]

Thread 6 (Thread 0x7f2c2a62b700 (LWP 3210)):
#0  0x00007f2c4aa644dc in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f2c4b75301a in  () at /usr/lib64/libQt5Script.so.5
#2  0x00007f2c4b75303b in  () at /usr/lib64/libQt5Script.so.5
#3  0x00007f2c4aa5e554 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f2c4d0dfccf in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f2c2b64d700 (LWP 3203)):
#0  0x00007f2c4aa644dc in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f2c2b953f5b in  () at /usr/lib64/dri/i965_dri.so
#2  0x00007f2c2b953c87 in  () at /usr/lib64/dri/i965_dri.so
#3  0x00007f2c4aa5e554 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f2c4d0dfccf in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f2c3a165700 (LWP 3197)):
#0  0x00007f2c4d0d53c6 in ppoll () at /lib64/libc.so.6
#1  0x00007f2c4be3eac1 in ppoll (__ss=<optimized out>, __timeout=<optimized out>, __nfds=<optimized out>, __fds=<optimized out>) at /usr/include/bits/poll2.h:77
#2  0x00007f2c4be3eac1 in qt_ppoll (timeout_ts=0x0, nfds=1, fds=0x7f2c30000d28) at kernel/qcore_unix.cpp:132
#3  0x00007f2c4be3eac1 in qt_safe_poll(pollfd*, unsigned long, timespec const*) (fds=0x7f2c30000d28, nfds=nfds@entry=1, timeout_ts=timeout_ts@entry=0x0) at kernel/qcore_unix.cpp:153
#4  0x00007f2c4be3ff39 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at ../../include/QtCore/../../src/corelib/tools/qarraydata.h:209
#5  0x00007f2c4bdefadb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f2c3a164d00, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#6  0x00007f2c4bc3ede6 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#7  0x00007f2c4a0bc485 in  () at /usr/lib64/libQt5Qml.so.5
#8  0x00007f2c4bc489b7 in QThreadPrivate::start(void*) (arg=0x5605a91826c0) at thread/qthread_unix.cpp:367
#9  0x00007f2c4aa5e554 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f2c4d0dfccf in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f2c3bfff700 (LWP 3119)):
#0  0x00007f2c4d0d53c6 in ppoll () at /lib64/libc.so.6
#1  0x00007f2c4be3eac1 in ppoll (__ss=<optimized out>, __timeout=<optimized out>, __nfds=<optimized out>, __fds=<optimized out>) at /usr/include/bits/poll2.h:77
#2  0x00007f2c4be3eac1 in qt_ppoll (timeout_ts=0x0, nfds=1, fds=0x7f2c3400b0e8) at kernel/qcore_unix.cpp:132
#3  0x00007f2c4be3eac1 in qt_safe_poll(pollfd*, unsigned long, timespec const*) (fds=0x7f2c3400b0e8, nfds=nfds@entry=1, timeout_ts=timeout_ts@entry=0x0) at kernel/qcore_unix.cpp:153
#4  0x00007f2c4be3ff39 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at ../../include/QtCore/../../src/corelib/tools/qarraydata.h:209
#5  0x00007f2c4bdefadb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f2c3bffecf0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#6  0x00007f2c4bc3ede6 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#7  0x00007f2c49b8d545 in  () at /usr/lib64/libQt5DBus.so.5
#8  0x00007f2c4bc489b7 in QThreadPrivate::start(void*) (arg=0x7f2c49c07d60) at thread/qthread_unix.cpp:367
#9  0x00007f2c4aa5e554 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f2c4d0dfccf in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f2c415df700 (LWP 3047)):
#0  0x00007f2c4d0d52c9 in poll () at /lib64/libc.so.6
#1  0x00007f2c4d483cc7 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f2c4d4858ea in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f2c41ac9519 in QXcbEventReader::run() (this=0x5605a8cdadf0) at qxcbconnection.h:409
#4  0x00007f2c4bc489b7 in QThreadPrivate::start(void*) (arg=0x5605a8cdadf0) at thread/qthread_unix.cpp:367
#5  0x00007f2c4aa5e554 in start_thread () at /lib64/libpthread.so.0
#6  0x00007f2c4d0dfccf in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f2c43761880 (LWP 3029)):
[KCrash Handler]
#6  0x00007f2c4be00ccb in QMetaObject::invokeMethod(QObject*, char const*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) (obj=0x5605a95d2cf0, member=0x7f2c4b9e1246 "addRepaintFull", type=Qt::AutoConnection, ret=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1474
#7  0x00007f2c4b9cd187 in KWin::EffectWindow::addRepaintFull() () at /usr/lib64/libkwineffects.so.11
#8  0x00007f2c4b8fe4a6 in  () at /usr/lib64/libkwin4_effect_builtins.so.1
#9  0x00007f2c4ce68c11 in KWin::EffectsHandlerImpl::postPaintScreen() () at /usr/lib64/libkwin.so.5
#10 0x00007f2c4ce5acc6 in KWin::Scene::paintScreen(int*, QRegion const&, QRegion const&, QRegion*, QRegion*, QMatrix4x4 const&, QRect const&) () at /usr/lib64/libkwin.so.5
#11 0x00007f2c38f10576 in KWin::SceneOpenGL::paint(QRegion, QList<KWin::Toplevel*>) () at /usr/lib64/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#12 0x00007f2c4ce4cada in KWin::Compositor::performCompositing() () at /usr/lib64/libkwin.so.5
#13 0x00007f2c4be1a8bb in QObject::event(QEvent*) (this=0x5605a8dbd890, e=<optimized out>) at kernel/qobject.cpp:1232
#14 0x00007f2c4c7914a1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x5605a8cc0740, receiver=receiver@entry=0x5605a8dbd890, e=e@entry=0x7ffc62142e20) at kernel/qapplication.cpp:3728
#15 0x00007f2c4c798af0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffc621430c0, receiver=0x5605a8dbd890, e=0x7ffc62142e20) at kernel/qapplication.cpp:3487
#16 0x00007f2c4bdf0e09 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x5605a8dbd890, event=event@entry=0x7ffc62142e20) at ../../include/QtCore/5.11.2/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:307
#17 0x00007f2c4be41ed8 in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x7ffc62142e20, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#18 0x00007f2c4be41ed8 in QTimerInfoList::activateTimers() (this=this@entry=0x5605a8d7af20) at kernel/qtimerinfo_unix.cpp:643
#19 0x00007f2c4be3f4cc in QEventDispatcherUNIXPrivate::activateTimers() (this=this@entry=0x5605a8d7ae80) at kernel/qeventdispatcher_unix.cpp:249
#20 0x00007f2c4be4008c in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at kernel/qeventdispatcher_unix.cpp:514
#21 0x00007f2c41b5cc6d in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at qunixeventdispatcher.cpp:68
#22 0x00007f2c4bdefadb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffc62142fd0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#23 0x00007f2c4bdf7c52 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#24 0x00007f2c4d57d47b in kdemain () at /usr/lib64/libkdeinit5_kwin_x11.so
#25 0x00007f2c4d007feb in __libc_start_main () at /lib64/libc.so.6
#26 0x00005605a81a008a in _start ()
[Inferior 1 (process 3029) detached]

Reported using DrKonqi
Comment 1 David Edmundson 2018-10-10 20:10:46 UTC
Can you get debug symbols for #7  0x00007f2c4b9cd187 in KWin::EffectWindow::addRepaintFull() () at /usr/lib64/libkwineffects.so.11

please
Comment 2 David Edmundson 2018-10-10 20:34:46 UTC
Edit. We've got two of these in 5.14.0, clearly some regression. Time to sleuth without symbols.

It's a window being repainted in a postPaintScreen looking at all the calls, that means it has to be DimInactive. The rest of the calls from other effects are in the effect's postPaintWindow.

From the trace, I suspect we're getting a group change after a windowClosed which is reinserting it into our m_transitions hash. 

@Robby if you can reproduce it if you could note how the window you're closing are stacked that would help.
Comment 3 Vlad Zahorodnii 2018-10-11 08:13:35 UTC
(In reply to David Edmundson from comment #2)
> Edit. We've got two of these in 5.14.0, clearly some regression. Time to
> sleuth without symbols.
Just for tracking here's another one: 399612.

> It's a window being repainted in a postPaintScreen looking at all the calls,
> that means it has to be DimInactive. The rest of the calls from other
> effects are in the effect's postPaintWindow.
Yes, looks like a regression in the Dim Inactive effect.

@Robby can you please attach output of
qdbus org.kde.KWin /KWin supportInformation
?
Comment 4 David Edmundson 2018-10-11 10:06:49 UTC
*** This bug has been marked as a duplicate of bug 399612 ***
Comment 5 Robby Engelmann 2018-10-11 12:44:40 UTC
(In reply to David Edmundson from comment #2)
> @Robby if you can reproduce it if you could note how the window you're
> closing are stacked that would help.

the window actually is not stacked at all, it is a konsole window that is opened and closed very fast (the script only closes an encrypted container file)
Comment 6 Robby Engelmann 2018-10-11 12:45:08 UTC
Created attachment 115565 [details]
requested output