Bug 313187 - Short freeze followed by kwin_gles
Summary: Short freeze followed by kwin_gles
Status: RESOLVED UPSTREAM
Alias: None
Product: kwin
Classification: Plasma
Component: scene-opengl (show other bugs)
Version: 4.9.97 (RC 2)
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-13 15:18 UTC by Fabian
Modified: 2013-01-13 16:16 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fabian 2013-01-13 15:18:41 UTC
Application: kwin_gles (4.9.97)
KDE Platform Version: 4.9.97
Qt Version: 4.8.4
Operating System: Linux 3.6.6-1-CHAKRA x86_64
Distribution: "Chakra"

-- Information about the crash:
- What I was doing when the application crashed:
I tried to switch to a different virtual desktop via a keyboard shortcut.
- Unusual behavior I noticed:
Just before I switched the desktop seemed to be frozen (mouse pointer not changing, virtual desktop not changing immediately. 

Further notes: Normally I don't have any problem with kwin_gles. I got a similiar crash (behaviour wise)  with normal kwin once, but unfortunately I didn't save the backtrace.

-- Backtrace:
Application: KWin (kwin_gles), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f8a533e6780 (LWP 7179))]

Thread 3 (Thread 0x7f8a36b84700 (LWP 7181)):
#0  0x00007f8a52c2ade9 in syscall () from /lib/libc.so.6
#1  0x00007f8a4ddde164 in _q_futex (timeout=0x0, val=2, op=0, addr=0xa4c780, addr2=<optimized out>, val2=<optimized out>) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=0xa4c780, timeout=<optimized out>) at thread/qmutex_unix.cpp:113
#3  0x00007f8a4ddda2ad in QMutex::lockInternal (this=<optimized out>) at thread/qmutex.cpp:450
#4  0x00007f8a4eff385c in KActivities::Consumer::listActivities() const () from /usr/lib/libkactivities.so.6
#5  0x00007f8a52f292c4 in KWin::fetchActivityListAndCurrent (controller=0xb26558) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/workspace.cpp:1403
#6  0x00007f8a52f33ce3 in QtConcurrent::StoredFunctorCall1<QPair<QString, QStringList>, QPair<QString, QStringList> (*)(KActivities::Controller*), KActivities::Controller*>::runFunctor (this=0xb98a60) at /usr/include/QtCore/qtconcurrentstoredfunctioncall.h:267
#7  0x00007f8a52f38546 in QtConcurrent::RunFunctionTask<QPair<QString, QStringList> >::run (this=0xb98a60) at /usr/include/QtCore/qtconcurrentrunbase.h:106
#8  0x00007f8a4ddd2da5 in QThreadPoolThread::run (this=0xa68b20) at concurrent/qthreadpool.cpp:107
#9  0x00007f8a4dddf519 in QThreadPrivate::start (arg=0xa68b20) at thread/qthread_unix.cpp:338
#10 0x00007f8a4db4ce0e in start_thread () from /lib/libpthread.so.0
#11 0x00007f8a52c2e1dd in clone () from /lib/libc.so.6

Thread 2 (Thread 0x7f8a2ee91700 (LWP 7186)):
#0  0x00007f8a4db50c61 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f8a4dddf9b7 in wait (time=30000, this=0xa68a40) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0xa689e8, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f8a4ddd2e67 in QThreadPoolThread::run (this=0xc95ee0) at concurrent/qthreadpool.cpp:141
#4  0x00007f8a4dddf519 in QThreadPrivate::start (arg=0xc95ee0) at thread/qthread_unix.cpp:338
#5  0x00007f8a4db4ce0e in start_thread () from /lib/libpthread.so.0
#6  0x00007f8a52c2e1dd in clone () from /lib/libc.so.6

