Bug 1256082

Summary: With DRI3, plasmashell freezes due to notifications when screen is off
Product: [Fedora] Fedora Reporter: Loïc Yhuel <loic.yhuel>
Component: libxcbAssignee: Adam Jackson <ajax>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 22CC: ajax, jwakely, negativo17, rdieter
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-10-03 17:46:33 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Loïc Yhuel 2015-08-23 21:07:37 UTC
Description of problem:
I regularly find plasmashell frozen, often with a notification popup visible, after resuming from suspend, or after screen has been turned off by power management.

Version-Release number of selected component (if applicable):
plasma-workspace-5.3.2-2.fc22.x86_64
mesa-dri-drivers-10.6.3-1.20150729.fc22.x86_64
xorg-x11-drv-intel-2.99.917-15.20150729.fc22.x86_64
libxcb-1.11-8.fc22.x86_64


Steps to Reproduce:
1. xset dpms force off; sleep 2; kdialog --passivepopup foo 5
2. wait 10s and turn screen back on (press a key or move the mouse)

Actual results:
Plasmashell is frozen, with the notification popup visible.

Expected results:
The notification popup isn't visible, and plasmashell works correctly.

Additional info:
Unlike the previous freezes fixed in https://bugzilla.redhat.com/show_bug.cgi?id=1193742, I only reproduce the issue when DRI3 is enabled (Option "DRI" "3" in an xorg config file).

plasmashell backtrace :
#0  0x00000036aaef72fd in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00000036af60a182 in _xcb_conn_wait (__timeout=-1, __nfds=1, __fds=0x7ffc23ec2b50) at /usr/include/bits/poll2.h:46
#2  0x00000036af60a182 in _xcb_conn_wait (c=c@entry=0x19dcae0, cond=cond@entry=0x4195c78, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:459
#3  0x00000036af60bd49 in xcb_wait_for_special_event (c=c@entry=0x19dcae0, se=0x4195c50) at xcb_in.c:744
#4  0x00000038b3449e72 in dri3_find_back (c=c@entry=0x19dcae0, priv=priv@entry=0x64e2a20) at dri3_glx.c:1263
#5  0x00000038b344ac8f in dri3_get_buffers (driDrawable=0x64e2a20, loaderPrivate=0x64e2a20, buffer_type=dri3_buffer_back, format=4107) at dri3_glx.c:1289
#6  0x00000038b344ac8f in dri3_get_buffers (driDrawable=driDrawable@entry=0x65d3260, format=4107, stamp=stamp@entry=0x65d3290, loaderPrivate=loaderPrivate@entry=0x64e2a20, buffer_mask=<optimized out>, buffer_mask@entry=1, buffers=buffers@entry=0x7ffc23ec2da0) at dri3_glx.c:1466
#7  0x00007fec2af5383b in intel_update_renderbuffers (drawable=0x65d3260, brw=0x2df5018) at brw_context.c:1531
#8  0x00007fec2af5383b in intel_update_renderbuffers (context=context@entry=0x2de34e0, drawable=drawable@entry=0x65d3260) at brw_context.c:1246
#9  0x00007fec2af53b91 in intel_prepare_render (brw=brw@entry=0x2df5018) at brw_context.c:1267
#10 0x00007fec2af47870 in brw_clear (ctx=0x2df5018, mask=50) at brw_clear.c:234
#11 0x000000315bd263fa in QSGBatchRenderer::Renderer::renderBatches() (this=this@entry=0x5feeea0)
    at /usr/src/debug/qtdeclarative-opensource-src-5.5.0/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp:2471
...

Comment 1 Jonathan Wakely 2015-08-28 23:08:29 UTC
Also still happening with DRI2, see Bug 1258084

Comment 2 Rex Dieter 2015-09-16 16:09:59 UTC
Trying xserver fix,
http://lists.x.org/archives/xorg-devel/2015-September/047304.html

Comment 3 Rex Dieter 2015-09-16 17:16:44 UTC
OK, have a patched xorg-x11-server available in copr:
https://copr.fedoraproject.org/coprs/rdieter/libxcb/

Please test.

Comment 4 Loïc Yhuel 2015-09-16 22:57:49 UTC
It doesn't help, I still have a systematic freeze with "xset dpms force off; sleep 2; kdialog --passivepopup foo 5".

Comment 5 Rex Dieter 2015-09-16 23:11:16 UTC
OK, maybe it only helps in the default dri2 case (it did for me)

Comment 6 Loïc Yhuel 2015-09-16 23:22:52 UTC
Perhaps I didn't try enough, but I wasn't able to reproduce the freezes with dri2 after the xcb patches.

Comment 7 Rex Dieter 2015-09-17 18:21:11 UTC
Fwiw, I cannot reproduce the hang myself on f23 and dri3, with or without this new patch, using your recipe

Comment 8 Loïc Yhuel 2015-09-17 21:24:47 UTC
Today I cannot reproduce, but I didn't change anything since yesterday.
So perhaps it only appears in some conditions, but I don't have any idea.

Comment 9 Fedora Update System 2015-09-24 12:18:53 UTC
xorg-x11-server-1.17.2-2.fc22.2 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2015-16590

Comment 10 Fedora Update System 2015-09-24 12:57:34 UTC
xorg-x11-server-1.18.0-0.4.20150907.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2015-16600

Comment 11 Fedora Update System 2015-09-25 16:33:16 UTC
xorg-x11-server-1.18.0-0.4.20150907.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
$ su -c 'dnf --enablerepo=updates-testing update xorg-x11-server'
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-16600

Comment 12 Fedora Update System 2015-09-27 00:39:01 UTC
xorg-x11-server-1.17.2-2.fc22.2 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
$ su -c 'dnf --enablerepo=updates-testing update xorg-x11-server'
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-16590

Comment 13 Fedora Update System 2015-10-03 17:46:05 UTC
xorg-x11-server-1.18.0-0.4.20150907.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2015-10-03 21:14:02 UTC
xorg-x11-server-1.17.2-2.fc22.2 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.