Bug 184602

Summary: KWin crashes after use of Alt-Tab
Product: [Plasma] kwin Reporter: Ivan Andrianov <payableondeath90>
Component: compositingAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: 1980er, andresbajotierra, bedgen, dantti12, gokcen.eraslan, jonas.vejlin, kde, luismottacampos, oc666, rsidd120, seajey.serg, zahl
Priority: HI    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Ivan Andrianov 2009-02-17 09:27:40 UTC
Version:            (using KDE 4.2.0)
Compiler:          gcc 4.3.2 
OS:                Linux
Installed from:    SuSE RPMs

I opened dolphin and KDE menu, then I pressed Alt-Tab, KDE Menu was in windows list as "Qt SubApplication", I switch by Alt-Tab to Dolphin, KWin crashes, I think that is because KMenu window was in second plane
Comment 1 Dario Andres 2009-02-17 11:14:34 UTC
If you can reproduce the crash at will, may you read http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports and post a complete backtrace here? Thanks :)
Comment 2 Martin Flöser 2009-02-17 12:08:14 UTC
If you are using an effect please tell us which.
Comment 3 Ivan Andrianov 2009-02-17 16:27:16 UTC
Yes, I use effects:
- cube
- circulation
- transparency
- smooth fade in / out
- login
- logout
- minimize animation
- taskbar thumbnails
- parent dialog

I can't send you backtrace, because in openSUSE repos I don't have "-debuginfo" package for kwin.

PS: I reprocuded actions that I described 4 times, and Kwin crashed only in 1 case.
Comment 4 Martin Flöser 2009-02-17 17:08:16 UTC
If there are -debuginfo packages for kdebase or workspace, that'll do probably as well. Without a backtrace we cannot do anything for this bug (there are similar bug reports but we can't say if it is a duplicate or a different/new issue).

To the effects: I'm only interested in the one for alt+tab. You find it in the dropdown list directly on the first tab of kwin effects settings. Btw there is no effect called "circulation" (I guess you retranslated).

I just give you the options for alt+tab:
 * no effect
 * boxswitch
 * coverswitch
 * flipswitch
 * present windows
