Bug 373427 - Plasma locks up in nouveau DRI2GetBuffersWithFormat creating new windows.
Summary: Plasma locks up in nouveau DRI2GetBuffersWithFormat creating new windows.
Status: RESOLVED UPSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (show other bugs)
Version: 5.8.4
Platform: Fedora RPMs Linux
: NOR grave
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
: 373131 373180 374369 374393 374857 374983 375606 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-12-08 14:44 UTC by Larry
Modified: 2018-05-31 16:07 UTC (History)
19 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
tail -f /var/log/messages during test (9.68 KB, text/plain)
2016-12-08 14:44 UTC, Larry
Details
List of registered services (4.88 KB, text/plain)
2016-12-08 14:45 UTC, Larry
Details
qdbus.org.freedesktop.Notifications results (451 bytes, text/plain)
2016-12-08 14:46 UTC, Larry
Details
qdbus.com.canonical.Unity results (441 bytes, text/plain)
2016-12-08 14:47 UTC, Larry
Details
qdbus.org.kde.StatusNotifierHost-19918 results (454 bytes, text/plain)
2016-12-08 14:48 UTC, Larry
Details
qdbus.org.kde.plasmashell results (441 bytes, text/plain)
2016-12-08 14:48 UTC, Larry
Details
Finally happened again. gdb outpu attachedt (41.92 KB, text/x-log)
2016-12-09 17:19 UTC, Larry
Details
apitrace until freeze (1.41 MB, application/octet-stream)
2016-12-20 16:17 UTC, Arne Spiegelhauer
Details
apitrace contnued after vt2-vt1 change (1.51 MB, application/octet-stream)
2016-12-20 16:23 UTC, Arne Spiegelhauer
Details
back trace of waiting thread during freeze (7.71 KB, text/plain)
2016-12-20 16:27 UTC, Arne Spiegelhauer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Larry 2016-12-08 14:44:58 UTC
Created attachment 102684 [details]
tail -f /var/log/messages during test

I tried to burst a PDF from Dolphin and received an error message indicating that pdftk wasn't installed.  The messagebox remained and the desktop and panels were unresponsive, a problem I've seen many times since installing Fedora 25.  Alt-F2 did bring up a command prompt and I checked the statuses of all services registered with qdbus.  Each command was executed and the output timestamped with hour-minute-seconds that the output was generated.

The following 4 services had extended delays: org.freedesktop.Notifications, com.canonical.Unity, org.kde.plasmashell and org.kde.StatusNotifierHost-19918.  I am attaching the output from the qdbus executions for each with tiemstamps.  The CPU was mostly idle during the failure.  I performed a killall -u MuUser to address this occurrence; sometimes there are several processes left after the kill and I have to send signal 9.
Comment 1 Larry 2016-12-08 14:45:49 UTC
Created attachment 102685 [details]
List of registered services
Comment 2 Larry 2016-12-08 14:46:54 UTC
Created attachment 102686 [details]
qdbus.org.freedesktop.Notifications results
Comment 3 Larry 2016-12-08 14:47:21 UTC
Created attachment 102687 [details]
qdbus.com.canonical.Unity results
Comment 4 Larry 2016-12-08 14:48:18 UTC
Created attachment 102688 [details]
qdbus.org.kde.StatusNotifierHost-19918 results
Comment 5 Larry 2016-12-08 14:48:55 UTC
Created attachment 102689 [details]
qdbus.org.kde.plasmashell results
Comment 6 Rex Dieter 2016-12-08 15:38:03 UTC
Your "plasmashell unresponsive" symptoms seem to match an issue we're tracking downstream in fedora,
https://bugzilla.redhat.com/show_bug.cgi?id=1399396
(affects mostly nouveau and some radeon driver users, generally intel is unaffected)

one workaround users report there to unfreeze things is to switch vt's
Comment 7 Larry 2016-12-08 15:53:15 UTC
Thansk for the suggestion.  I will try it the next time and update the case.
Comment 8 Larry 2016-12-08 16:03:24 UTC
Confirmed.  Switching to a VT cleared whatever was holding things up.

