Bug 88515

Summary: After waking up from sleep nouveau fails with errors
Product: xorg Reporter: MiroJanosik <mirojano.sikgeo>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
xorg,kern,syslog logs showing error none

Description MiroJanosik 2015-01-16 23:29:14 UTC
Created attachment 112364 [details]
xorg,kern,syslog logs showing error

After waking up from sleep desktop and everything works. Nouveau has errors on starting any 3D/OpenGl application (even 3d screensaver) and does not start the application. Application freezes, if it is fullscreen then it is not possible to do anything. In that case can't switch to alt+f2 console either. If 3d application was running during sleep then it hangs but keeps running.
After reboot everything is working again.

[18215.048015] nouveau E[Xorg[1439]] failed to idle channel 0xcccc0001 [Xorg[143
9]]
[18215.052005] [sched_delayed] sched: RT throttling activated
[18230.056016] nouveau E[Xorg[1439]] failed to idle channel 0xcccc0001 [Xorg[143
9]]
[18240.076005] BUG: soft lockup - CPU#0 stuck for 23s! [Xorg:1439]
[18240.076005] CPU: 0 PID: 1439 Comm: Xorg Tainted: G          IOX 3.13.0-43-generic #72-Ubuntu
[18240.076005] Hardware name: MSI MS-7309/MS-7309, BIOS V1.6 01/24/2007
[18240.076005] Call Trace:
[18240.076005]  [<f8b6b977>] ? nouveau_bo_rd32+0x27/0x30 [nouveau]
[18240.076005]  [<f8b70723>] nv84_fence_read+0x23/0x30 [nouveau]
[18240.076005]  [<f8b681f2>] nouveau_fence_update+0x52/0x80 [nouveau]
[18240.076005]  [<f8b6852d>] nouveau_fence_wait+0x1dd/0x4d0 [nouveau]
[18240.076005]  [<f8b70699>] ? nv84_fence_emit+0x39/0x50 [nouveau]
[18240.076005]  [<f8b68a66>] ? nouveau_fence_new+0x56/0xa0 [nouveau]
[18240.076005]  [<f8b66e8c>] nouveau_channel_idle+0x6c/0x90 [nouveau]
[18240.076005]  [<c1164a2d>] ? kfree+0xcd/0x110
[18240.076005]  [<f8b6ec8f>] ? nouveau_abi16_chan_fini+0x10f/0x170 [nouveau]
[18240.076005]  [<f8b6ec8f>] ? nouveau_abi16_chan_fini+0x10f/0x170 [nouveau]
[18240.076005]  [<f8b6eba6>] nouveau_abi16_chan_fini+0x26/0x170 [nouveau]
[18240.076005]  [<f8b6eec3>] nouveau_abi16_fini+0x33/0x70 [nouveau]
[18240.076005]  [<f8b65ea6>] nouveau_drm_preclose+0x36/0x70 [nouveau]
[18240.076005]  [<f86dc356>] drm_release+0x66/0x550 [drm]
[18240.076005]  [<c117b575>] __fput+0xc5/0x210
[18240.076005]  [<c117b6fd>] ____fput+0xd/0x10
[18240.076005]  [<c10725f1>] task_work_run+0x91/0xb0
[18240.076005]  [<c1058c5f>] do_exit+0x26f/0x8f0
[18240.076005]  [<c1059354>] do_group_exit+0x34/0xa0
[18240.076005]  [<c10672ac>] get_signal_to_deliver+0x18c/0x6a0
[18240.076005]  [<c100f26a>] do_signal+0x3a/0x9c0
[18240.076005]  [<c1066577>] ? do_send_specific+0x67/0x90
[18240.076005]  [<c100fc57>] do_notify_resume+0x67/0x90
[18240.076005]  [<c165c831>] work_notifysig+0x30/0x37


Graphics card: Nvidia GTX 260
OS: Ubuntu 14.04 with XFCE with latest updates
Linux 3.13.0-43-generic #72-Ubuntu SMP Mon Dec 8 19:35:44 UTC 2014 i686 athlon i686 GNU/Linux
Comment 1 Tobias Klausmann 2015-01-16 23:36:53 UTC
There were some major fence redesigns in kernel 3.18 and a fix in 3.19-rc2 or rc3, which might fix the problem, please retest with a recent kernel!
Comment 2 MiroJanosik 2015-01-18 00:30:06 UTC
Okay, it seems to fix the problem! I have followed few steps described here to update the kernel:
http://askubuntu.com/questions/119080/how-to-update-kernel-to-the-latest-mainline-version-without-any-distro-upgrade

So I did:
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-rc3-vivid/linux-headers-3.19.0-031900rc3-generic_3.19.0-031900rc3.201501060135_i386.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-rc3-vivid/linux-headers-3.19.0-031900rc3_3.19.0-031900rc3.201501060135_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-rc3-vivid/linux-image-3.19.0-031900rc3-generic_3.19.0-031900rc3.201501060135_i386.deb
sudo dpkg -i linux-*.deb
sudo update-grub

I made system sleep few times and OpenGl applications work afterwards (even as complex as HalfLife 2).

I have a question now - will this fix get into Ubuntu 14.04 LTS? Bugfixes should get into LTS, while it is supported, right?
Comment 3 Tobias Klausmann 2015-01-18 03:24:52 UTC
I don't know about Ubuntu, sorry. Try asking in a Ubuntu related channel or open a bug at their bugtracker and mention its fixed with 3.19-rcX.

Leaving this open for a while, just in case something problematic comes up...
Comment 4 Ilia Mirkin 2015-01-18 05:37:19 UTC
(In reply to Tobias Klausmann from comment #3)
> I don't know about Ubuntu, sorry. Try asking in a Ubuntu related channel or
> open a bug at their bugtracker and mention its fixed with 3.19-rcX.
> 
> Leaving this open for a while, just in case something problematic comes up...

Canonical decides what Ubuntu does, not nouveau. This is fixed upstream, so it's good from our perspective.

If you can identify which patch specifically fixes it, we can try to send it to stable, however a ton of stuff changed since 3.13 and it may not be possible to backport.

Marking this as fixed, if you identify the patch, start a discussion at nouveau@lists.freedesktop.org about it.
Comment 5 MiroJanosik 2015-01-19 19:21:43 UTC
Thanks guys.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.