Comment 5 Ivan Andrianov 2009-02-17 17:37:16 UTC
Yes, I retranslated, it was cover flow effect
Comment 6 Ivan Andrianov 2009-02-17 17:42:10 UTC
I found kdebase4-debuginfo package, thanks for help.
backtrace:
[?1034h(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
0xffffe430 in __kernel_vsyscall ()
[Current thread is 1 (Thread 0xb540f730 (LWP 3222))]

Thread 1 (Thread 0xb540f730 (LWP 3222)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6743e70 in nanosleep () from /lib/libc.so.6
#2  0xb6743c7e in sleep () from /lib/libc.so.6
#3  0xb7d10aea in ?? () from /usr/lib/libkdeui.so.5
#4  0xb7d1151c in KCrash::defaultCrashHandler(int) () from /usr/lib/libkdeui.so.5
#5  <signal handler called>
#6  0xb7ea0a6a in KWin::WindowPaintData::WindowPaintData(KWin::EffectWindow*) () from /usr/lib/libkwineffects.so.1
#7  0xb3154ec7 in ?? () from /usr/lib/kde4/kwin4_effect_builtins.so
#8  0xb315572f in ?? () from /usr/lib/kde4/kwin4_effect_builtins.so
#9  0xb315bbdd in ?? () from /usr/lib/kde4/kwin4_effect_builtins.so
#10 0xb7f638cf in ?? () from /usr/lib/libkdeinit4_kwin.so
#11 0xb7e9eac6 in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/libkwineffects.so.1
#12 0xb7f638cf in ?? () from /usr/lib/libkdeinit4_kwin.so
#13 0xb7e9eac6 in KWin::Effect::paintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/libkwineffects.so.1
#14 0xb7f638cf in ?? () from /usr/lib/libkdeinit4_kwin.so
#15 0xb7f50e80 in ?? () from /usr/lib/libkdeinit4_kwin.so
#16 0xb7f5d81a in ?? () from /usr/lib/libkdeinit4_kwin.so
#17 0xb7f4cd76 in ?? () from /usr/lib/libkdeinit4_kwin.so
#18 0xb7eed53d in ?? () from /usr/lib/libkdeinit4_kwin.so
#19 0xb6d24bb8 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#20 0xb6d26332 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#21 0xb6d60a47 in QTimer::timeout() () from /usr/lib/libQtCore.so.4
#22 0xb6d2a66e in QTimer::timerEvent(QTimerEvent*) () from /usr/lib/libQtCore.so.4
#23 0xb6d1f05f in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#24 0xb6f9665c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#25 0xb6f9e91e in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#26 0xb7ca492d in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#27 0xb7f01fed in ?? () from /usr/lib/libkdeinit4_kwin.so
#28 0xb6d0e91b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#29 0xb6d3df46 in ?? () from /usr/lib/libQtCore.so.4
#30 0xb6d3a3f0 in ?? () from /usr/lib/libQtCore.so.4
#31 0xb637e9a8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#32 0xb6382063 in ?? () from /usr/lib/libglib-2.0.so.0
#33 0xb6382221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#34 0xb6d3a348 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#35 0xb7036195 in ?? () from /usr/lib/libQtGui.so.4
#36 0xb6d0cf3a in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#37 0xb6d0d37a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#38 0xb6d0f829 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#39 0xb6f964d7 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#40 0xb7f04eba in kdemain () from /usr/lib/libkdeinit4_kwin.so
#41 0x080487b2 in _start ()
Comment 7 Martin Flöser 2009-02-17 17:56:20 UTC
Sorry to say, but the backtrace still contains useless data. Please install kdebase4-workspace-debuginfo as well.
Comment 8 Ivan Andrianov 2009-02-17 18:16:27 UTC
Sorry, I installed kdebase4-workspace-debuginfo and received normal backtrace:
Приложение: KWin (kwin), сигнал SIGSEGV
[?1034h[Thread debugging using libthread_db enabled]
[Current thread is 1 (Thread 0xb54ee730 (LWP 3644))]

Thread 1 (Thread 0xb54ee730 (LWP 3644)):
[KCrash Handler]
#6  0xb7f7fa6f in WindowPaintData (this=0xbfe9ae48, w=0x8306994) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/lib/kwineffects.cpp:74
#7  0xb3566ec7 in KWin::CoverSwitchEffect::paintWindows (this=0x81c8d18, windows=0x81c8d78, left=true, reflectedWindows=false, additionalWindow=0x0)
    at /usr/src/debug/kdebase-workspace-4.2.0/kwin/effects/coverswitch.cpp:911
#8  0xb3567709 in KWin::CoverSwitchEffect::paintScene (this=0x81c8d18, frontWindow=0x81ffa48, leftWindows=0x81c8d78, rightWindows=0x81c8d7c, reflectedWindows=false)
    at /usr/src/debug/kdebase-workspace-4.2.0/kwin/effects/coverswitch.cpp:468
#9  0xb356dbdd in KWin::CoverSwitchEffect::paintScreen (this=0x81c8d18, mask=32, region={d = 0xbfe9b2e8, static shared_empty = {ref = {_q_value = 207}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}}, 
    data=@0xbfe9b428) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/effects/coverswitch.cpp:298
#10 0xb80428cf in KWin::EffectsHandlerImpl::paintScreen (this=0x8178748, mask=32, region={d = 0xbfe9b328, static shared_empty = {ref = {_q_value = 207}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}}, 
    data=@0xbfe9b428) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/effects.cpp:122
#11 0xb7f7dac6 in KWin::Effect::paintScreen (this=0x81c7d40, mask=32, region={d = 0xbfe9b368, static shared_empty = {ref = {_q_value = 207}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}}, 
    data=@0xbfe9b428) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/lib/kwineffects.cpp:199
#12 0xb80428cf in KWin::EffectsHandlerImpl::paintScreen (this=0x8178748, mask=32, region={d = 0xbfe9b3a8, static shared_empty = {ref = {_q_value = 207}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}}, 
    data=@0xbfe9b428) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/effects.cpp:122
