Bug 264897 - crash during alt+tab
Summary: crash during alt+tab
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: effects-tabbox (show other bugs)
Version: 4.8.0
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
: 281487 293129 294378 300187 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-01-30 22:30 UTC by Pascal d'Hermilly
Modified: 2013-01-16 15:05 UTC (History)
7 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (7.52 KB, text/plain)
2011-08-09 21:39 UTC, Thilo-Alexander Ginkel
Details
New crash information added by DrKonqi (8.39 KB, text/plain)
2011-11-24 08:02 UTC, AlexCzar
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pascal d'Hermilly 2011-01-30 22:30:40 UTC
Application: kwin (4.6.00 (4.6.0))
KDE Platform Version: 4.6.00 (4.6.0)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-25-generic x86_64
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
I was alt-tabbing through some programs when kwin crashed. One of the programs was probably changing the UI as it was fetching CD information from the internet.

-- Backtrace:
Application: KWin (kwin), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f0d5c31b780 (LWP 1861))]

Thread 3 (Thread 0x7f0d40d6f700 (LWP 1870)):
#0  0x00007f0d5bb6d2c3 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f0d57eea76e in qt_safe_select (nfds=17, fdread=0x1371f30, fdwrite=0x13721c8, fdexcept=0x1372460, orig_timeout=0x0) at kernel/qcore_unix.cpp:82
#2  0x00007f0d57eefbeb in QEventDispatcherUNIXPrivate::doSelect (this=0x1371d70, flags=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_unix.cpp:219
#3  0x00007f0d57ef081b in QEventDispatcherUNIX::processEvents (this=0x1206e00, flags=) at kernel/qeventdispatcher_unix.cpp:919
#4  0x00007f0d57ebfa02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#5  0x00007f0d57ebfdec in QEventLoop::exec (this=0x7f0d40d6ed90, flags=) at kernel/qeventloop.cpp:201
#6  0x00007f0d57dca2fd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#7  0x00007f0d57e9f5f8 in QInotifyFileSystemWatcherEngine::run (this=0x1370ea0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f0d57dcd27e in QThreadPrivate::start (arg=0x1370ea0) at thread/qthread_unix.cpp:266
#9  0x00007f0d525c5971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#10 0x00007f0d5bb7492d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f0d3bfff700 (LWP 1871)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f0d5a990334 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x7f0d5ac9b160) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00007f0d5a990369 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=0x7f0d5aca9234) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x00007f0d525c5971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#4  0x00007f0d5bb7492d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f0d5c31b780 (LWP 1861)):
[KCrash Handler]
#6  0x00007f0d5bef9278 in KWin::EffectsHandlerImpl::currentTabBoxWindowList (this=<value optimized out>) at ../../kwin/effects.cpp:735
#7  0x00007f0d42d5050a in KWin::FlipSwitchEffect::paintScreen (this=0x108d010, mask=544, region=<value optimized out>, data=...) at ../../../kwin/effects/flipswitch/flipswitch.cpp:153
#8  0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#9  0x00007f0d42ce5d50 in KWin::DesktopGridEffect::paintScreen (this=<value optimized out>, mask=544, region=<value optimized out>, data=...) at ../../../kwin/effects/desktopgrid/desktopgrid.cpp:155
#10 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#11 0x00007f0d59f75e0f in KWin::Effect::paintScreen (this=<value optimized out>, mask=544, region=<value optimized out>, data=...) at ../../../kwin/lib/kwineffects.cpp:227
#12 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#13 0x00007f0d59f75e0f in KWin::Effect::paintScreen (this=<value optimized out>, mask=544, region=<value optimized out>, data=...) at ../../../kwin/lib/kwineffects.cpp:227
#14 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#15 0x00007f0d59f75e0f in KWin::Effect::paintScreen (this=<value optimized out>, mask=544, region=<value optimized out>, data=...) at ../../../kwin/lib/kwineffects.cpp:227
#16 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#17 0x00007f0d59f75e0f in KWin::Effect::paintScreen (this=<value optimized out>, mask=544, region=<value optimized out>, data=...) at ../../../kwin/lib/kwineffects.cpp:227
#18 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#19 0x00007f0d59f75e0f in KWin::Effect::paintScreen (this=<value optimized out>, mask=544, region=<value optimized out>, data=...) at ../../../kwin/lib/kwineffects.cpp:227
#20 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#21 0x00007f0d42d623b5 in KWin::TrackMouseEffect::paintScreen (this=0x1141a20, mask=544, region=) at ../../../kwin/effects/trackmouse/trackmouse.cpp:112
#22 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#23 0x00007f0d42d2e941 in KWin::ZoomEffect::paintScreen (this=0x1144080, mask=544, region=) at ../../../kwin/effects/zoom/zoom.cpp:341
#24 0x00007f0d5bef81fe in KWin::EffectsHandlerImpl::paintScreen (this=0x10258b0, mask=544, region=) at ../../kwin/effects.cpp:169
#25 0x00007f0d5bed9215 in KWin::Scene::paintScreen (this=0x859d10, mask=0x7ffff844352c, region=0x7ffff8443630) at ../../kwin/scene.cpp:137
#26 0x00007f0d5beede30 in KWin::SceneOpenGL::paint (this=0x859d10, damage=<value optimized out>, toplevels=) at ../../kwin/scene_opengl.cpp:772
#27 0x00007f0d5bed44ac in KWin::Workspace::performCompositing (this=<value optimized out>) at ../../kwin/composite.cpp:442
#28 0x00007f0d57ed28f9 in QObject::event (this=0x7f0d3c355960, e=0x7ffff8442618) at kernel/qobject.cpp:1183
#29 0x00007f0d57227fdc in QApplicationPrivate::notify_helper (this=0x724d20, receiver=0x7f0d3c355960, e=0x7ffff8443e00) at kernel/qapplication.cpp:4396
#30 0x00007f0d5722daed in QApplication::notify (this=0x7ffff8444230, receiver=0x7f0d3c355960, e=0x7ffff8443e00) at kernel/qapplication.cpp:4277
#31 0x00007f0d5b659a36 in KApplication::notify (this=0x7ffff8444230, receiver=0x7f0d3c355960, event=0x7ffff8443e00) at ../../kdeui/kernel/kapplication.cpp:311
#32 0x00007f0d57ec0cdc in QCoreApplication::notifyInternal (this=0x7ffff8444230, receiver=0x7f0d3c355960, event=0x7ffff8443e00) at kernel/qcoreapplication.cpp:732
#33 0x00007f0d57ef06f2 in sendEvent (this=0x725730) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#34 QTimerInfoList::activateTimers (this=0x725730) at kernel/qeventdispatcher_unix.cpp:602
#35 0x00007f0d57ef082c in QEventDispatcherUNIX::processEvents (this=0x6fec20, flags=) at kernel/qeventdispatcher_unix.cpp:923
#36 0x00007f0d572dbc2f in QEventDispatcherX11::processEvents (this=<value optimized out>, flags=) at kernel/qeventdispatcher_x11.cpp:152
#37 0x00007f0d57ebfa02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#38 0x00007f0d57ebfdec in QEventLoop::exec (this=0x7ffff8444130, flags=) at kernel/qeventloop.cpp:201
#39 0x00007f0d57ec3ebb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#40 0x00007f0d5be6e643 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at ../../kwin/main.cpp:542
#41 0x00007f0d5baacd8e in __libc_start_main (main=<value optimized out>, argc=<value optimized out>, ubp_av=<value optimized out>, init=<value optimized out>, fini=<value optimized out>, rtld_fini=<value optimized out>, stack_end=0x7ffff84448b8) at libc-start.c:226
#42 0x0000000000400669 in _start ()

