After last git pull, there are no decorations visible. You can still drag windows by clicking on decos, as you can minimize, maximize, and close windows. *Also, after several kwn --replace(s), decos show up (!?), but it's slow as hell, and it drains the CPU terribly. At that point, if you kill compositing (Ctrl+Shift+F12), again, there's no decos. Reproducible: Always Steps to Reproduce: 1. Compile latest kde-workspace, git master 2. re-login Actual Results: No decos visible. Tried oxygen, aurorae, plastik(-qml), bespin Expected Results: Should see decorations. How it looks: http://i.imgur.com/C2uMn.png qdbus org.kde.kwin /KWin supportInformation: http://paste.kde.org/540170/ This behaviour is true with compositing turned on and off. Also, effects are muuuch slower (can't be sure this is related to this bug). *Output of kwin --replace: http://paste.kde.org/540176/
I did quite some pushes yesterday. Please tell me which git commit you are using, if it is not the latest, please try the latest one. Please do a clean build (might be some issue related to that). I will have a look into it once I'm back home (three hours from now).
No hurry :) It's a pull from today, so, latest. Full build-log: https://build.opensuse.org/package/rawlog?arch=x86_64&package=kdebase4-workspace&project=home%3Asumski%3AKDE%3AUnstable%3ASC&repository=home_sumski_KDE_QT_openSUSE_12.2_Update_standard
Without compositing: http://i.imgur.com/ZUwEa.png http://i.imgur.com/4wYFm.png http://paste.kde.org/540194/
for the record, happening for me too
bad, bad, bad. I just recompiled from master, restarted and have decorations... will investigate
important progress. I just caught an exception in the decoration rendering code.
this seems to be somewhat related to graphicssystem specific code. Running in graphicssystem native seems to not trigger the exception, but it looks quite broken using Aurorae seems also to be more secure.
found the bad commit, will now work on identifying the exact issue (had been running the code for days without issues) - most likely a wrong merge fix yesterday during rebase.
During several kwin --replaces (experimenting with decos and graphicssystems) i managed to crash it: Application: KWin (kwin), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7fb1c4105780 (LWP 18428))] Thread 2 (Thread 0x7fb1aaf65700 (LWP 18430)): #0 0x00007fb1bf2428f4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007fb1c082ebd7 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x7fb1c0b3c640 <QTWTF::pageheap_memory>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359 #2 0x00007fb1c082ec09 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464 #3 0x00007fb1bf23ee0e in start_thread () from /lib64/libpthread.so.0 #4 0x00007fb1c393a2bd in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7fb1c4105780 (LWP 18428)): [KCrash Handler] #6 KWin::Compositor::setCompositeTimer (this=0x159d350) at /usr/src/debug/kde-workspace-git/kwin/composite.cpp:537 #7 0x00007fb1c3c51cc7 in KWin::Client::releaseWindow (this=0x1640b60, on_shutdown=true) at /usr/src/debug/kde-workspace-git/kwin/client.cpp:256 #8 0x00007fb1c3c41793 in KWin::Workspace::~Workspace (this=0x14d3560, __in_chrg=<optimized out>) at /usr/src/debug/kde-workspace-git/kwin/workspace.cpp:496 #9 0x00007fb1c3c41ea9 in KWin::Workspace::~Workspace (this=0x14d3560, __in_chrg=<optimized out>) at /usr/src/debug/kde-workspace-git/kwin/workspace.cpp:530 #10 0x00007fb1c3c5e967 in KWin::Application::lostSelection (this=0x7fff4f2a66d0) at /usr/src/debug/kde-workspace-git/kwin/main.cpp:354 #11 0x00007fb1bf5e59bf in QMetaObject::activate (sender=0x7fff4f2a66e8, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3556 #12 0x00007fb1c349a523 in KSelectionOwner::filterEvent (this=0x7fff4f2a66e8, ev_P=<optimized out>) at /usr/src/debug/kdelibs-git/kdeui/util/kmanagerselection.cpp:224 #13 0x00007fb1c3439ace in publicx11Event (e=<optimized out>, this=<optimized out>) at /usr/src/debug/kdelibs-git/kdeui/kernel/kapplication.cpp:918 #14 KApplication::x11EventFilter (this=0x159d350, _event=0x7fff4f2a6170) at /usr/src/debug/kdelibs-git/kdeui/kernel/kapplication.cpp:930 #15 0x00007fb1be7c880c in qt_x11EventFilter (ev=0x7fff4f2a6170) at kernel/qapplication_x11.cpp:435 #16 qt_x11EventFilter (ev=0x7fff4f2a6170) at kernel/qapplication_x11.cpp:423 #17 0x00007fb1be7d5dcb in QApplication::x11ProcessEvent (this=0x7fff4f2a66d0, event=0x7fff4f2a6170) at kernel/qapplication_x11.cpp:3348 #18 0x00007fb1be7fd509 in QEventDispatcherX11::processEvents (this=0x127ea70, flags=...) at kernel/qeventdispatcher_x11.cpp:132 #19 0x00007fb1bf5cde7f in QEventLoop::processEvents (this=this@entry=0x7fff4f2a63e0, flags=...) at kernel/qeventloop.cpp:149 #20 0x00007fb1bf5ce108 in QEventLoop::exec (this=0x7fff4f2a63e0, flags=...) at kernel/qeventloop.cpp:204 #21 0x00007fb1bf5d2da8 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187 #22 0x00007fb1c3c5fab4 in kdemain (argc=4, argv=0x7fff4f2a6818) at /usr/src/debug/kde-workspace-git/kwin/main.cpp:545 #23 0x00007fb1c3877455 in __libc_start_main () from /lib64/libc.so.6 #24 0x0000000000400721 in _start () at ../sysdeps/x86_64/elf/start.S:113
Got a better(?) crash: Application: KWin (kwin), signal: Segmentation fault Using host libthread_db library "/lib/libthread_db.so.1". [KCrash Handler] #6 0xb57ce695 in QRegion::operator+=(QRect const&) () from /lib/libQtGui.so.4 #7 0xb764fc27 in KWin::Compositor::addRepaint (this=0x9fab798, r=...) at /home/src/KDE4/kde-workspace/kwin/composite.cpp:430 #8 0xb75f0bb6 in KWin::Client::updateShape (this=0xa067e28) at /home/src/KDE4/kde-workspace/kwin/client.cpp:842 #9 0xb75ef73a in KWin::Client::setMask (this=this@entry=0xa067e28, reg=..., mode=mode@entry=0) at /home/src/KDE4/kde-workspace/kwin/client.cpp:921 #10 0xb75ef8e6 in KWin::Client::destroyDecoration (this=this@entry=0xa067e28) at /home/src/KDE4/kde-workspace/kwin/client.cpp:442 #11 0xb75f017a in KWin::Client::releaseWindow (this=0xa067e28, on_shutdown=true) at /home/src/KDE4/kde-workspace/kwin/client.cpp:270 #12 0xb75de0b4 in KWin::Workspace::~Workspace (this=0x9f6a190, __in_chrg=<optimized out>) at /home/src/KDE4/kde-workspace/kwin/workspace.cpp:496 #13 0xb75de812 in KWin::Workspace::~Workspace (this=0x9f6a190, __in_chrg=<optimized out>) at /home/src/KDE4/kde-workspace/kwin/workspace.cpp:530 #14 0xb75feae8 in KWin::Application::lostSelection (this=0xbfebcea8) at /home/src/KDE4/kde-workspace/kwin/main.cpp:354 #15 0xb6148e86 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /lib/libQtCore.so.4 #16 0xb684a595 in KSelectionOwner::lostOwnership() () from /lib/libkdeui.so.5 #17 0xb684a71e in KSelectionOwner::filterEvent(_XEvent*) () from /lib/libkdeui.so.5 #18 0xb684af06 in ?? () from /lib/libkdeui.so.5 #19 0xb67d9c23 in KApplication::x11EventFilter(_XEvent*) () from /lib/libkdeui.so.5 #20 0xb75fd4c6 in x11EventFilter (e=0xbfebcb9c, this=0xbfebcea8) at /home/src/KDE4/kde-workspace/kwin/main.cpp:364 #21 KWin::Application::x11EventFilter (this=0xbfebcea8, e=0xbfebcb9c) at /home/src/KDE4/kde-workspace/kwin/main.cpp:360 #22 0xb56872e6 in ?? () from /lib/libQtGui.so.4 #23 0xb5696192 in QApplication::x11ProcessEvent(_XEvent*) () from /lib/libQtGui.so.4 #24 0xb56c0efd in ?? () from /lib/libQtGui.so.4 #25 0xb612f6ec in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4 #26 0xb612f9e1 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4 #27 0xb6134c7a in QCoreApplication::exec() () from /lib/libQtCore.so.4 #28 0xb560cde4 in QApplication::exec() () from /lib/libQtGui.so.4 #29 0xb75ffd49 in kdemain (argc=2, argv=0xbfebcf94) at /home/src/KDE4/kde-workspace/kwin/main.cpp:545 #30 0x0804873b in main (argc=2, argv=0xbfebcf94) at /home/src/KDE4/BUILD_stable/workspace/kwin/kwin_dummy.cpp:3 This is with xrender on the native graphicssystem. The behavior is somewhat unpredictable and "stunningly" running it in gdb, everything was fine
one issue I figured out so far is that I added a logic error in the Paintredirector. But it does not fix the issue.
and a worse one: Application: KWin (kwin), signal: Aborted Using host libthread_db library "/lib/libthread_db.so.1". [Current thread is 1 (Thread 0xafa9f740 (LWP 32178))] Thread 3 (Thread 0xad1edb40 (LWP 32183)): #0 0xb7728424 in __kernel_vsyscall () #1 0xb5fb5ba3 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0xb602eb7d in QWaitCondition::wait(QMutex*, unsigned long) () from /lib/libQtCore.so.4 #3 0xb602148c in ?? () from /lib/libQtCore.so.4 #4 0xb602e690 in ?? () from /lib/libQtCore.so.4 #5 0xb54400e1 in ?? () from /lib/libGL.so.1 #6 0x5c8b0824 in ?? () #7 0xbab80424 in ?? () #8 0x65000000 in ?? () #9 0x001015ff in ?? () #10 0xd3890000 in ?? () #11 0xfff0013d in ?? () #12 0xc30173ff in ?? () #13 0x0f4c72e8 in ?? () #14 0xafc18100 in ?? () from /lib/libvorbisenc.so.2 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 2 (Thread 0xabc24b40 (LWP 32192)): #0 0xb7728424 in __kernel_vsyscall () #1 0xb5fb5ba3 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0xb602eb7d in QWaitCondition::wait(QMutex*, unsigned long) () from /lib/libQtCore.so.4 #3 0xb602148c in ?? () from /lib/libQtCore.so.4 #4 0xb602e690 in ?? () from /lib/libQtCore.so.4 #5 0xb54400e1 in ?? () from /lib/libGL.so.1 #6 0x5c8b0824 in ?? () #7 0xbab80424 in ?? () #8 0x65000000 in ?? () #9 0x001015ff in ?? () #10 0xd3890000 in ?? () #11 0xfff0013d in ?? () #12 0xc30173ff in ?? () #13 0x0f4c72e8 in ?? () #14 0xafc18100 in ?? () from /lib/libvorbisenc.so.2 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 1 (Thread 0xafa9f740 (LWP 32178)): [KCrash Handler] #6 0xb7728424 in __kernel_vsyscall () #7 0xb50ef5df in raise () from /lib/libc.so.6 #8 0xb50f0ec3 in abort () from /lib/libc.so.6 #9 0xb531064d in __gnu_cxx::__verbose_terminate_handler() () from /lib/libstdc++.so.6 #10 0xb530e2a3 in ?? () from /lib/libstdc++.so.6 #11 0xb530e2df in std::terminate() () from /lib/libstdc++.so.6 #12 0xb530e5d5 in __cxa_rethrow () from /lib/libstdc++.so.6 #13 0xb613ec67 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4 #14 0xb6143c7a in QCoreApplication::exec() () from /lib/libQtCore.so.4 #15 0xb561bde4 in QApplication::exec() () from /lib/libQtGui.so.4 #16 0xb760ed59 in kdemain (argc=2, argv=0xbf8b2e04) at /home/src/KDE4/kde-workspace/kwin/main.cpp:545 #17 0x0804873b in main (argc=2, argv=0xbf8b2e04) at /home/src/KDE4/BUILD_stable/workspace/kwin/kwin_dummy.cpp:3 Heap/Stack corruption?
the m_compositor field is not set and there're threads. It's also not nulled with the workspace - and there are threads. Checking.
No, but a new backtrace: Application: KWin (kwin), signal: Segmentation fault Using host libthread_db library "/lib/libthread_db.so.1". [Current thread is 1 (Thread 0xafb05740 (LWP 2835))] Thread 3 (Thread 0xad23db40 (LWP 2841)): #0 0xb778e424 in __kernel_vsyscall () #1 0xb601bba3 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0xb6094b7d in QWaitCondition::wait(QMutex*, unsigned long) () from /lib/libQtCore.so.4 #3 0xb608748c in ?? () from /lib/libQtCore.so.4 #4 0xb6094690 in ?? () from /lib/libQtCore.so.4 #5 0xb54a60e1 in ?? () from /lib/libGL.so.1 #6 0x5c8b0824 in ?? () #7 0xbab80424 in ?? () #8 0x65000000 in ?? () #9 0x001015ff in ?? () #10 0xd3890000 in ?? () #11 0xfff0013d in ?? () #12 0xc30173ff in ?? () #13 0x0f4c72e8 in ?? () #14 0xafc18100 in ?? () from /lib/libvorbisenc.so.2 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 2 (Thread 0xabd24b40 (LWP 2849)): #0 0xb778e424 in __kernel_vsyscall () #1 0xb601bba3 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #2 0xb6094b7d in QWaitCondition::wait(QMutex*, unsigned long) () from /lib/libQtCore.so.4 #3 0xb608748c in ?? () from /lib/libQtCore.so.4 #4 0xb6094690 in ?? () from /lib/libQtCore.so.4 #5 0xb54a60e1 in ?? () from /lib/libGL.so.1 #6 0x5c8b0824 in ?? () #7 0xbab80424 in ?? () #8 0x65000000 in ?? () #9 0x001015ff in ?? () #10 0xd3890000 in ?? () #11 0xfff0013d in ?? () #12 0xc30173ff in ?? () #13 0x0f4c72e8 in ?? () #14 0xafc18100 in ?? () from /lib/libvorbisenc.so.2 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 1 (Thread 0xafb05740 (LWP 2835)): [KCrash Handler] #6 0xb76dc752 in KWin::SceneOpenGL::Texture::load (this=this@entry=0xa24ff80, pix=@0xbfde1d68: 77597737, size=..., depth=depth@entry=163930696, region=...) at /home/src/KDE4/kde-workspace/kwin/scene_opengl_glx.cpp:708 #7 0xb76da15a in load (depth=163930696, size=..., pix=@0xbfde1d68: 77597737, this=0xa24ff80) at /home/src/KDE4/kde-workspace/kwin/scene_opengl.cpp:317 #8 KWin::SceneOpenGL::Texture::load (this=this@entry=0xa24ff80, pix=@0xbfde1d68: 77597737, size=..., depth=163930696) at /home/src/KDE4/kde-workspace/kwin/scene_opengl.cpp:311 #9 0xb76da20c in KWin::SceneOpenGL::Texture::load (this=0xa24ff80, pixmap=..., target=3553) at /home/src/KDE4/kde-workspace/kwin/scene_opengl.cpp:338 #10 0xb76e1fa4 in KWin::SceneOpenGL::Window::paintDecoration (this=this@entry=0xa24ff48, decoration=decoration@entry=0xa0bc7e8, decorationType=decorationType@entry=KWin::SceneOpenGL::Window::DecorationRight, region=..., rect=..., data=..., quads=..., updateDeco=updateDeco@entry=true, hardwareClipping=hardwareClipping@entry=false) at /home/src/KDE4/kde-workspace/kwin/scene_opengl.cpp:629 #11 0xb76e5567 in KWin::SceneOpenGL::Window::performPaint (this=0xa24ff48, mask=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/scene_opengl.cpp:570 #12 0xb76cde65 in KWin::Scene::finalDrawWindow (this=0xa04ff50, w=0xa2475e8, mask=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/scene.cpp:448 #13 0xb76f16d3 in KWin::EffectsHandlerImpl::drawWindow (this=0xa2306f0, w=w@entry=0xa2475e8, mask=mask@entry=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/effects.cpp:311 #14 0xb6ab10c2 in KWin::Effect::drawWindow (this=0xa46c2a0, w=0xa2475e8, mask=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/libkwineffects/kwineffects.cpp:516 #15 0xb76f1673 in KWin::EffectsHandlerImpl::drawWindow (this=0xa2306f0, w=w@entry=0xa2475e8, mask=mask@entry=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/effects.cpp:308 #16 0xb76cdc32 in KWin::Scene::finalPaintWindow (this=0xa04ff50, w=0xa2475e8, mask=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/scene.cpp:433 #17 0xb76f1ae3 in KWin::EffectsHandlerImpl::paintWindow (this=0xa2306f0, w=w@entry=0xa2475e8, mask=mask@entry=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/effects.cpp:274 #18 0xb6ab11e2 in KWin::Effect::paintWindow (this=0xa46c2a0, w=0xa2475e8, mask=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/libkwineffects/kwineffects.cpp:491 #19 0xb76f1a83 in KWin::EffectsHandlerImpl::paintWindow (this=0xa2306f0, w=0xa2475e8, mask=mask@entry=9, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/effects.cpp:271 #20 0xb76d0f40 in KWin::Scene::paintWindow (this=this@entry=0xa04ff50, w=0xa24ff48, mask=9, region=..., quads=...) at /home/src/KDE4/kde-workspace/kwin/scene.cpp:347 #21 0xb76d0136 in KWin::Scene::paintSimpleScreen (this=this@entry=0xa04ff50, orig_mask=orig_mask@entry=8, region=...) at /home/src/KDE4/kde-workspace/kwin/scene.cpp:333 #22 0xb76cdb73 in KWin::Scene::finalPaintScreen (this=0xa04ff50, mask=8, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/scene.cpp:191 #23 0xb76f1813 in KWin::EffectsHandlerImpl::paintScreen (this=0xa2306f0, mask=8, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/effects.cpp:247 #24 0xa8257421 in ?? () from /usr/lib/kde4/kwin4_effect_beclock.so #25 0xb76f17bb in KWin::EffectsHandlerImpl::paintScreen (this=0xa2306f0, mask=8, region=..., data=...) at /home/src/KDE4/kde-workspace/kwin/effects.cpp:244 #26 0xb76cf3fe in KWin::Scene::paintScreen (this=0xa04ff50, mask=0xbfde28fc, region=0xbfde2968) at /home/src/KDE4/kde-workspace/kwin/scene.cpp:145 #27 0xb76e6ace in KWin::SceneOpenGL::paint (this=0xa04ff50, damage=..., toplevels=...) at /home/src/KDE4/kde-workspace/kwin/scene_opengl_glx.cpp:481 #28 0xb76c74d8 in KWin::Compositor::performCompositing (this=0x9f59570) at /home/src/KDE4/kde-workspace/kwin/composite.cpp:502 #29 0xb61bbce4 in QObject::event(QEvent*) () from /lib/libQtCore.so.4 #30 0xb5683f5c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/libQtGui.so.4 #31 0xb568895f in QApplication::notify(QObject*, QEvent*) () from /lib/libQtGui.so.4 #32 0xb684bc61 in KApplication::notify(QObject*, QEvent*) () from /lib/libkdeui.so.5 #33 0xb767248f in notify (e=0xbfde2e60, o=0x9f59570, this=0xbfde3228) at /home/src/KDE4/kde-workspace/kwin/main.cpp:371 #34 KWin::Application::notify (this=0xbfde3228, o=0x9f59570, e=0xbfde2e60) at /home/src/KDE4/kde-workspace/kwin/main.cpp:367 #35 0xb61a5c0e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /lib/libQtCore.so.4 #36 0xb61da320 in ?? () from /lib/libQtCore.so.4 #37 0xb61da518 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4 #38 0xb5735f73 in ?? () from /lib/libQtGui.so.4 #39 0xb61a46ec in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4 #40 0xb61a49e1 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4 #41 0xb61a9c7a in QCoreApplication::exec() () from /lib/libQtCore.so.4 #42 0xb5681de4 in QApplication::exec() () from /lib/libQtGui.so.4 #43 0xb7674d69 in kdemain (argc=3, argv=0xbfde3314) at /home/src/KDE4/kde-workspace/kwin/main.cpp:545 #44 0x0804873b in main (argc=3, argv=0xbfde3314) at /home/src/KDE4/BUILD_stable/workspace/kwin/kwin_dummy.cpp:3
Which is the evil one?
f************************ck can confirm that nulling the m_compositor fixes the issue. Though (threads aside) I don't understand it as the compositor is still created before the window manager is started.
Not entirely - not here. I still get crashrestarts all over the place and no sane titlebar. (i wish it was that easy and the stupid painRedirector [sic!] took the rest)
with graphicssystem native I still do not have decorations...
No, wait! Crashes *are* gone. There was a zombie kwin process and after killing that the nulled one does no longer crash. Sorry. Now get me back my titlebar! Now! ;-)
I have it back when using Aurorae
Created attachment 73509 [details] Current patch to fix the crashes This should fix: * uninitialized access to m_compositor * unintialized access in dtor * logic error in paint redirector
right now, i'm back at the rethrows with the painRedirector patch and compositing enabled. compositing disabled now works reliably (surprise)
Created attachment 73510 [details] Better fix I'm now going to hide in my cave and will not leave it for at least a week
Created attachment 73511 [details] Even better fix removed not needed (added) include
this looks good now. I have decorations and no crashes with: * kwin + raster * kwin + native * kwin_gles + raster * kwin_gles + native * xrender
if I get confirmation that it works, I'm going to push it :-)
With fix in attachment 73511 [details] i no longer have kwin-transparent! :-D Yes, it works, with(out) compositing, tested with aurorae, plastik (-qml), and plain oxygen ;-)
Git commit 28cdb8338a574a745e5701092f7d99b2245ece34 by Martin Gräßlin. Committed on 27/08/2012 at 19:45. Pushed by graesslin into branch 'master'. Fix uninitialized memory and logic error in PaintRedirector The refactoring of Compositor starting with b1739c3 caused some regressions due to variables in Workspace and Compositor not being initialized. Furthermore there was a boolean logic error in PaintRedirector causing the decorations not to paint. M +7 -0 kwin/composite.cpp M +1 -1 kwin/paintredirector.cpp M +2 -0 kwin/workspace.cpp http://commits.kde.org/kde-workspace/28cdb8338a574a745e5701092f7d99b2245ece34
thanks a lot for the help and sorry for the inconvenience - that should never happen that KWin is broken. Still don't understand why I have not seen this issue. Well to be true I had no window decorations once this weekend but worked on another refactoring branch building up on this one and thought it's there (which would not have been surprising as it slightly changed the deco painting).
I still got crashes (w/o stacktrace) when starting kwin w/ compositing enabled. Now trying updated master and relogin.
(In reply to comment #29) > thanks a lot for the help and sorry for the inconvenience - that should > never happen that KWin is broken. That's alright, you fixed it ASAP, so no big deal 2 further notes: a) clicking on menu button in decoration does not work (i can live with that) with Aurorae (did it worked before?) b) effects still seem a little less smoother then before (In reply to comment #30) > I still got crashes (w/o stacktrace) when starting kwin w/ compositing Same here, but only with bespin deco: kwin --replace Object::connect: No such signal OrgKdeActivityManagerActivitiesInterface::presenceChanged(bool) kwin(1150) KWin::Extensions::init: Extensions: shape: 0x "11" composite: 0x "4" render: 0x "b" fixes: 0x "50" non_native_pixmaps: true kwin(1150) KDecorationPlugins::canLoad: kwin : path "/usr/lib64/kde4/kwin3_bespin.so" for "kwin3_bespin" kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4294967295 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 41943596 ;WMCLASS: "plasma" : "plasma" ;Caption: "plasma-desktop" ' : 18446744073709551615 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4294967295 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 41943605 ;WMCLASS: "plasma" : "plasma" ;Caption: "plasma-desktop" ' : 18446744073709551615 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4294967295 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 41943614 ;WMCLASS: "plasma" : "plasma" ;Caption: "plasma-desktop" ' : 18446744073709551615 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 11563972 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 41943623 ;WMCLASS: "plasma" : "plasma" ;Caption: "plasma-desktop" ' : 11563972 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::checkActivities: no activities!?!? kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4294967295 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 60817430 ;WMCLASS: "dolphin" : "dolphin" ;Caption: "hrvoje – Dolphin" ' : 18446744073709551615 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 16869245 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 39846082 ;WMCLASS: "firefox" : "navigator" ;Caption: "Bug 305875 – Decorations not visible - Mozilla Firefox" ' : 16869245 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::checkActivities: no activities!?!? kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 16879931 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 37748757 ;WMCLASS: "systemsettings" : "systemsettings" ;Caption: "Window Decorations – System Settings" ' : 16879931 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 16892808 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 27263203 ;WMCLASS: "konsole" : "konsole" ;Caption: "~ : bash – Konsole" ' : 16892808 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 16895568 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 41943587 ;WMCLASS: "plasma" : "plasma" ;Caption: "plasma-desktop" ' : 16895568 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 16899690 kwin(1150) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 27263446 ;WMCLASS: "konsole" : "konsole" ;Caption: "~ : bash – Konsole <2>" ' : 16899690 kwin(1150) KWin::Workspace::allowClientActivation: Activation: No client active, allowing kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::Workspace::updateClientArea: screens: 1 desktops: 4 kwin(1150) KWin::Workspace::updateClientArea: Done. kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadAtom [5], request: X_GetSelectionOwner[23]" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadAtom [5], request: X_GetSelectionOwner[23]" ) kwin(1150)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from "/var/tmp/kdecache-hrvoje/ksycoca4" kwin(1150)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from "/var/tmp/kdecache-hrvoje/ksycoca4" kwin(1150) KActivities::ConsumerPrivateCommon::currentActivityCallFinished: "3ca93cd2-717b-481c-9c8c-e93446975b69" kwin(1150) KActivities::ConsumerPrivateCommon::listActivitiesCallFinished: ("155b6243-1db0-4f79-a186-c7e16406419b", "e6d3f1d9-ad6d-4bd4-ac1f-25c9f68ca4ea", "44fdbbe1-c91b-4658-af34-8d3a1476243a", "1ac5715a-c3c2-448b-b75c-009f6a5abdfd", "2389ed7e-cd47-40a5-905f-09258f0f0931", "3ca93cd2-717b-481c-9c8c-e93446975b69", "526e748e-a960-4e31-89f3-94c1be843c95") kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderComposite[RENDER+8], resource: 0x60000b8" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderComposite[RENDER+8], resource: 0x60000b8" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderComposite[RENDER+8], resource: 0x60000cf" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderComposite[RENDER+8], resource: 0x60000cf" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderComposite[RENDER+8], resource: 0x60000cf" ) kwin(1150) KWin::Workspace::slotReconfigure: Workspace::slotReconfigure() kwin(1150) KWin::Compositor::slotCompositingOptionsInitialized: Initializing OpenGL compositing kwin(1150) KWin::SceneOpenGL::initBufferConfigs: Drawable visual (depth 24 ): 0x "72" kwin(1150) KWin::SceneOpenGL::initBufferConfigs: Drawable visual (depth 32 ): 0x "a5" kwin(1150) KWin::SceneOpenGL::initBuffer: Buffer visual (depth 24 ): 0x "71" OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: ATI Mobility Radeon HD 3650 OpenGL version string: 2.1 (3.3.11653 Compatibility Profile Context) Driver: Catalyst Driver version: 2.1 GPU class: R600 OpenGL version: 2.1 X server version: 1.12.3 Linux kernel version: 3.4.9 Direct rendering: no Requires strict binding: yes GLSL shaders: no Texture NPOT support: yes NO VSYNC! glXGetVideoSync, glXSwapInterval, glXIsDirect false true 0 kwin(1150) KWin::SceneOpenGL::SceneOpenGL: DB: true , Direct: false kwin(1150) KWin::currentRefreshRate: Vertical Refresh rate 60 Hz kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadDrawable [9], request: X_GetGeometry[14], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadDrawable [9], request: RenderCreatePicture[RENDER+4], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderFreePicture[RENDER+7], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadDrawable [9], request: X_GetGeometry[14], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadDrawable [9], request: RenderCreatePicture[RENDER+4], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderFreePicture[RENDER+7], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadDrawable [9], request: X_GetGeometry[14], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadDrawable [9], request: RenderCreatePicture[RENDER+4], resource: 0x600003d" ) kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: RenderBadPicture [RENDER+1], request: RenderFreePicture[RENDER+7], resource: 0x600003d" ) kwin(1150): Shaders are not supported kwin(1150) KWin::ShaderManager::initShaders: Orho Shader is not valid kwin(1150)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from "/var/tmp/kdecache-hrvoje/ksycoca4" kwin(1150) KWin::x11ErrorHandler: kwin: X Error ( "error: BadAtom [5], request: X_GetSelectionOwner[23]" ) kwin: Fatal IO error: client killed QThreadStorage: Thread 0x25e1e40 exited after QThreadStorage 27 destroyed QThreadStorage: Thread 0x25e1e40 exited after QThreadStorage 26 destroyed QThreadStorage: Thread 0x25e1e40 exited after QThreadStorage 25 destroyed QThreadStorage: Thread 0x2289ad0 exited after QThreadStorage 27 destroyed QThreadStorage: Thread 0x2289ad0 exited after QThreadStorage 26 destroyed QThreadStorage: Thread 0x2289ad0 exited after QThreadStorage 25 destroyed
(In reply to comment #30) > I still got crashes (w/o stacktrace) when starting kwin w/ compositing > enabled. > Now trying updated master and relogin. I just started with KWIN_COMPOSE=N without any problems. > a) clicking on menu button in decoration does not work (i can live with > that) with Aurorae (did it worked before?) should not have changed, you have to long click or disable close on double click (this option is new since yesterday) > b) effects still seem a little less smoother then before there actually should not be any difference - at least I have not noticed anything yet :-)
> should not have changed, you have to long click or disable close on double > click (this option is new since yesterday) Yup, works > there actually should not be any difference - at least I have not noticed > anything yet :-) I'll leave it at this, for now :-)
After login first things worked. I altered backend and graphicssystem and when trying to move from XRender/Raster to XRender/Native (where i had been before) i got crash on any further attempt to start kwin. Then ran it through valgrind[1] and afterwards restarted (still XRender/Native) w/o problem. I'll check for Bespin (it uses native XRender Pictures and also tries to read from the paintredirector buffer) > I just started with KWIN_COMPOSE=N without any problems. WithOUT compositing has no longer been a problem once the painRedirector and m_compositor init were fixed. Trouble was (re)starting WITH compositing (and activating compositing after was fine as well -> threads ;-) Btw: > I'm now going to hide in my cave and will not leave it for at least a week Nix da, there's still a bunch of pending RRs for next Thursday :-P Resetting to fixed for the moment (who reopened it), but i've got an eye on you ;-)
Forgot valgrind snippet: ==306== Conditional jump or move depends on uninitialised value(s) ==306== at 0x59CFCA8: QPixmap::fill(QColor const&) (in /usr/lib/libQtGui.so.4.8.2) ==306== by 0x40985E8: KWin::Client::resizeDecorationPixmaps() [clone .part.49] (client.cpp:696) ==306== by 0x409948F: KWin::Client::resizeDecoration(QSize const&) (client.cpp:785) ==306== by 0x40E9653: KWin::Client::setGeometry(int, int, int, int, KWin::ForceGeometry_t) (geometry.cpp:1886) ==306== by 0x40EB6BD: KWin::Client::blockGeometryUpdates(bool) (client.h:1208) ==306== by 0x40A18B1: KWin::Client::updateDecoration(bool, bool) (client.cpp:428) ==306== by 0x410215A: KWin::Client::finishCompositing() (composite.cpp:1083) ==306== ==306== Syscall param writev(vector[...]) points to uninitialised byte(s) ==306== at 0x65D506B: writev (in /usr/lib/libc-2.16.so) ==306== by 0x9513CC5: ??? (in /usr/lib/libxcb.so.1.1.0) ==306== by 0xFFFFFFFE: ??? ==306== Address 0xc6d9d14 is 52 bytes inside a block of size 16,384 alloc'd ==306== at 0x402953B: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==306== by 0x48B5D06: XOpenDisplay (in /usr/lib/libX11.so.6.3.0) ==306== by 0x4C505F53: ??? ==306== ==306== Syscall param writev(vector[...]) points to uninitialised byte(s) ==306== at 0x65D506B: writev (in /usr/lib/libc-2.16.so) ==306== by 0x9513CC5: ??? (in /usr/lib/libxcb.so.1.1.0) ==306== by 0x5931583: QWidget::isActiveWindow() const (in /usr/lib/libQtGui.so.4.8.2) ==306== by 0x48C6467: _XSend (in /usr/lib/libX11.so.6.3.0) ==306== by 0x48C6A69: _XReply (in /usr/lib/libX11.so.6.3.0) ==306== by 0x48ABFB9: XGetWindowProperty (in /usr/lib/libX11.so.6.3.0) ==306== by 0x48AAC95: XGetWMHints (in /usr/lib/libX11.so.6.3.0) ==306== by 0x598B4A8: QWidgetPrivate::show_sys() (in /usr/lib/libQtGui.so.4.8.2) ==306== by 0x5945AFD: QWidgetPrivate::show_helper() (in /usr/lib/libQtGui.so.4.8.2) ==306== Address 0xc6d9d16 is 54 bytes inside a block of size 16,384 alloc'd ==306== at 0x402953B: calloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==306== by 0x48B5D06: XOpenDisplay (in /usr/lib/libX11.so.6.3.0) ==306== by 0x4C505F53: ??? ==306== ==306== Invalid read of size 4 ==306== at 0x4A2443D: XRenderFindDisplay (in /usr/lib/libXrender.so.1.3.0) ==306== by 0x4A22865: XRenderFreePicture (in /usr/lib/libXrender.so.1.3.0) ==306== by 0x4D1459B: KWin::XRenderPicture::~XRenderPicture() (kwinxrenderutils.h:97) ==306== by 0x65259A2: __cxa_finalize (in /usr/lib/libc-2.16.so) ==306== by 0x4CFF242: ??? (in /usr/lib/libkwineffects.so.1.0.0) ==306== by 0x400F74B: _dl_fini (in /usr/lib/ld-2.16.so) ==306== by 0x6525600: __run_exit_handlers (in /usr/lib/libc-2.16.so) ==306== by 0x652568C: exit (in /usr/lib/libc-2.16.so) ==306== by 0x650D60C: (below main) (in /usr/lib/libc-2.16.so) ==306== Address 0x88 is not stack'd, malloc'd or (recently) free'd
> Resetting to fixed for the moment (who reopened it), but i've got an eye on > you ;-) It seems i mistakenly changed it to reopened :-(, sorry for that.
working fine now. Yeehhaaawwww!
As long as such breakage is not going into release branches, there is no need to hide in a cave. Keep rocking :) With the number of different backtraces here, is anyone of them reproducible _after_ the commit that fixed this bug? If yes, maybe report them separately.
(In reply to comment #38) > With the number of different backtraces here, is anyone of them reproducible > _after_ the commit that fixed this bug? If yes, maybe report them separately. I am quite sure that all of them are now fixed - I had each of those and had found to reliable reproduce them. But I agree if one is still reproducable it should better go into a new report.