Bug 392083

Summary: Compositor, or something in kde5, causes nouveau driver to hang with video playback
Product: [Plasma] kwin Reporter: Christopher Neufeld <kdebugs>
Component: compositingAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED UPSTREAM    
Severity: normal    
Priority: NOR    
Version: 5.12.3   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:

Description Christopher Neufeld 2018-03-20 03:24:33 UTC
I'm afraid this is going to be fairly vague.  There's something in KDE5 that causes the nouveau driver to do a hard lockup when switching back from playing video.  I run MythTV in full-screen mode on one of my two monitors.  In KDE4, this wasn't a problem, but in KDE5, when using OpenGL or VDPAU rendering in MythTV, it always hangs the nouveau driver.  The screen locks up, the keyboard is unresponsive.  I can log in remotely and reboot the box.

I have another computer whose filesystem is the same (it's copied over via rsync for all but bits of /etc).  It runs KDE4, and it does not demonstrate this problem.

I've tried all three rendering settings in KDE5, they all behave the same.  The dmesg output shows:

localhost kernel: nouveau 0000:01:00.0: mythfrontend[3151]: failed to idle channel 19 [mythfrontend[3151]]
localhost kernel: nouveau 0000:01:00.0: mythfrontend[3151]: failed to idle channel 19 [mythfrontend[3151]]
localhost kernel: nouveau 0000:01:00.0: fifo: runlist update timeout
localhost kernel: nouveau 0000:01:00.0: fifo: INTR 00000001: 0000000b

My video card on the non-functioning machine is NVIDIA Corporation GF106 [GeForce GTS 450] (rev a1)

The "xine" program also causes the same lockup in KDE5, but not in KDE4.  It also uses vdpau for rendering.

Again, sorry that this is vague.  I can compile test patches and do more investigation if somebody can direct me to interesting lines of enquiry.
Comment 1 Martin Flöser 2018-03-20 05:14:20 UTC
Please report the freeze to nouveau developers. They need to fix it. Workaround doesn't help anybody.