Bug 345932 - kwin crash
Summary: kwin crash
Status: RESOLVED UPSTREAM
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: 5.2.2
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-04-06 23:27 UTC by clickwir631
Modified: 2015-04-16 20:14 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:
thomas.luebking: Catalyst+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description clickwir631 2015-04-06 23:27:10 UTC
Application: kwin_x11 (5.2.2)

Qt Version: 5.4.1
Operating System: Linux 3.19.0-12-generic x86_64
Distribution: Ubuntu Vivid Vervet (development branch)

-- Information about the crash:
- What I was doing when the application crashed:
Launching a game of Team Fortress 2. Waiting for it to load. Had selected options and chose to start playing, last step before actually playing. While loading, kwin crashed.

-- 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 0x7f378cc50800 (LWP 1983))]

Thread 4 (Thread 0x7f3767db7700 (LWP 2011)):
#0  0x00007f378aca39ca in testAndSetRelaxed<QMutexData*> (currentValue=<synthetic pointer>, newValue=0x1, expectedValue=0x0, _q_value=@0x280b1e8: 0x1) at ../../include/QtCore/../../src/corelib/arch/qatomic_x86.h:259
#1  testAndSetAcquire<QMutexData*, QMutexData*> (currentValue=<synthetic pointer>, newValue=0x1, expectedValue=0x0, _q_value=@0x280b1e8: 0x1) at ../../include/QtCore/../../src/corelib/thread/qgenericatomic.h:166
#2  testAndSetAcquire (currentValue=<synthetic pointer>, newValue=0x1, expectedValue=0x0, this=this@entry=0x280b1e8) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:270
#3  fastTryLock (current=<synthetic pointer>, this=this@entry=0x280b1e8) at thread/qmutex.h:82
#4  QMutex::lock (this=this@entry=0x280b1e8) at thread/qmutex.cpp:212
#5  0x00007f378aeebb6c in QMutexLocker (m=0x280b1e8, this=<synthetic pointer>) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:128
#6  QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x280b1c0) at kernel/qcoreapplication.cpp:1429
#7  0x00007f378af40112 in QEventDispatcherUNIX::processEvents (this=0x7f37600008c0, flags=...) at kernel/qeventdispatcher_unix.cpp:579
#8  0x00007f378aee73e2 in QEventLoop::exec (this=this@entry=0x7f3767db6da0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#9  0x00007f378aca6b44 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:503
#10 0x00007f3784ac9f45 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#11 0x00007f378acabb0e in QThreadPrivate::start (arg=0x280b080) at thread/qthread_unix.cpp:337
#12 0x00007f3783c8f6aa in start_thread (arg=0x7f3767db7700) at pthread_create.c:333
#13 0x00007f378c716eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f375d8d7700 (LWP 2042)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f3789a9d644 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#2  0x00007f3789a9d689 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#3  0x00007f3783c8f6aa in start_thread (arg=0x7f375d8d7700) at pthread_create.c:333
#4  0x00007f378c716eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f36d2697700 (LWP 2384)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f378acacc6b in wait (time=18446744073709551615, this=0x30f6f20) at thread/qwaitcondition_unix.cpp:128
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x30f8610, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:200
#3  0x00007f3789d2afab in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#4  0x00007f3789d2b3a0 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007f378acabb0e in QThreadPrivate::start (arg=0x30f8590) at thread/qthread_unix.cpp:337
#6  0x00007f3783c8f6aa in start_thread (arg=0x7f36d2697700) at pthread_create.c:333
#7  0x00007f378c716eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f378cc50800 (LWP 1983)):
[KCrash Handler]
#6  0x00007f376524761f in ?? () from /usr/lib/dri/fglrx_dri.so
#7  0x00007f3764939049 in ?? () from /usr/lib/dri/fglrx_dri.so
#8  0x00007f37649392d2 in ?? () from /usr/lib/dri/fglrx_dri.so
#9  0x00007f3764d669c3 in ?? () from /usr/lib/dri/fglrx_dri.so
#10 0x00007f3789fd081e in KWin::BlurEffect::doCachedBlur (this=0x2d7e870, w=0x7f378304a280 <glCopyTexSubImage2D>, region=..., opacity=9.14767638e-41) at ../../effects/blur/blur.cpp:591
#11 0x00007f3789fd14e1 in KWin::BlurEffect::drawWindow (this=this@entry=0x2d7e870, w=w@entry=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../../effects/blur/blur.cpp:407
#12 0x00007f378c2f10d1 in KWin::EffectsHandlerImpl::drawWindow (this=0x2d46aa0, w=w@entry=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../effects.cpp:470
#13 0x00007f378c2ba841 in KWin::Scene::finalPaintWindow (this=<optimized out>, w=w@entry=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../scene.cpp:605
#14 0x00007f378c2f0f7a in KWin::EffectsHandlerImpl::paintWindow (this=0x2d46aa0, w=w@entry=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../effects.cpp:436
#15 0x00007f378a4ae651 in KWin::Effect::paintWindow (this=this@entry=0x2d7d7b0, w=w@entry=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../../libkwineffects/kwineffects.cpp:550
#16 0x00007f378c2f0f21 in KWin::EffectsHandlerImpl::paintWindow (this=0x2d46aa0, w=w@entry=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../effects.cpp:433
#17 0x00007f378a4ae651 in KWin::Effect::paintWindow (this=this@entry=0x2d7e870, w=w@entry=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../../libkwineffects/kwineffects.cpp:550
#18 0x00007f378c2f0f21 in KWin::EffectsHandlerImpl::paintWindow (this=0x2d46aa0, w=0x2f17040, mask=mask@entry=10, region=..., data=...) at ../effects.cpp:433
#19 0x00007f378c2beee8 in KWin::Scene::paintWindow (this=this@entry=0x2d26ed0, w=0x2ebb7f0, mask=10, region=..., quads=...) at ../scene.cpp:477
#20 0x00007f378c2bcc0e in KWin::Scene::paintSimpleScreen (this=this@entry=0x2d26ed0, orig_mask=orig_mask@entry=8, region=...) at ../scene.cpp:380
#21 0x00007f378c2cd513 in KWin::SceneOpenGL2::paintSimpleScreen (this=this@entry=0x2d26ed0, mask=mask@entry=8, region=...) at ../scene_opengl.cpp:1005
#22 0x00007f378c2ba205 in KWin::Scene::finalPaintScreen (this=0x2d26ed0, mask=mask@entry=8, region=..., data=...) at ../scene.cpp:199
#23 0x00007f378c2f0cff in KWin::EffectsHandlerImpl::paintScreen (this=0x2d46aa0, mask=mask@entry=8, region=..., data=...) at ../effects.cpp:393
#24 0x00007f378a4ae57f in KWin::Effect::paintScreen (this=this@entry=0x2d7d7b0, mask=mask@entry=8, region=..., data=...) at ../../libkwineffects/kwineffects.cpp:535
#25 0x00007f378c2f0cad in KWin::EffectsHandlerImpl::paintScreen (this=0x2d46aa0, mask=mask@entry=8, region=..., data=...) at ../effects.cpp:390
#26 0x00007f378a4ae57f in KWin::Effect::paintScreen (this=this@entry=0x2d7e870, mask=mask@entry=8, region=..., data=...) at ../../libkwineffects/kwineffects.cpp:535
#27 0x00007f378c2f0cad in KWin::EffectsHandlerImpl::paintScreen (this=0x2d46aa0, mask=8, region=..., data=...) at ../effects.cpp:390
#28 0x00007f378c2b9e6a in KWin::Scene::paintScreen (this=this@entry=0x2d26ed0, mask=mask@entry=0x7fffc8ed1b5c, damage=..., repaint=..., updateRegion=updateRegion@entry=0x7fffc8ed1b70, validRegion=validRegion@entry=0x7fffc8ed1b80) at ../scene.cpp:149
#29 0x00007f378c2d3da7 in KWin::SceneOpenGL::paint (this=0x2d26ed0, damage=..., toplevels=...) at ../scene_opengl.cpp:651
#30 0x00007f378c2b3973 in KWin::Compositor::performCompositing (this=0x26f5910) at ../composite.cpp:658
#31 0x00007f378af1b6f3 in QObject::event (this=0x26f5910, e=<optimized out>) at kernel/qobject.cpp:1267
#32 0x00007f378b7fbb2c in QApplicationPrivate::notify_helper (this=0x261dbf0, receiver=0x26f5910, e=0x7fffc8ed1f90) at kernel/qapplication.cpp:3720
#33 0x00007f378b801000 in QApplication::notify (this=0x7fffc8ed21d0, receiver=0x26f5910, e=0x7fffc8ed1f90) at kernel/qapplication.cpp:3503
#34 0x00007f378aee9c2b in QCoreApplication::notifyInternal (this=0x7fffc8ed21d0, receiver=0x26f5910, event=event@entry=0x7fffc8ed1f90) at kernel/qcoreapplication.cpp:935
#35 0x00007f378af41ae5 in sendEvent (event=0x7fffc8ed1f90, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
#36 QTimerInfoList::activateTimers (this=0x2652bf8) at kernel/qtimerinfo_unix.cpp:635
#37 0x00007f378af3f6a0 in QEventDispatcherUNIX::activateTimers (this=this@entry=0x265d2b0) at kernel/qeventdispatcher_unix.cpp:549
#38 0x00007f378af40243 in QEventDispatcherUNIX::processEvents (this=0x265d2b0, flags=flags@entry=...) at kernel/qeventdispatcher_unix.cpp:611
#39 0x00007f3778c8996d in QUnixEventDispatcherQPA::processEvents (this=<optimized out>, flags=...) at eventdispatchers/qunixeventdispatcher.cpp:62
#40 0x00007f378aee73e2 in QEventLoop::exec (this=this@entry=0x7fffc8ed20f0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#41 0x00007f378aeef02c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1188
#42 0x00007f378b23331c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1510
#43 0x00007f378b7f77a5 in QApplication::exec () at kernel/qapplication.cpp:2956
#44 0x00007f378c9e48c3 in kdemain (argc=1, argv=0x7fffc8ed2328) at ../main_x11.cpp:294
#45 0x00007f378c630a40 in __libc_start_main (main=0x400790 <main(int, char**)>, argc=1, argv=0x7fffc8ed2328, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffc8ed2318) at libc-start.c:289
#46 0x00000000004007c9 in _start ()

Reported using DrKonqi
Comment 1 Thomas Lübking 2015-04-16 20:14:06 UTC
call is "glCopyTexSubImage2D", but crashes deep in the fglrx blob - if you can reproduce this and want to investigate further and fglrx provides debug symbols (*-dev package?), you should install them.

It's however a driver bug (most likely, unless there's some memory corruption)