I have seen other bugs related to xorg-x11-drv-nouveau (I have version 1.0.13-1.fc25.x86_64) that recommended removing the package to force X11 to use a different driver; does this make sense?  I tried it but KDE never completed loading so I reinstalled it.

Is this an X11 driver issue or a KDE/KF5 issue?
Comment 9 David Edmundson 2016-12-08 17:06:10 UTC
So the plasma process is hanging but everything else is responsive?

Can you (when it's frozen) run:
sudo gdb --pid `pidof plasmashell` from a terminal

then when that attached type "thread apply all bt" to get a log.
then copy and paste that here.


It probably means plasma is blocked waiting for X to do something, but this will tell us exactly.
Comment 10 Rex Dieter 2016-12-09 13:04:36 UTC
The downstream bug includes some backtraces.  I'll paste them here.

1. nouveau, https://bugzilla.redhat.com/attachment.cgi?id=1225536

(only main thread)

#0  0x00007f79e8b6e00d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f79edb3ad10 in poll (__timeout=-1, __nfds=1, __fds=0x7ffd52fc90e0)
    at /usr/include/bits/poll2.h:46
#2  0x00007f79edb3ad10 in _xcb_conn_wait (c=c@entry=0x560e8cf7d310, cond=cond@entry=0x7ffd52fc9200, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:479
#3  0x00007f79edb3c7cf in wait_for_reply (c=c@entry=0x560e8cf7d310, request=request@entry=53959, e=e@entry=0x7ffd52fc92d0) at xcb_in.c:516
#4  0x00007f79edb3c941 in xcb_wait_for_reply64 (c=c@entry=0x560e8cf7d310, request=53959, e=e@entry=0x7ffd52fc92d0) at xcb_in.c:560
#5  0x00007f79edfaabd8 in _XReply (dpy=dpy@entry=0x560e8cf7bf80, rep=rep@entry=0x7ffd52fc9350, extra=extra@entry=0, discard=discard@entry=0) at xcb_io.c:596
#6  0x00007f79e6d194ba in DRI2GetBuffersWithFormat (dpy=0x560e8cf7bf80, drawable=44040261, width=width@entry=0x560e90ae8958, height=height@entry=0x560e90ae895c, attachments=0x7ffd52fc9500, count=1, outCount=0x7ffd52fc94c0) at dri2.c:491
#7  0x00007f79e6d19817 in dri2GetBuffersWithFormat (driDrawable=<optimized out>, width=0x560e90ae8958, height=0x560e90ae895c, attachments=<optimized out>, count=<optimized out>, out_count=0x7ffd52fc94c0, loaderPrivate=0x560e914bf580) at dri2_glx.c:894
#8  0x00007f7936613e98 in dri2_drawable_get_buffers (count=<synthetic pointer>, atts=0x560e9032a740, drawable=0x560e8fe4ecf0) at dri2.c:263
#9  0x00007f7936613e98 in dri2_allocate_textures (ctx=0x560e8db35710, drawable=0x560e8fe4ecf0, statts=0x560e9032a740, statts_count=2) at dri2.c:458
#10 0x00007f793660ff5c in dri_st_framebuffer_validate (stctx=<optimized out>, stfbi=<optimized out>, statts=0x560e9032a740, count=2, out=0x7ffd52fc9630)
    at dri_drawable.c:83
#11 0x00007f79364c5cfe in st_framebuffer_validate (stfb=0x560e9032a2e0, st=st@entry=0x560e8dae8910) at state_tracker/st_manager.c:202
#12 0x00007f79364c6fa0 in st_api_make_current (stapi=<optimized out>, stctxi=0x560e8dae8910, stdrawi=0x560e8fe4ecf0, streadi=0x560e8fe4ecf0)
    at state_tracker/st_manager.c:780
#13 0x00007f793660fa31 in dri_make_current (cPriv=<optimized out>, driDrawPriv=0x560e90ae8930, driReadPriv=0x560e90ae8930) at dri_context.c:245
#14 0x00007f793660ea46 in driBindContext (pcp=<optimized out>, pdp=<optimized out>, prp=<optimized out>) at dri_util.c:553
#15 0x00007f79e6d1b2db in dri2_bind_context (context=0x560e8db384f0, old=<optimized out>, draw=44040261, read=44040261) at dri2_glx.c:154
#16 0x00007f79e6cefb25 in MakeContextCurrent (dpy=0x560e8cf7bf80, draw=draw@entry=44040261, read=read@entry=44040261, gc_user=0x560e8db384f0) at glxcurrent.c:228
#17 0x00007f79e6cefccb in glXMakeCurrent (dpy=<optimized out>, draw=draw@entry=44040261, gc=<optimized out>) at glxcurrent.c:262
#18 0x00007f79ef997fc8 in QGLXContext::makeCurrent(QPlatformSurface*) (this=0x560e8d6a3410, surface=0x560e8ec49b10) at qglxintegration.cpp:488
#19 0x00007f79e9c9c248 in QOpenGLContext::makeCurrent(QSurface*) (this=
    0x560e8d6b4b10, surface=0x560e8ec36c70) at kernel/qopenglcontext.cpp:974
