Bug 314196

Summary: kwin crashes when resuming from suspension
Product: [Plasma] kwin Reporter: franz.bergesund
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Severity: crash CC: ach, franz.bergesund
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description franz.bergesund 2013-01-31 17:21:07 UTC
Application: kwin (4.9.98)
KDE Platform Version: 4.9.98
Qt Version: 4.8.3
Operating System: Linux 3.5.0-22-generic x86_64
Distribution: Ubuntu 12.10

-- Information about the crash:
(I have like the feeling that this might be related with mesa) 
Background: I have a Dell Latitude E6430s with intel grafics . When I upgraded the OS to Quantal, I had problems with mesa library v 9.0.0, that solved downgrading to 8.0.4. One or two weeks ago I decided to upgrade to kde 4.10rc, and to avoid library conflicts I unholded the mesa library and now I'm back to v9.0.0. 

- What I was doing when the application crashed:
I awoke my computer and logged in. Usually this works fine, but from time to time, kwin crashes.

- Unusual behavior I noticed:

When it does often the windows are shifted, sometimes application windows on the same virtual desktop in various activities go all in the same virtual desktop, seldom all the windows open go to one virtual desktop (and it's really annoying move back a dozen windows when this happen). 

There are a few more problems that might be related to it:
1) each time I resume, the screen goes to what looks like a terminal and with n repetition of the following two lines, where n is the number of resumes since the last boot
[.....] dpm_run_callback(): pnp_bus_resume+0x0/0x80 returns -19
[.....] PM: Device 00:0a failed to resume: error -19
The only difference between the couple of lines are the numbers in the [....]
2) after that, it takes some second for the login prompt to appear. After a couple of seconds the trackpad comes to life. Sometimes this takes longer (I think when kwin crashes)
3) [I don't know what is the connection] Some windows (e.g. system setting) sometimes take ages to open.

I would like to avoid downgrading mesa library again (if mesa is the problem might solve it). I have seen that there is mesa 9.0.1, but there are official builds only for raring, but the only thing that I've found for quantal is this https://launchpad.net/~ubuntu-x-swat/+archive/intel-graphics-updates

Would make sense upgrade to mesa 9.0.1?

The crash can be reproduced some of the time.

-- Backtrace:
Application: KWin (kwin), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7ff2ab3fc7c0 (LWP 2090))]

