Summary: | Kwin crashed after attempting to start a fullscreen app, and the resolution swapped a lot | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | wodencafe |
Component: | compositing | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | amp_ext, flyser42, i, marek.zukal, therammix, wodencafe |
Priority: | NOR | Keywords: | drkonqi |
Version: | 5.2.2 | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/kwin/cae90bb035e6170a9beb38545cf60e31af612804 | Version Fixed In: | 5.6 |
Sentry Crash Report: | |||
Attachments: |
Plasma Crash Stacktrace
Result of qdbus org.kde.KWin /KWin supportInformation New crash information added by DrKonqi |
Description
wodencafe
2015-05-10 06:13:24 UTC
Looks like some shadow got deleted (through deleteLater) after the scene/effectshandler was destroyed. From the description through a updateShadow() from a removed client, BUT: this would imply that the deleteLater event is delivered to a destroyed object, because the SceneOpenGLShadow should be destroyed with Compositor::finish() *before* that deletes the effects and scene. => Can you reproduce this? I can, check out this fresh backtrace: Application: KWin (kwin_x11), signal: Segmentation fault Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [Current thread is 1 (Thread 0x7f079f0fb800 (LWP 6492))] Thread 5 (Thread 0x7f077a2e4700 (LWP 6510)): #0 0x00007f079ebc48dd in poll () at ../sysdeps/unix/syscall-template.S:81 #1 0x00007f0795cd9ebc in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f0795cda242 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f0784fb4ae6 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 #4 0x00007f0795d00955 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #5 0x00007f07961f86aa in start_thread (arg=0x7f077a2e4700) at pthread_create.c:333 #6 0x00007f079ebcfeed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 4 (Thread 0x7f0779ae3700 (LWP 6511)): #0 0x00007f079ebc48dd in poll () at ../sysdeps/unix/syscall-template.S:81 #1 0x00007f0795cd9ebc in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f0795cd9fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f0795cda009 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #4 0x00007f0795d00955 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #5 0x00007f07961f86aa in start_thread (arg=0x7f0779ae3700) at pthread_create.c:333 #6 0x00007f079ebcfeed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 3 (Thread 0x7f076b064700 (LWP 6529)): #0 0x00007ffe865fec58 in clock_gettime () #1 0x00007f079ebde38d in __GI___clock_gettime (clock_id=<optimized out>, tp=<optimized out>) at ../sysdeps/unix/clock_gettime.c:115 #2 0x00007f079d233cb6 in qt_clock_gettime (ts=0x7f076b063b50, clock=<optimized out>) at tools/qelapsedtimer_unix.cpp:105 #3 do_gettime (frac=<synthetic pointer>, sec=<synthetic pointer>) at tools/qelapsedtimer_unix.cpp:161 #4 qt_gettime () at tools/qelapsedtimer_unix.cpp:170 #5 0x00007f079d412639 in QTimerInfoList::updateCurrentTime (this=this@entry=0x7f0760001118) at kernel/qtimerinfo_unix.cpp:84 #6 0x00007f079d41196e in QEventDispatcherUNIXPrivate::doSelect (this=this@entry=0x7f07600008e0, flags=..., flags@entry=..., timeout=timeout@entry=0x0) at kernel/qeventdispatcher_unix.cpp:171 #7 0x00007f079d412275 in QEventDispatcherUNIX::processEvents (this=0x7f07600008c0, flags=...) at kernel/qeventdispatcher_unix.cpp:607 #8 0x00007f079d3b93e2 in QEventLoop::exec (this=this@entry=0x7f076b063da0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204 #9 0x00007f079d178b44 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:503 #10 0x00007f079702bf65 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5 #11 0x00007f079d17db0e in QThreadPrivate::start (arg=0x1ef1e20) at thread/qthread_unix.cpp:337 #12 0x00007f07961f86aa in start_thread (arg=0x7f076b064700) at pthread_create.c:333 #13 0x00007f079ebcfeed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 2 (Thread 0x7f0753815700 (LWP 6567)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007f079bf82644 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5 #2 0x00007f079bf82689 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5 #3 0x00007f07961f86aa in start_thread (arg=0x7f0753815700) at pthread_create.c:333 #4 0x00007f079ebcfeed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 Thread 1 (Thread 0x7f079f0fb800 (LWP 6492)): [KCrash Handler] #6 0x00007f079e79174d in KWin::SceneOpenGLShadow::~SceneOpenGLShadow (this=0x2717100, __in_chrg=<optimized out>) at ../scene_opengl.cpp:2106 #7 0x00007f079e791809 in KWin::SceneOpenGLShadow::~SceneOpenGLShadow (this=0x2717100, __in_chrg=<optimized out>) at ../scene_opengl.cpp:2109 #8 0x00007f079d3ed778 in QObject::event (this=0x2717100, e=<optimized out>) at kernel/qobject.cpp:1236 #9 0x00007f079dcc5b2c in QApplicationPrivate::notify_helper (this=0x1b460d0, receiver=0x2717100, e=0x25d4b60) at kernel/qapplication.cpp:3720 #10 0x00007f079dccb000 in QApplication::notify (this=0x7ffe865a4df0, receiver=0x2717100, e=0x25d4b60) at kernel/qapplication.cpp:3503 #11 0x00007f079d3bbc2b in QCoreApplication::notifyInternal (this=0x7ffe865a4df0, receiver=0x2717100, event=event@entry=0x25d4b60) at kernel/qcoreapplication.cpp:935 #12 0x00007f079d3bdc9b in sendEvent (event=0x25d4b60, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228 #13 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x1b36b20) at kernel/qcoreapplication.cpp:1552 #14 0x00007f079d412112 in QEventDispatcherUNIX::processEvents (this=0x1b33460, flags=flags@entry=...) at kernel/qeventdispatcher_unix.cpp:579 #15 0x00007f078822796d in QUnixEventDispatcherQPA::processEvents (this=<optimized out>, flags=...) at eventdispatchers/qunixeventdispatcher.cpp:62 #16 0x00007f079d3b93e2 in QEventLoop::exec (this=this@entry=0x7ffe865a4d10, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204 #17 0x00007f079d3c102c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1188 #18 0x00007f079d70031c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1510 #19 0x00007f079dcc17a5 in QApplication::exec () at kernel/qapplication.cpp:2956 #20 0x00007f079ee978c3 in kdemain (argc=1, argv=0x7ffe865a4f48) at ../main_x11.cpp:294 #21 0x00007f079eae9a40 in __libc_start_main (main=0x400790 <main(int, char**)>, argc=3, argv=0x7ffe865a4f48, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe865a4f38) at libc-start.c:289 #22 0x00000000004007c9 in _start () Created attachment 92588 [details]
Plasma Crash Stacktrace
Plasma also crashed at the same time as Kwin, here is Plasma's stacktrace.
Plasma smells like bug #345660 Can you please attach the output of qdbus org.kde.KWin /KWin supportInformation ? Created attachment 92590 [details]
Result of qdbus org.kde.KWin /KWin supportInformation
Result of qdbus org.kde.KWin /KWin supportInformation
*** Bug 362147 has been marked as a duplicate of this bug. *** Dupe isn't nvidia. Created attachment 98988 [details]
New crash information added by DrKonqi
kwin_x11 (5.5.5) using Qt 5.5.1
- What I was doing when the application crashed:
Starting some steam games (mostly indie, linux versions) leads to kwin crash when the game switches to fullscreen. With those specific games (e.g. "J.U.L.I.A: Among the Stars") this crash happens on every launch.
-- Backtrace (Reduced):
#6 0x00007f075f19bacd in KWin::SceneOpenGLShadow::~SceneOpenGLShadow (this=0x2171d60, __in_chrg=<optimized out>) at /usr/src/debug/kwin-5.5.5/scene_opengl.cpp:2210
#7 0x00007f075f19bb89 in KWin::SceneOpenGLShadow::~SceneOpenGLShadow (this=0x2171d60, __in_chrg=<optimized out>) at /usr/src/debug/kwin-5.5.5/scene_opengl.cpp:2213
#8 0x00007f075d3ceb18 in QObject::event (this=0x2171d60, e=<optimized out>) at kernel/qobject.cpp:1230
#9 0x00007f075e081e7c in QApplicationPrivate::notify_helper (this=this@entry=0x14ebf70, receiver=receiver@entry=0x2171d60, e=e@entry=0x1caa7d0) at kernel/qapplication.cpp:3716
#10 0x00007f075e086cc8 in QApplication::notify (this=0x7fffe8e33620, receiver=0x2171d60, e=0x1caa7d0) at kernel/qapplication.cpp:3499
*** Bug 363527 has been marked as a duplicate of this bug. *** Has this been fixed in kwin 5.6.x? I don't want to upgrade my distribution to the experimental branch just to check if it is fixed ... I just found that this bug has been fixed by https://quickgit.kde.org/?p=kwin.git&a=commit&h=cae90bb035e6170a9beb38545cf60e31af612804 which can be applied to kwin 5.5.5 without conflicts. So I guess this can be closed. Thanks for the backlink, update and confirmation =) *** Bug 365964 has been marked as a duplicate of this bug. *** |