Bug 377031 - kwin crashed after unlock screen (2 local sessions)
Summary: kwin crashed after unlock screen (2 local sessions)
Status: RESOLVED DUPLICATE of bug 344326
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: 5.8.5
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2017-02-28 18:13 UTC by Thomas Boerkel
Modified: 2017-07-22 15:51 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Boerkel 2017-02-28 18:13:47 UTC
Application: kwin_x11 (5.8.5)
 (Compiled from sources)
Qt Version: 5.6.2
Frameworks Version: 5.29.0
Operating System: Linux 4.9.6-gentoo-r1 x86_64
Distribution (Platform): Gentoo Packages

-- Information about the crash:
- What I was doing when the application crashed:

The session was locked. I was logged in the other local session and working normally. Also starting OpenGL applications (MythTV).
When Is switched back and unlocked this session, kwin had crashed.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fc4407467c0 (LWP 7049))]

Thread 5 (Thread 0x7fc42be6c700 (LWP 7056)):
#0  0x00007fc44003e5ed in poll () from /lib64/libc.so.6
#1  0x00007fc43f19b8f2 in ?? () from /usr/lib64/libxcb.so.1
#2  0x00007fc43f19d6df in xcb_wait_for_event () from /usr/lib64/libxcb.so.1
#3  0x00007fc42cf49569 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007fc43dd4999c in ?? () from /usr/lib64/libQt5Core.so.5
#5  0x00007fc4403004a4 in start_thread () from /lib64/libpthread.so.0
#6  0x00007fc44004766d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7fc429eeb700 (LWP 7078)):
#0  0x00007fc440040303 in select () from /lib64/libc.so.6
#1  0x00007fc43df34621 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () from /usr/lib64/libQt5Core.so.5
#2  0x00007fc43df35d0e in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) () from /usr/lib64/libQt5Core.so.5
#3  0x00007fc43df3624d in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#4  0x00007fc43deea60a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#5  0x00007fc43dd45234 in QThread::exec() () from /usr/lib64/libQt5Core.so.5
#6  0x00007fc440859235 in ?? () from /usr/lib64/libQt5DBus.so.5
#7  0x00007fc43dd4999c in ?? () from /usr/lib64/libQt5Core.so.5
#8  0x00007fc4403004a4 in start_thread () from /lib64/libpthread.so.0
#9  0x00007fc44004766d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7fc41b97a700 (LWP 7124)):
#0  0x00007fc440040303 in select () from /lib64/libc.so.6
#1  0x00007fc43df34621 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timespec const*) () from /usr/lib64/libQt5Core.so.5
#2  0x00007fc43df35d0e in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timespec*) () from /usr/lib64/libQt5Core.so.5
#3  0x00007fc43df3624d in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#4  0x00007fc43deea60a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#5  0x00007fc43dd45234 in QThread::exec() () from /usr/lib64/libQt5Core.so.5
#6  0x00007fc439103405 in ?? () from /usr/lib64/libQt5Qml.so.5
#7  0x00007fc43dd4999c in ?? () from /usr/lib64/libQt5Core.so.5
#8  0x00007fc4403004a4 in start_thread () from /lib64/libpthread.so.0
#9  0x00007fc44004766d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fc411962700 (LWP 7193)):
#0  0x00007fc4403060ff in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fc43d100204 in ?? () from /usr/lib64/libQt5Script.so.5
#2  0x00007fc43d100249 in ?? () from /usr/lib64/libQt5Script.so.5
#3  0x00007fc4403004a4 in start_thread () from /lib64/libpthread.so.0
#4  0x00007fc44004766d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fc4407467c0 (LWP 7049)):
[KCrash Handler]
#6  0x00007fc43ffee489 in ?? () from /lib64/libc.so.6
#7  0x00007fc439b70116 in KWin::GLVertexBuffer::setData (this=this@entry=0x9cbed0, vertexCount=36, dim=dim@entry=2, vertices=0x997e98, texcoords=texcoords@entry=0x0) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/libkwineffects/kwinglutils.cpp:2057
#8  0x00007fc43fbf70ce in KWin::SceneOpenGL2::doPaintBackground (this=0x9d6d40, vertices=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/scene_opengl.cpp:1100
#9  0x00007fc43fbfce35 in KWin::SceneOpenGL::paintBackground (this=this@entry=0x9d6d40, region=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/scene_opengl.cpp:813
#10 0x00007fc43fbe2359 in KWin::Scene::paintSimpleScreen (this=this@entry=0x9d6d40, orig_mask=orig_mask@entry=8, region=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/scene.cpp:365
#11 0x00007fc43fbf7053 in KWin::SceneOpenGL2::paintSimpleScreen (this=this@entry=0x9d6d40, mask=mask@entry=8, region=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/scene_opengl.cpp:1083
#12 0x00007fc43fbe46a5 in KWin::Scene::finalPaintScreen (this=0x9d6d40, mask=mask@entry=8, region=..., data=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/scene.cpp:201
#13 0x00007fc43fc127df in KWin::EffectsHandlerImpl::paintScreen (this=0x9e7f30, mask=mask@entry=8, region=..., data=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/effects.cpp:340
#14 0x00007fc43d723ccf in KWin::Effect::paintScreen (this=this@entry=0x893790, mask=mask@entry=8, region=..., data=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/libkwineffects/kwineffects.cpp:574
#15 0x00007fc43fc1278d in KWin::EffectsHandlerImpl::paintScreen (this=0x9e7f30, mask=mask@entry=8, region=..., data=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/effects.cpp:337
#16 0x00007fc43d723ccf in KWin::Effect::paintScreen (this=this@entry=0xa08410, mask=mask@entry=8, region=..., data=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/libkwineffects/kwineffects.cpp:574
#17 0x00007fc43fc1278d in KWin::EffectsHandlerImpl::paintScreen (this=0x9e7f30, mask=8, region=..., data=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/effects.cpp:337
#18 0x00007fc43fbe4339 in KWin::Scene::paintScreen (this=this@entry=0x9d6d40, mask=mask@entry=0x7fff1b4ef5b0, damage=..., repaint=..., updateRegion=updateRegion@entry=0x7fff1b4ef580, validRegion=validRegion@entry=0x7fff1b4ef590, projection=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/scene.cpp:151
#19 0x00007fc43fbfd8f9 in KWin::SceneOpenGL::paint (this=0x9d6d40, damage=..., toplevels=...) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/scene_opengl.cpp:731
#20 0x00007fc43fbd6cea in KWin::Compositor::performCompositing (this=0x714110) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/composite.cpp:742
#21 0x00007fc43df1408b in QObject::event(QEvent*) () from /usr/lib64/libQt5Core.so.5
#22 0x00007fc43e7809ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#23 0x00007fc43e7850f2 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#24 0x00007fc43deeba80 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib64/libQt5Core.so.5
#25 0x00007fc43df378de in QTimerInfoList::activateTimers() () from /usr/lib64/libQt5Core.so.5
#26 0x00007fc43df3621b in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#27 0x00007fc42cfafe9d in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#28 0x00007fc43deea60a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQt5Core.so.5
#29 0x00007fc43def20dc in QCoreApplication::exec() () from /usr/lib64/libQt5Core.so.5
#30 0x00007fc44051e27b in kdemain (argc=1, argv=0x7fff1b4efe08) at /var/tmp/portage/kde-plasma/kwin-5.8.5/work/kwin-5.8.5/main_x11.cpp:466
#31 0x00007fc43ff80790 in __libc_start_main () from /lib64/libc.so.6
#32 0x0000000000400809 in _start ()