#20 0x00007f79ed3e4e35 in QSGGuiThreadRenderLoop::renderWindow(QQuickWindow*) (this=0x560e8d445ea0, window=<optimized out>)
    at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/scenegraph/qsgrenderloop.cpp:360
#21 0x00007f79ed422355 in QQuickWindow::event(QEvent*) (this=this@entry=0x560e8ec36c60, e=e@entry=0x7ffd52fc9db0)
    at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/items/qquickwindow.cpp:1499
#22 0x00007f79ef34a89b in PlasmaQuick::Dialog::event(QEvent*) (this=0x560e8ec36c60, event=0x7ffd52fc9db0)
    at /usr/src/debug/plasma-framework-5.27.0/src/plasmaquick/dialog.cpp:1192
#23 0x00007f79ea1fa96c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x560e8ec36c60, e=0x7ffd52fc9db0)
    at kernel/qapplication.cpp:3799
#24 0x00007f79ea202111 in QApplication::notify(QObject*, QEvent*) (this=
---Type <return> to continue, or q <return> to quit---
    0x7ffd52fca5d0, receiver=0x560e8ec36c60, e=0x7ffd52fc9db0)
    at kernel/qapplication.cpp:3556
#25 0x00007f79e992612a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=receiver@entry=0x560e8ec36c60, event=event@entry=0x7ffd52fc9db0)
    at kernel/qcoreapplication.cpp:988
#26 0x00007f79e9c7009e in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x7ffd52fc9db0, receiver=<optimized out>)
    at ../../src/corelib/kernel/qcoreapplication.h:231
#27 0x00007f79e9c7009e in QWindowPrivate::deliverUpdateRequest() (this=this@entry=0x560e8ec47fe0) at kernel/qwindow.cpp:2171
#28 0x00007f79e9c705e9 in QWindow::event(QEvent*) (this=this@entry=0x560e8ec36c60, ev=ev@entry=0x7ffd52fca210) at kernel/qwindow.cpp:2142
#29 0x00007f79ed4221b3 in QQuickWindow::event(QEvent*) (this=this@entry=0x560e8ec36c60, e=e@entry=0x7ffd52fca210)
    at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/items/qquickwindow.cpp:1518
#30 0x00007f79ef34a89b in PlasmaQuick::Dialog::event(QEvent*) (this=0x560e8ec36c60, event=0x7ffd52fca210)
    at /usr/src/debug/plasma-framework-5.27.0/src/plasmaquick/dialog.cpp:1192
#31 0x00007f79ea1fa96c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x560e8ec36c60, e=0x7ffd52fca210)
    at kernel/qapplication.cpp:3799
#32 0x00007f79ea202111 in QApplication::notify(QObject*, QEvent*) (this=0x7ffd52fca5d0, receiver=0x560e8ec36c60, e=0x7ffd52fca210) at kernel/qapplication.cpp:3556
#33 0x00007f79e992612a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x560e8ec36c60, event=event@entry=0x7ffd52fca210)
    at kernel/qcoreapplication.cpp:988