Reported using DrKonqi
Comment 1 Thomas Lübking 2011-02-01 21:56:08 UTC
bug #261323 related?
Comment 2 Pascal d'Hermilly 2011-02-01 23:27:39 UTC
perhaps. It is using the flip switch. But it has only happened once and I use it all the time.
Comment 3 Martin Flöser 2011-05-07 10:11:48 UTC
we need a proper way to reproduce in order to investigate the crash.
Comment 4 Thilo-Alexander Ginkel 2011-08-09 21:39:31 UTC
Created attachment 62711 [details]
New crash information added by DrKonqi

kwin (4.7.00 (4.7.0)) on KDE Platform 4.7.00 (4.7.0) using Qt 4.7.2

- What I was doing when the application crashed:

Attached a secons monitor to the PC. On Alt+Tab KWin crashed.

-- Backtrace (Reduced):
#6  0x00007f7c6b26bf8a in KWin::EffectsHandlerImpl::currentTabBoxWindowList (this=<value optimized out>) at ../../kwin/effects.cpp:767
#7  0x00007f7c4edda7e1 in KWin::FlipSwitchEffect::paintScreen (this=0x1991ff0, mask=32, region=..., data=...) at ../../../kwin/effects/flipswitch/flipswitch.cpp:153
#8  0x00007f7c6b26c9f3 in KWin::EffectsHandlerImpl::paintScreen (this=0x2cac500, mask=32, region=<value optimized out>, data=...) at ../../kwin/effects.cpp:212
#9  0x00007f7c69329968 in KWin::Effect::paintScreen (this=<value optimized out>, mask=32, region=<value optimized out>, data=...) at ../../../kwin/libkwineffects/kwineffects.cpp:142
#10 0x00007f7c6b26c9f3 in KWin::EffectsHandlerImpl::paintScreen (this=0x2cac500, mask=32, region=<value optimized out>, data=...) at ../../kwin/effects.cpp:212
Comment 5 Thomas Lübking 2011-09-06 17:39:18 UTC
*** Bug 281487 has been marked as a duplicate of this bug. ***
Comment 6 Thomas Lübking 2011-09-06 17:43:57 UTC
looks like the currentTabBoxWindowList can contain NULL or invalidated clients?!