#13 0xb7f7dac6 in KWin::Effect::paintScreen (this=0x81cda38, mask=32, region={d = 0xbfe9b3e8, static shared_empty = {ref = {_q_value = 207}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}}, 
    data=@0xbfe9b428) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/lib/kwineffects.cpp:199
#14 0xb80428cf in KWin::EffectsHandlerImpl::paintScreen (this=0x8178748, mask=32, region={d = 0xbfe9b480, static shared_empty = {ref = {_q_value = 207}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}}, 
    data=@0xbfe9b428) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/effects.cpp:122
#15 0xb802fe80 in KWin::Scene::paintScreen (this=0x8127348, mask=0xbfe9b504, region=0xbfe9b5c4) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/scene.cpp:133
#16 0xb803c81a in KWin::SceneOpenGL::paint (this=0x8127348, damage={d = 0xbfe9b5c4, static shared_empty = {ref = {_q_value = 207}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}}, toplevels=
        {{p = {static shared_null = {ref = {_q_value = 3076}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0xbfe9b5c0}, d = 0xbfe9b5c0}})
    at /usr/src/debug/kdebase-workspace-4.2.0/kwin/scene_opengl.cpp:724
#17 0xb802bd76 in KWin::Workspace::performCompositing (this=0x818bb18) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/composite.cpp:384
#18 0xb7fcc53d in KWin::Workspace::qt_metacall (this=0x818bb18, _c=QMetaObject::InvokeMetaMethod, _id=140, _a=0xbfe9b698) at /usr/src/debug/kdebase-workspace-4.2.0/build/kwin/workspace.moc:445
#19 0xb6e03bb8 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#20 0xb6e05332 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#21 0xb6e3fa47 in QTimer::timeout() () from /usr/lib/libQtCore.so.4
#22 0xb6e0966e in QTimer::timerEvent(QTimerEvent*) () from /usr/lib/libQtCore.so.4
#23 0xb6dfe05f in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#24 0xb707565c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#25 0xb707d91e in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#26 0xb7d8392d in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#27 0xb7fe0fed in KWin::Application::notify (this=0xbfe9be64, o=0x818bd6c, e=0xbfe9bb60) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/main.cpp:368
#28 0xb6ded91b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#29 0xb6e1cf46 in ?? () from /usr/lib/libQtCore.so.4
#30 0xb6e193f0 in ?? () from /usr/lib/libQtCore.so.4
#31 0xb645d9a8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#32 0xb6461063 in ?? () from /usr/lib/libglib-2.0.so.0
#33 0xb6461221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#34 0xb6e19348 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#35 0xb7115195 in ?? () from /usr/lib/libQtGui.so.4
#36 0xb6debf3a in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#37 0xb6dec37a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#38 0xb6dee829 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#39 0xb70754d7 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#40 0xb7fe3eba in kdemain (argc=3, argv=0xbfe9c034) at /usr/src/debug/kdebase-workspace-4.2.0/kwin/main.cpp:519
#41 0x080487b2 in main (argc=10134600, argv=0xb7bcf800) at /usr/src/debug/kdebase-workspace-4.2.0/build/kwin/kwin_dummy.cpp:3
Comment 9 Martin Flöser 2009-02-17 19:13:33 UTC
Thanks. I am able to reproduce.
Comment 10 Martin Flöser 2009-05-29 12:42:42 UTC
*** Bug 194524 has been marked as a duplicate of this bug. ***
Comment 11 A. Spehr 2009-06-05 11:33:16 UTC
*** Bug 195304 has been marked as a duplicate of this bug. ***
Comment 12 A. Spehr 2009-06-05 11:34:18 UTC
(Sorry, that last was a lie.)
Comment 13 Jonas Vejlin 2009-06-05 13:50:50 UTC
a Backtrace from 195304
Dette backtrace synes at være nytteløst.
Det er formodentlig fordi dine pakker er bygget på en måde som forhindrer oprettelse af ordentlige backtrace, eller at stakrammen blev alvorligt korrumperet under sammenbruddet.