#34 0x00007f79e997338b in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x7ffd52fca210, receiver=<optimized out>)
    at ../../src/corelib/kernel/qcoreapplication.h:231
#35 0x00007f79e997338b in QTimerInfoList::activateTimers() (this=0x560e8cfc35b0)
    at kernel/qtimerinfo_unix.cpp:644
#36 0x00007f79e99738e1 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:182
#37 0x00007f79e191ae42 in g_main_dispatch (context=0x7f79c80016f0) at gmain.c:3203
#38 0x00007f79e191ae42 in g_main_context_dispatch (context=context@entry=0x7f79c80016f0) at gmain.c:3856
#39 0x00007f79e191b1c0 in g_main_context_iterate (context=context@entry=0x7f79c80016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at gmain.c:3929
#40 0x00007f79e191b26c in g_main_context_iteration (context=0x7f79c80016f0, may_block=may_block@entry=1) at gmain.c:3990
#41 0x00007f79e9973d6f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x560e8cfd6b30, flags=...)
    at kernel/qeventdispatcher_glib.cpp:423
#42 0x00007f79e99250ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffd52fca460, flags=..., flags@entry=...)
    at kernel/qeventloop.cpp:210
#43 0x00007f79e992cbac in QCoreApplication::exec() ()
    at kernel/qcoreapplication.cpp:1261
#44 0x0000560e8ad7c442 in main ()
Comment 11 Rex Dieter 2016-12-09 13:07:04 UTC
backtrace 2 radeon :

thread 1 only, full is too big to include here:
https://bugzilla.redhat.com/attachment.cgi?id=1228149

Thread 1 (Thread 0x7f366e7484c0 (LWP 28831)):
#0  0x00007f367c75c00d in poll () at ../sysdeps/unix/syscall-template.S:84

#1  0x00007f3681728d10 in poll (__timeout=-1, __nfds=1, __fds=0x7fffee496d50) at /usr/include/bits/poll2.h:46
#2  _xcb_conn_wait (c=c@entry=0x55cbacc3c3c0, cond=cond@entry=0x7fffee496e70, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:479
#3  0x00007f368172a7cf in wait_for_reply (c=c@entry=0x55cbacc3c3c0, request=request@entry=247040, e=e@entry=0x7fffee496f40) at xcb_in.c:516
#4  0x00007f368172a941 in xcb_wait_for_reply64 (c=c@entry=0x55cbacc3c3c0, request=247040, e=e@entry=0x7fffee496f40) at xcb_in.c:560
#5  0x00007f3681b98bd8 in _XReply (dpy=dpy@entry=0x55cbacc3b170, rep=rep@entry=0x7fffee496fc0, extra=extra@entry=0, discard=discard@entry=0) at xcb_io.c:596
#6  0x00007f367a9244ba in DRI2GetBuffersWithFormat (dpy=0x55cbacc3b170, drawable=31457314, width=width@entry=0x55cbaffbb388, height=height@entry=0x55cbaffbb38c, attachments=0x7fffee497170, count=1,
    outCount=0x7fffee497130) at dri2.c:491
#7  0x00007f367a924817 in dri2GetBuffersWithFormat (driDrawable=<optimized out>, width=0x55cbaffbb388, height=0x55cbaffbb38c, attachments=<optimized out>, count=<optimized out>, out_count=0x7fffee497130,
    loaderPrivate=0x55cbaffc50c0) at dri2_glx.c:894