patch for the NULL case:

foreach (Client * c, clients)
   if (c) ret.append(c->effectWindow());

for the invalidation issue we'd got a problem.

To be sure we need better backtraces (best 'd be gdwarf'd ;-)
Comment 7 AlexCzar 2011-11-24 08:02:22 UTC
Created attachment 66013 [details]
New crash information added by DrKonqi

kwin (4.7.2 (4.7.2) "release 5") on KDE Platform 4.7.2 (4.7.2) "release 5" using Qt 4.7.4

- What I was doing when the application crashed:

Alt-Tabbing. Windows were of Firefox, also several skype chats and two skype contact lists. Compiz was enabled and alt-tab effect was "Flip Switch". Crash hasn't repeated yet.

-- Backtrace (Reduced):
#6  0x00007f979aa0182a in KWin::EffectsHandlerImpl::currentTabBoxWindowList (this=<optimized out>) at /usr/src/debug/kde-workspace-4.7.2/kwin/effects.cpp:767
#7  0x00007f977e3b6bf6 in KWin::FlipSwitchEffect::paintScreen (this=0x9a1d40, region=..., data=<optimized out>, mask=<optimized out>) at /usr/src/debug/kde-workspace-4.7.2/kwin/effects/flipswitch/flipswitch.cpp:153
#8  0x00007f977e3b8f42 in KWin::FlipSwitchEffect::paintScreen (this=0x9a1d40, mask=544, region=..., data=...) at /usr/src/debug/kde-workspace-4.7.2/kwin/effects/flipswitch/flipswitch.cpp:150
#9  0x00007f979a9fe746 in KWin::EffectsHandlerImpl::paintScreen (this=0x92f190, mask=544, region=<optimized out>, data=...) at /usr/src/debug/kde-workspace-4.7.2/kwin/effects.cpp:212
#10 0x00007f977e36f0a8 in KWin::DesktopGridEffect::paintScreen (this=<optimized out>, mask=544, region=..., data=...) at /usr/src/debug/kde-workspace-4.7.2/kwin/effects/desktopgrid/desktopgrid.cpp:161
Comment 8 Christophe Marin 2012-02-04 16:18:01 UTC
*** Bug 293129 has been marked as a duplicate of this bug. ***
Comment 9 Pascal d'Hermilly 2012-02-06 08:55:21 UTC
I can make it happen pretty consistently.
Open some windows. 
open yakuake.
alt+tab once and keep holding alt for 1-2 seconds like looking at the window.
Release keys and kwin chrashes (2/3 times for me)
Comment 10 Thomas Lübking 2012-02-06 14:50:19 UTC
not here. try to disable the sliding popup effect (assuming your yakuake hides when loosing focus?!) and maybe mention your KDE version...
Comment 11 Pascal d'Hermilly 2012-02-06 15:16:06 UTC
It does not happens when I enable "Keep window open when it looses focus".
I'm using KDE 4.8, but apparently I also reported it for 4.6 (original reporter)