Thread 1 (Thread 0x7f8a533e6780 (LWP 7179)):
[KCrash Handler]
#6  0x00007f8a4eddeb01 in ?? () from /usr/lib/libEGL.so.1
#7  0x00007f8a4edd3560 in eglCreateImageKHR () from /usr/lib/libEGL.so.1
#8  0x00007f8a52fe46ba in loadTexture (size=..., pix=@0x7fffa6703f28, this=<optimized out>, depth=<optimized out>) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/eglonxbackend.cpp:280
#9  KWin::EglTexture::loadTexture (this=0xe75890, pix=@0x7fffa6703f28, size=..., depth=<optimized out>) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/eglonxbackend.cpp:265
#10 0x00007f8a52fa9ea5 in KWin::SceneOpenGL::Window::bindTexture (this=0xdc2da0) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene_opengl.cpp:822
#11 0x00007f8a52fafbbe in KWin::SceneOpenGL::Window::performPaint (this=0xdc2da0, mask=1, region=..., data=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene_opengl.cpp:931
#12 0x00007f8a52fa999f in KWin::SceneOpenGL2::performPaintWindow (this=<optimized out>, w=0xdc28e0, mask=1, region=..., data=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene_opengl.cpp:566
#13 0x00007f8a52fa9b3d in KWin::SceneOpenGL2::finalDrawWindow (this=0xb82090, w=0xdc28e0, mask=1, region=..., data=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene_opengl.cpp:551
#14 0x00007f8a52fb85a5 in KWin::EffectsHandlerImpl::drawWindow (this=0xe2cbd0, w=0xdc28e0, mask=1, region=..., data=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/effects.cpp:318
#15 0x00007f8a52f9cbea in KWin::Scene::finalPaintWindow (this=<optimized out>, w=0xdc28e0, mask=1, region=<optimized out>, data=<optimized out>) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene.cpp:449
#16 0x00007f8a52fb8937 in KWin::EffectsHandlerImpl::paintWindow (this=0xe2cbd0, w=0xdc28e0, mask=1, region=..., data=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/effects.cpp:281
#17 0x00007f8a52f9f7ad in KWin::Scene::paintWindow (this=<optimized out>, w=0xdc2da0, mask=1, region=..., quads=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene.cpp:356
#18 0x00007f8a52f9eadf in KWin::Scene::paintSimpleScreen (this=0xb82090, orig_mask=0, region=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene.cpp:342
#19 0x00007f8a52f9cb2e in KWin::Scene::finalPaintScreen (this=0xb82090, mask=0, region=<optimized out>, data=<optimized out>) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene.cpp:186
#20 0x00007f8a52fb8b00 in KWin::EffectsHandlerImpl::paintScreen (this=0xe2cbd0, mask=0, region=..., data=...) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/effects.cpp:254
#21 0x00007f8a52f9dec8 in KWin::Scene::paintScreen (this=0xb82090, mask=0x7fffa6704954, region=0x7fffa6704a00) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene.cpp:140
#22 0x00007f8a52fac45e in KWin::SceneOpenGL::paint (this=0xb82090, damage=..., toplevels=<optimized out>) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/scene_opengl.cpp:308
#23 0x00007f8a52f9875c in KWin::Compositor::performCompositing (this=0xb27a80) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/composite.cpp:610
#24 0x00007f8a52f99210 in KWin::Compositor::slotCompositingOptionsInitialized (this=0xb27a80) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/composite.cpp:275
#25 0x00007f8a52f997ca in setup (this=0xb27a80) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/composite.cpp:168
#26 KWin::Compositor::setup (this=0xb27a80) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/composite.cpp:143
#27 0x00007f8a4df0036e in QObject::event (this=0xb27a80, e=<optimized out>) at kernel/qobject.cpp:1194
#28 0x00007f8a4cfc9021 in QApplicationPrivate::notify_helper (this=0x9b14d0, receiver=0xb27a80, e=0xb28990) at kernel/qapplication.cpp:4562
#29 0x00007f8a4cfce0f9 in QApplication::notify (this=0x7fffa6705970, receiver=0xb27a80, e=0xb28990) at kernel/qapplication.cpp:4423
#30 0x00007f8a52725246 in KApplication::notify (this=0x7fffa6705970, receiver=0xb27a80, event=0xb28990) at /chakra/desktop-unstable/kdelibs/src/kdelibs-4.9.97/kdeui/kernel/kapplication.cpp:311
#31 0x00007f8a4dee97ee in QCoreApplication::notifyInternal (this=0x7fffa6705970, receiver=0xb27a80, event=0xb28990) at kernel/qcoreapplication.cpp:946
#32 0x00007f8a4deed198 in sendEvent (event=0xb28990, receiver=0xb27a80) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#33 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x90c1f0) at kernel/qcoreapplication.cpp:1570
#34 0x00007f8a4d077159 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#35 QEventDispatcherX11::processEvents (this=0x90dad0, flags=...) at kernel/qeventdispatcher_x11.cpp:75
#36 0x00007f8a4dee7d2f in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#37 0x00007f8a4dee7f88 in QEventLoop::exec (this=0x7fffa6705680, flags=...) at kernel/qeventloop.cpp:204
#38 0x00007f8a4deed5a8 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#39 0x00007f8a52f4fcfa in kdemain (argc=3, argv=0x7fffa6705ab8) at /chakra/desktop-unstable/kde-workspace/src/kde-workspace-4.9.97/kwin/main.cpp:537
#40 0x00007f8a52b6b455 in __libc_start_main () from /lib/libc.so.6
#41 0x0000000000400661 in _start ()

Reported using DrKonqi
Comment 1 Fabian 2013-01-13 16:04:53 UTC
My setup: -Qt 4.8.4 
                 -Xorg server 1.12.3 using the i915 driver 
                 - mesa 8.0.4
Actually reading the backtrace and seeing that the crash happens in /usr/lib/libEGL.so.1 it is probably not related to my kwin crash and the issue is probably driver related.
Comment 2 Martin Flöser 2013-01-13 16:15:32 UTC
if there is no specific reason why you use kwin_gles I would recommend to run the "normal" KWin. Also I would recomment to update Mesa.
Comment 3 Thomas Lübking 2013-01-13 16:16:27 UTC
The crash is in the driver, induced by some kwin opengl/egl call.

The freeze (including the pointer stall) points some i/o issue from the (xf86-intel or the kernel module) pot. accessing some on-disk cache and thus causing invalid data access in mesa.

I think there was a mentione about such i/o error on the Xorg mailing list resp. a release note, but would have to look that up.

In that case you'd observe such stalls more regular (once a day or week, depending on how excessively you use the machine) but not necessarily a crash.

Anyway, eglCreateImageKHR may yell an "wrong parameter, stupid programmer!" error, but not crash - thus it's a driver bug