#8  0x00007f35cb515e98 in dri2_drawable_get_buffers (count=<synthetic pointer>, atts=0x55cbb02ae440, drawable=0x55cbaf41f030) at dri2.c:263
#9  dri2_allocate_textures (ctx=0x55cbad873520, drawable=0x55cbaf41f030, statts=0x55cbb02ae440, statts_count=2) at dri2.c:458
#10 0x00007f35cb511f5c in dri_st_framebuffer_validate (stctx=<optimized out>, stfbi=<optimized out>, statts=0x55cbb02ae440, count=2, out=0x7fffee4972a0) at dri_drawable.c:83
#11 0x00007f35cb3c7cfe in st_framebuffer_validate (stfb=stfb@entry=0x55cbb02adfe0, st=st@entry=0x55cbada83f40) at state_tracker/st_manager.c:202
#12 0x00007f35cb3c923c in st_manager_validate_framebuffers (st=st@entry=0x55cbada83f40) at state_tracker/st_manager.c:874
#13 0x00007f35cb37fd32 in st_validate_state (st=st@entry=0x55cbada83f40, pipeline=pipeline@entry=ST_PIPELINE_RENDER) at state_tracker/st_atom.c:235
#14 0x00007f35cb3882e3 in st_Clear (ctx=0x55cbada49c90, mask=50) at state_tracker/st_cb_clear.c:394
#15 0x00007f3680f9b10a in QSGBatchRenderer::Renderer::renderBatches (this=this@entry=0x55cbaf346100) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:2517
#16 0x00007f3680fa0a45 in QSGBatchRenderer::Renderer::render (this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:2741
#17 0x00007f3680fac32f in QSGRenderer::renderScene (this=0x55cbaf346100, bindable=...) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/scenegraph/coreapi/qsgrenderer.cpp:223
#18 0x00007f3680fac9fb in QSGRenderer::renderScene (this=<optimized out>, fboId=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/scenegraph/coreapi/qsgrenderer.cpp:183
#19 0x00007f3680fbc60e in QSGRenderContext::renderNextFrame (this=0x55cbacfdd880, renderer=0x55cbaf346100, fboId=<optimized out>)
    at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/scenegraph/qsgcontext.cpp:561
#20 0x00007f368100586e in QQuickWindowPrivate::renderSceneGraph (this=this@entry=0x55cbae3c3740, size=...) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/items/qquickwindow.cpp:464
#21 0x00007f3680fd2f55 in QSGGuiThreadRenderLoop::renderWindow (this=0x55cbacf294e0, window=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/scenegraph/qsgrenderloop.cpp:397
#22 0x00007f3681010355 in QQuickWindow::event (this=this@entry=0x55cbae3e26c0, e=e@entry=0x7fffee497c70) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/items/qquickwindow.cpp:1499
#23 0x000055cbabade05b in PanelView::event (this=0x55cbae3e26c0, e=0x7fffee497c70) at /usr/src/debug/plasma-workspace-5.8.4/shell/panelview.cpp:852
#24 0x00007f367dde896c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55cbae3e26c0, e=0x7fffee497c70) at kernel/qapplication.cpp:3799
#25 0x00007f367ddf0111 in QApplication::notify (this=0x7fffee498410, receiver=0x55cbae3e26c0, e=0x7fffee497c70) at kernel/qapplication.cpp:3556
#26 0x00007f367d51412a in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x55cbae3e26c0, event=event@entry=0x7fffee497c70) at kernel/qcoreapplication.cpp:988
#27 0x00007f367d85e09e in QCoreApplication::sendEvent (event=0x7fffee497c70, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:231