By now I'm quite sure that the crash happens because a window is "closed". Be it yakuake or a CD-burner dialog(original report)

This is from Konsole:

pascal@pascal-laptop:~$ kwin --replace
OpenGL vendor string:                   Tungsten Graphics, Inc
OpenGL renderer string:                 Mesa DRI Intel(R) Ironlake Mobile 
OpenGL version string:                  2.1 Mesa 7.11
OpenGL shading language version string: 1.20
Driver:                                 Intel
GPU class:                              i965
OpenGL version:                         2.1
GLSL version:                           1.20
Mesa version:                           7.11
X server version:                       1.10.4
Linux kernel version:                   3.0
Direct rendering:                       yes
Requires strict binding:                yes
GLSL shaders:                           yes
Texture NPOT support:                   yes
Application::crashHandler() called with signal 11; recent crashes: 1
OpenGL vendor string:                   Tungsten Graphics, Inc
OpenGL renderer string:                 Mesa DRI Intel(R) Ironlake Mobile 
OpenGL version string:                  2.1 Mesa 7.11
OpenGL shading language version string: 1.20
Driver:                                 Intel
GPU class:                              i965
OpenGL version:                         2.1
GLSL version:                           1.20
Mesa version:                           7.11
X server version:                       1.10.4
Linux kernel version:                   3.0
Direct rendering:                       yes
Requires strict binding:                yes
GLSL shaders:                           yes
Texture NPOT support:                   yes
KCrash: Application 'kwin' crashing...
KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit
sock_file=/home/pascal/.kde/socket-pascal-laptop/kdeinit4__0

[1]+  Stopped                 kwin --replace
Comment 12 Thomas Lübking 2012-02-18 17:36:43 UTC
*** Bug 294378 has been marked as a duplicate of this bug. ***
Comment 13 Sander Lepik 2012-04-10 08:08:03 UTC
It happens for me too. But i have no pattern yet. I have also configured Meta + Tab to switch desktops. And it happens with this combination too. If i use just mouse then i have no problems.
Comment 14 Pascal d'Hermilly 2012-04-17 16:27:31 UTC
Still happens in 4.8.2
Comment 15 Martin Flöser 2012-05-17 10:02:09 UTC
*** Bug 300187 has been marked as a duplicate of this bug. ***
Comment 16 Martin Flöser 2013-01-16 14:52:40 UTC
has anyone been able to reproduce the crash with 4.9? We fixed a little bit in Alt+Tab and that might be fixed now.
Comment 17 Pascal d'Hermilly 2013-01-16 14:59:09 UTC
I cannot reproduce anymore with kde 4.10 rc2
Comment 18 Martin Flöser 2013-01-16 15:05:41 UTC
(In reply to comment #17)
> I cannot reproduce anymore with kde 4.10 rc2
this is good news! Thanks for the fast reply. By that I assume we fixed it. If anyone is still able to reproduce, please reopen.