Thread 3 (Thread 0x7ff2a3609700 (LWP 2092)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007ff2bbdd9cd7 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007ff2bbdd9d09 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007ff2b38b7e9a in start_thread (arg=0x7ff2a3609700) at pthread_create.c:308
#4  0x00007ff2bf4e3cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7ff291c42700 (LWP 2235)):
#0  0x00007ff2bf4dd023 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007ff2ba924023 in qt_safe_select (nfds=24, fdread=0x7ff28c000ac8, fdwrite=0x7ff28c000d60, fdexcept=0x7ff28c000ff8, orig_timeout=0x0) at kernel/qcore_unix.cpp:83
#2  0x00007ff2ba9289e4 in QEventDispatcherUNIXPrivate::doSelect (this=this@entry=0x7ff28c000910, flags=..., timeout=0x0) at kernel/qeventdispatcher_unix.cpp:223
#3  0x00007ff2ba929572 in QEventDispatcherUNIX::processEvents (this=0x7ff28c0008f0, flags=...) at kernel/qeventdispatcher_unix.cpp:926
#4  0x00007ff2ba8f72bf in QEventLoop::processEvents (this=this@entry=0x7ff291c41d90, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007ff2ba8f7548 in QEventLoop::exec (this=0x7ff291c41d90, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007ff2ba7f8b10 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007ff2ba8d79af in QInotifyFileSystemWatcherEngine::run (this=0x24b2d20) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007ff2ba7fbaec in QThreadPrivate::start (arg=0x24b2d20) at thread/qthread_unix.cpp:338
#9  0x00007ff2b38b7e9a in start_thread (arg=0x7ff291c42700) at pthread_create.c:308
#10 0x00007ff2bf4e3cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7ff2ab3fc7c0 (LWP 2090)):
[KCrash Handler]
#6  gen7_update_renderbuffer_surface (brw=0x26c6000, rb=0x26a9b60, unit=0) at gen7_wm_surface_state.c:471
#7  0x00007ff2a106aaa0 in brw_update_renderbuffer_surfaces (brw=0x26c6000) at brw_wm_surface_state.c:1205
#8  0x00007ff2a1054ae2 in brw_upload_state (brw=brw@entry=0x26c6000) at brw_state_upload.c:498
#9  0x00007ff2a10421d7 in brw_try_draw_prims (max_index=65, min_index=3402258680, ib=<optimized out>, nr_prims=<optimized out>, prim=0x7fffcaca58e0, arrays=<optimized out>, ctx=0x26c6000) at brw_draw.c:493
#10 brw_draw_prims (ctx=0x26c6000, prim=0x7fffcaca58e0, nr_prims=<optimized out>, ib=<optimized out>, index_bounds_valid=<optimized out>, min_index=0, max_index=65, tfb_vertcount=0x0) at brw_draw.c:589
#11 0x00007ff2a0bc1b54 in vbo_draw_arrays (ctx=0x26c6000, mode=4, start=0, count=66, numInstances=1, baseInstance=<optimized out>) at ../../../../../src/mesa/vbo/vbo_exec_array.c:645
#12 0x00007ff2bb5fe88d in KWin::GLVertexBufferPrivate::corePainting (this=0x28d04e0, region=..., primitiveMode=4, hardwareClipping=<optimized out>) at ../../../kwin/libkwineffects/kwinglutils.cpp:1254
#13 0x00007ff2bb5fedad in KWin::GLVertexBuffer::render (this=this@entry=0x28cc210, region=..., primitiveMode=primitiveMode@entry=4, hardwareClipping=hardwareClipping@entry=false) at ../../../kwin/libkwineffects/kwinglutils.cpp:1363
#14 0x00007ff2bb5fee31 in KWin::GLVertexBuffer::render (this=0x28cc210, primitiveMode=4) at ../../../kwin/libkwineffects/kwinglutils.cpp:1355
#15 0x00007ff2bf87133a in KWin::SceneOpenGL2::doPaintBackground (this=<optimized out>, vertices=...) at ../../kwin/scene_opengl.cpp:529
#16 0x00007ff2bf873a43 in KWin::SceneOpenGL::paintBackground (this=this@entry=0x28d06c0, region=...) at ../../kwin/scene_opengl.cpp:364
#17 0x00007ff2bf866a36 in KWin::Scene::paintSimpleScreen (this=this@entry=0x28d06c0, orig_mask=orig_mask@entry=8, region=...) at ../../kwin/scene.cpp:331
#18 0x00007ff2bf8648be in KWin::Scene::finalPaintScreen (this=0x28d06c0, mask=8, region=..., data=...) at ../../kwin/scene.cpp:186
#19 0x00007ff2bf8856b0 in KWin::EffectsHandlerImpl::paintScreen (this=0x299d6e0, mask=mask@entry=8, region=..., data=...) at ../../kwin/effects.cpp:254
#20 0x00007ff2bdcc4ab7 in KWin::Effect::paintScreen (this=this@entry=0x3e865e0, mask=mask@entry=8, region=..., data=...) at ../../../kwin/libkwineffects/kwineffects.cpp:489
#21 0x00007ff2bf88565b in KWin::EffectsHandlerImpl::paintScreen (this=0x299d6e0, mask=8, region=..., data=...) at ../../kwin/effects.cpp:251
#22 0x00007ff2bf865c58 in KWin::Scene::paintScreen (this=0x28d06c0, mask=0x7fffcaca5ed4, region=0x7fffcaca5f80) at ../../kwin/scene.cpp:140
#23 0x00007ff2bf87508e in KWin::SceneOpenGL::paint (this=0x28d06c0, damage=..., toplevels=...) at ../../kwin/scene_opengl.cpp:308
#24 0x00007ff2bf86005c in KWin::Compositor::performCompositing (this=0x2559b20) at ../../kwin/composite.cpp:610
#25 0x00007ff2ba90d26c in QObject::event (this=0x2559b20, e=<optimized out>) at kernel/qobject.cpp:1157
#26 0x00007ff2b9c9fe9c in QApplicationPrivate::notify_helper (this=this@entry=0x23a91e0, receiver=receiver@entry=0x2559b20, e=e@entry=0x7fffcaca66b0) at kernel/qapplication.cpp:4562
#27 0x00007ff2b9ca430a in QApplication::notify (this=0x7fffcaca6cf0, receiver=0x2559b20, e=0x7fffcaca66b0) at kernel/qapplication.cpp:4423
#28 0x00007ff2befd1636 in KApplication::notify (this=0x7fffcaca6cf0, receiver=0x2559b20, event=0x7fffcaca66b0) at ../../kdeui/kernel/kapplication.cpp:311
#29 0x00007ff2ba8f856e in QCoreApplication::notifyInternal (this=0x7fffcaca6cf0, receiver=0x2559b20, event=0x7fffcaca66b0) at kernel/qcoreapplication.cpp:915
#30 0x00007ff2ba929462 in sendEvent (event=0x7fffcaca66b0, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#31 QTimerInfoList::activateTimers (this=0x23a9e58) at kernel/qeventdispatcher_unix.cpp:611
#32 0x00007ff2ba9294c0 in QEventDispatcherUNIX::activateTimers (this=this@entry=0x23a9170) at kernel/qeventdispatcher_unix.cpp:868
#33 0x00007ff2ba929618 in QEventDispatcherUNIX::processEvents (this=0x23a9170, flags=...) at kernel/qeventdispatcher_unix.cpp:930
#34 0x00007ff2b9d45a3f in QEventDispatcherX11::processEvents (this=0x23a9170, flags=...) at kernel/qeventdispatcher_x11.cpp:152
#35 0x00007ff2ba8f72bf in QEventLoop::processEvents (this=this@entry=0x7fffcaca6a00, flags=...) at kernel/qeventloop.cpp:149
#36 0x00007ff2ba8f7548 in QEventLoop::exec (this=0x7fffcaca6a00, flags=...) at kernel/qeventloop.cpp:204
#37 0x00007ff2ba8fc708 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#38 0x00007ff2bf816d9a in kdemain (argc=3, argv=0x7fffcaca6e38) at ../../kwin/main.cpp:537
#39 0x00007ff2bf41176d in __libc_start_main (main=0x4006a0 <main(int, char**)>, argc=3, ubp_av=0x7fffcaca6e38, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffcaca6e28) at libc-start.c:226
#40 0x00000000004006d1 in _start ()

Possible duplicates by query: bug 314018, bug 313416.

Reported using DrKonqi
Comment 1 Martin Flöser 2013-01-31 17:54:57 UTC
as a workaround disable unredirection of fullscreen windows

*** This bug has been marked as a duplicate of bug 299333 ***
Comment 2 franz.bergesund 2013-01-31 21:17:18 UTC
it's already disabled (I might have unchecked it while trying different options before downgrading mesa lib)