#28 QWindowPrivate::deliverUpdateRequest (this=this@entry=0x55cbae3c3740) at kernel/qwindow.cpp:2171
#29 0x00007f367d85e5e9 in QWindow::event (this=this@entry=0x55cbae3e26c0, ev=ev@entry=0x7fffee498050) at kernel/qwindow.cpp:2142
#30 0x00007f36810101b3 in QQuickWindow::event (this=this@entry=0x55cbae3e26c0, e=e@entry=0x7fffee498050) at /usr/src/debug/qtdeclarative-opensource-src-5.7.0/src/quick/items/qquickwindow.cpp:1518
#31 0x000055cbabade05b in PanelView::event (this=0x55cbae3e26c0, e=0x7fffee498050) at /usr/src/debug/plasma-workspace-5.8.4/shell/panelview.cpp:852
#32 0x00007f367dde896c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55cbae3e26c0, e=0x7fffee498050) at kernel/qapplication.cpp:3799
#33 0x00007f367ddf0111 in QApplication::notify (this=0x7fffee498410, receiver=0x55cbae3e26c0, e=0x7fffee498050) at kernel/qapplication.cpp:3556
#34 0x00007f367d51412a in QCoreApplication::notifyInternal2 (receiver=0x55cbae3e26c0, event=event@entry=0x7fffee498050) at kernel/qcoreapplication.cpp:988
#35 0x00007f367d56138b in QCoreApplication::sendEvent (event=0x7fffee498050, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:231
#36 QTimerInfoList::activateTimers (this=0x55cbacc82280) at kernel/qtimerinfo_unix.cpp:644
#37 0x00007f367d5618e1 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:182
#38 0x00007f3675515e42 in g_main_dispatch (context=0x7f365c0016f0) at gmain.c:3203
#39 g_main_context_dispatch (context=context@entry=0x7f365c0016f0) at gmain.c:3856
#40 0x00007f36755161c0 in g_main_context_iterate (context=context@entry=0x7f365c0016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3929
#41 0x00007f367551626c in g_main_context_iteration (context=0x7f365c0016f0, may_block=may_block@entry=1) at gmain.c:3990
#42 0x00007f367d561d6f in QEventDispatcherGlib::processEvents (this=0x55cbacca5520, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#43 0x00007f367d5130ba in QEventLoop::exec (this=this@entry=0x7fffee4982a0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:210
#44 0x00007f367d51abac in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1261
#45 0x000055cbabacc442 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.8.4/shell/main.cpp:166
Comment 12 Larry 2016-12-09 17:19:18 UTC
Created attachment 102706 [details]
Finally happened again.  gdb outpu attachedt
Comment 13 David Edmundson 2016-12-11 23:15:53 UTC
This is going to be upstream, in either Noveau or Qt. 

Make sure you are up to date on both. Especially Noveau.

Other possibly useful thing to do is to get a trace of the openGL calls with
"apitrace trace plasmashell" and recreate the issue.
Comment 14 Giuseppe Ghibò 2016-12-12 20:30:12 UTC
I get the same under current mageia 6/cauldron (plasma 5.8.4, kernel 4.8.14, mesa 13.0.2, xorg 1.19.0) but with intel drivers (using sna) and no nouveau installed. Usually is triggered in the desktop after a while, especially when navigating with firefox.
Comment 15 Morgan Leijström 2016-12-20 13:33:11 UTC
I see it too, but using ATI, same Mageia as Ghibo
Comment 16 Arne Spiegelhauer 2016-12-20 16:17:56 UTC
Created attachment 102899 [details]
apitrace until freeze