(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread 0xb5336730 (LWP 3888)]
0xb7f3f424 in __kernel_vsyscall ()
[Current thread is 0 (process 3888)]

Thread 1 (Thread 0xb5336730 (LWP 3888)):
#0  0xb7f3f424 in __kernel_vsyscall ()
#1  0xb7db9350 in nanosleep () from /lib/i686/cmov/libc.so.6
#2  0xb7db918e in sleep () from /lib/i686/cmov/libc.so.6
#3  0xb7bd90f8 in KCrash::startDrKonqi (argv=0xbfb59f08, argc=17) at ../../kdeui/util/kcrash.cpp:412
#4  0xb7bd9ac4 in KCrash::defaultCrashHandler (sig=11) at ../../kdeui/util/kcrash.cpp:337
#5  <signal handler called>
#6  0x00ff0000 in ?? ()
#7  0xb794a2e2 in KWin::WindowPaintData::WindowPaintData () from /usr/lib/libkwineffects.so.1
#8  0xb33c825c in ?? () from /usr/lib/kde4/kwin4_effect_builtins.so
#9  0xbfb5a680 in ?? ()
#10 0x0a2e5ed8 in ?? ()
#11 0x00000000 in ?? ()
#0  0xb7f3f424 in __kernel_vsyscall ()

way to reproduce it:
Have a windows that is going to close wile tapping
tap unto the window closed.
crash

I was using syanptic and reloding the information about withc package
the repo did have
Comment 14 Martin Flöser 2009-07-20 12:52:11 UTC
*** Bug 200853 has been marked as a duplicate of this bug. ***
Comment 15 Martin Flöser 2009-08-21 16:32:23 UTC
*** Bug 204664 has been marked as a duplicate of this bug. ***
Comment 16 Martin Flöser 2009-08-29 16:23:38 UTC
SVN commit 1016998 by graesslin:

We have to keep track of the currentTabBoxWindowList in tabbox effects:
when a client closes, windowClosed is called before it is removed from the list.
So we have to remove it from our list and make sure it isn't used any more.
And just to be sure we reference the window and unref after the effect closes.
The windowList is only changed in tabBoxAdded and tabBoxUpdated.
BUG: 184602

 M  +54 -29    coverswitch.cpp  
 M  +5 -2      coverswitch.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1016998
Comment 17 Jonas Vejlin 2009-08-29 18:31:51 UTC
yes, on more bug closed :)

Will be make it way back to 4.3.*?
Comment 18 Martin Flöser 2009-08-29 18:39:49 UTC
(In reply to comment #17)
> Will be make it way back to 4.3.*?
Yes I want to backport for 4.3.2 (too late for 4.3.1) and so we have some time and I will wait one/two weeks to go sure, that it really doesn't crash anymore ;-)
Comment 19 Martin Flöser 2009-09-08 22:38:12 UTC
SVN commit 1021316 by graesslin:

Backport rev 1016998:
Don't crash when a window is closed while coverswitch is active
CCBUG: 184602


 M  +54 -29    coverswitch.cpp  
 M  +5 -2      coverswitch.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1021316
Comment 20 Martin Flöser 2009-09-11 11:34:49 UTC
*** Bug 207062 has been marked as a duplicate of this bug. ***
Comment 21 Martin Flöser 2009-09-21 14:24:49 UTC
*** Bug 208079 has been marked as a duplicate of this bug. ***
Comment 22 Martin Flöser 2009-09-21 23:18:28 UTC
*** Bug 208125 has been marked as a duplicate of this bug. ***
Comment 23 Martin Flöser 2009-09-22 21:52:28 UTC
*** Bug 208207 has been marked as a duplicate of this bug. ***
Comment 24 Jonathan Thomas 2009-11-08 21:22:13 UTC
*** Bug 213723 has been marked as a duplicate of this bug. ***
Comment 25 Dario Andres 2010-02-22 01:14:57 UTC
*** Bug 227971 has been marked as a duplicate of this bug. ***