Possible duplicates by query: bug 365274, bug 362496, bug 361609, bug 359374, bug 355103.

Reported using DrKonqi
Comment 1 Thomas Boerkel 2017-02-28 18:36:09 UTC
I have 2 monitors. The 2nd monitor is attached, but not active in xorg.conf or KDE system settings.

If I activate and configure the 2nd monitor as separate X screen (:0.1), then the whole session or the lock screen crashes pretty often.

So, for the moment, I only have the kwin crashes, while I am only using the main monitor.
Comment 2 Thomas Boerkel 2017-02-28 18:37:07 UTC
I am using the binary Nvidia gfx driver.
Comment 3 Martin Flöser 2017-02-28 18:57:03 UTC
Do I understand correctly that you switched away from the session to another one? That is unfortunately a well known NVIDIA issue. They purge the memory of the objects we created without telling us (well now they do, but it would need special code on our side and only works with the latest, latest NVIDIA driver.)
Comment 4 Thomas Boerkel 2017-02-28 19:42:59 UTC
Yes, I switched the local session with CTRL-ALT-F8 prior to the crash. Usually, I have 2 local users logged in (VT7 and VT8). I am sharing this computer with my wife.

I have used this setup for many years without problems with KDE 4. I just finally updated to Plasma 5 (Gentoo).

Is there a workaround?
Comment 5 Thomas Boerkel 2017-03-04 10:56:48 UTC
I tried to switch to Nouveau, but that is not working fast/stable enough on my hardware.
Comment 6 Martin Flöser 2017-07-22 15:51:41 UTC
I think that's just another case of the well known "NVIDIA cannot handle VT switches bug". In that case it should be fixed with Plasma 5.10.3

*** This bug has been marked as a duplicate of bug 344326 ***