(In reply to David Edmundson from comment #13)
> Other possibly useful thing to do is to get a trace of the openGL calls with
> "apitrace trace plasmashell" and recreate the issue.

Recreated several times (using approach described here: https://bugs.mageia.org/show_bug.cgi?id=19869#c4)
In all cases, the (flushed) trace ends with the same sequence as this one.
Comment 17 Arne Spiegelhauer 2016-12-20 16:23:47 UTC
Created attachment 102900 [details]
apitrace contnued after vt2-vt1 change

plasmahell has gotten the reply it was waiting for (last request in previous trace or the one following it in this trace ?)
Comment 18 Arne Spiegelhauer 2016-12-20 16:27:28 UTC
Created attachment 102901 [details]
back trace of waiting thread during freeze
Comment 19 rlk 2016-12-29 16:58:31 UTC
I don't have a backtrace, but with openSUSE 42.1 and 42.2, this is reproducible with otherwise identical KDE, X, Mesa, and kernel stacks other than the X server.  With 1.18 and 1.17 servers, this doesn't happen; with the 1.19 server, this happens on the order of every 5-30 minutes but with no otherwise predictable pattern.

The one predictable occurrence is during early startup; after I log in, it freezes during the splash screen.

The reliable way to clear it is to switch virtual terminals and back.

I'm using the (free) radeon driver with a Radeon HG 5870 adapter.

I've backed off to 1.18 because this is too annoying.

There is a workaround: create an xorg.conf (or put in xorg.conf.19) the following:

Section "Device"
        Identifier  "Videocard0"
        Driver      "radeon"
        Option      "DRI" "3"
EndSection

This appears (at least on initial testing) to avoid the problem.  Unfortunately, it causes severe screen flickering with LibreOffice 4.2.7 (which don't ask why, but I need this) that renders *that* completely unusable.
Comment 20 Stormi 2017-01-10 08:23:24 UTC
I reported it upstream to x.org and they fixed it: https://bugs.freedesktop.org/show_bug.cgi?id=99333
Comment 21 Maât 2017-01-10 11:02:19 UTC
*** Bug 374857 has been marked as a duplicate of this bug. ***
Comment 22 David Edmundson 2017-01-19 02:41:52 UTC
*** Bug 373131 has been marked as a duplicate of this bug. ***
Comment 23 David Edmundson 2017-01-19 02:42:07 UTC
*** Bug 374393 has been marked as a duplicate of this bug. ***
Comment 24 Rex Dieter 2017-01-19 14:14:38 UTC
Per confirmed upstream fix in xorg-x11-server-1.19.1 , referenced in
https://bugs.freedesktop.org/show_bug.cgi?id=99333

we can close this
Comment 25 David Edmundson 2017-01-20 04:02:50 UTC
*** Bug 373180 has been marked as a duplicate of this bug. ***
Comment 26 David Edmundson 2017-01-27 12:57:37 UTC
*** Bug 375606 has been marked as a duplicate of this bug. ***
Comment 27 David Edmundson 2017-01-27 12:58:14 UTC
*** Bug 374983 has been marked as a duplicate of this bug. ***
Comment 28 David Edmundson 2017-01-27 12:59:55 UTC
*** Bug 374369 has been marked as a duplicate of this bug. ***
Comment 29 pinheiro 2017-03-07 21:02:07 UTC
can still reproduce with plasmashell 5.8.5 and 
Xorg-server-1.19.2
Comment 30 arne anka 2018-05-31 16:07:59 UTC
maybe it was fixed, but it's back again:


# gdb --pid `pidof plasmashell` 
GNU gdb (Debian 7.12-6+b2) 7.12.0.20161007-git
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
Attaching to process 23056
[New LWP 23057]
[New LWP 23058]
[New LWP 23059]
[New LWP 23060]
[New LWP 23061]
[New LWP 23062]
[New LWP 29937]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f59b729b5d9 in poll () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) thread apply all bt

Thread 8 (Thread 0x7f58df7ff700 (LWP 29937)):
#0  0x00007f59b729b5d9 in poll () at /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f59b1b92439 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f59b1b9254c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f59b7bdb19f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f59b7b7eb6a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f59b79947ea in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f59bab32885 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007f59b7999b4f in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f59b6b555aa in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#9  0x00007f59b72a5cbf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Thread 7 (Thread 0x7f5903bf9700 (LWP 23062)):
#0  0x00007f59b729b5d9 in poll () at /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f59b1b92439 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f59b1b9254c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f59b7bdb19f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f59b7b7eb6a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f59b79947ea in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f59bb6e1586 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f59b7999b4f in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f59b6b555aa in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#9  0x00007f59b72a5cbf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Thread 6 (Thread 0x7f59937bc700 (LWP 23061)):
#0  0x00007f59b6b5b4ec in pthread_cond_wait@@GLIBC_2.3.2 () at /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f59bd3fa6a4 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#2  0x00007f59bd3fa6e9 in  () at /usr/lib/x86_64-linux-gnu/libQt5Script.so.5
#3  0x00007f59b6b555aa in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#4  0x00007f59b72a5cbf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Thread 5 (Thread 0x7f599d746700 (LWP 23060)):
#0  0x00007f59b729b5d9 in poll () at /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f59b1b92439 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#2  0x00007f59b1b9254c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f59b7bdb19f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f59b7b7eb6a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f59b79947ea in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f59bab32885 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007f59b7999b4f in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f59b6b555aa in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#9  0x00007f59b72a5cbf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Thread 4 (Thread 0x7f599f5ef700 (LWP 23059)):
#0  0x00007f59b729b5d9 in poll () at /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f59b1b92439 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f59b1b9254c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f59b7bdb19f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f59b7b7eb6a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f59b79947ea in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f59bab32885 in  () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007f59b7999b4f in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f59b6b555aa in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#9  0x00007f59b72a5cbf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Thread 3 (Thread 0x7f59a5040700 (LWP 23058)):
#0  0x00007f59b729b5d9 in poll () at /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f59b1b92439 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f59b1b9254c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f59b7bdb19f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f59b7b7eb6a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f59b79947ea in QThread::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f59b7ffedf5 in  () at /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007f59b7999b4f in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f59b6b555aa in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#9  0x00007f59b72a5cbf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Thread 2 (Thread 0x7f59a7407700 (LWP 23057)):
---Type <return> to continue, or q <return> to quit---
#0  0x00007f59b6b5b4ec in pthread_cond_wait@@GLIBC_2.3.2 () at /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f59bc315302 in  () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f59bc316d1a in xcb_wait_for_event () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f59a9365b19 in  () at /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007f59b7999b4f in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f59b6b555aa in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#6  0x00007f59b72a5cbf in clone () at /lib/x86_64-linux-gnu/libc.so.6

Thread 1 (Thread 0x7f59bdd20cc0 (LWP 23056)):
#0  0x00007f59b729b5d9 in poll () at /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f59bc3150f7 in  () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f59bc316e0a in xcb_wait_for_special_event () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f5992c9796b in  () at /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0
#4  0x00007f5992c97ac8 in  () at /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0
#5  0x00007f5992c9840e in  () at /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0
#6  0x00007f5992c99081 in  () at /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0
#7  0x00007f59911a459f in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#8  0x00007f59911a48a1 in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#9  0x00007f599119ffac in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#10 0x00007f59bb723158 in QSGBatchRenderer::Renderer::renderBatches() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#11 0x00007f59bb728a84 in QSGBatchRenderer::Renderer::render() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#12 0x00007f59bb719220 in QSGRenderer::renderScene(QSGBindable const&) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#13 0x00007f59bb7196db in QSGRenderer::renderScene(unsigned int) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#14 0x00007f59bb752c20 in QSGDefaultRenderContext::renderNextFrame(QSGRenderer*, unsigned int) ()
    at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#15 0x00007f59bb7b68b8 in QQuickWindowPrivate::renderSceneGraph(QSize const&) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#16 0x00007f59bb7451b9 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#17 0x00007f59bb7c1296 in QQuickWindow::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#18 0x000055840d9cf92b in  ()
#19 0x00007f59b8b676cc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#20 0x00007f59b8b6ee84 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007f59b7b80938 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x00007f59b8382291 in QWindowPrivate::deliverUpdateRequest() () at /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#23 0x00007f59b83827b9 in QWindow::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#24 0x00007f59bb7c1235 in QQuickWindow::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#25 0x000055840d9cf92b in  ()
#26 0x00007f59b8b676cc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
---Type <return> to continue, or q <return> to quit---
#27 0x00007f59b8b6ee84 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007f59b7b80938 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#29 0x00007f59b7bda63e in QTimerInfoList::activateTimers() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007f59b7bdae01 in  () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007f59b1b92287 in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f59b1b924c0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007f59b1b9254c in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007f59b7bdb19f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#35 0x00007f59a93ea2c1 in  () at /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#36 0x00007f59b7b7eb6a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#37 0x00007f59b7b87ed4 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#38 0x000055840d9c0d0d in  ()
#39 0x00007f59b71d0a87 in __libc_start_main () at /lib/x86_64-linux-gnu/libc.so.6
#40 0x000055840d9c10aa in _start ()
(gdb) 
(gdb)