Bug 80300

Summary: [NVE7] Fails to suspend on 3.15
Product: xorg Reporter: Eric Swanson <e.swanson+xorgbugs>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg from 3.15 none

Description Eric Swanson 2014-06-20 18:20:13 UTC
After upgrading to:
Linux svoboda 3.15.1-1-ARCH #1 SMP PREEMPT Tue Jun 17 09:32:20 CEST 2014 x86_64 GNU/Linux

nouveau fails to suspend. The interesting dmesg lines are:
[ 1408.108662] nouveau E[   PDISP][0000:01:00.0][0xc000917c][ffff8804261aab80] fini: 0xc2071088
[ 1408.108663] nouveau E[   PDISP][0000:01:00.0][0xc000917c][ffff8804261aab80] failed suspend, -16

I have one output connected, an active DisplayPort -> DVI adapter to drive my 27" 2560x1440 monitor.

The card is a Quadro K2000M (NVE7 GK107).

When I was on linux 3.14 using this adapter, suspend worked, but it would fail during resume - my display would not come back up, but restarting X would fix it. Unfortunately, I never captured the dmesg from that. The following two lines were present, however.

[54004.956815] nouveau E[   PDISP][0000:01:00.0] DP:0006:0f42: failed to read DPCD
[54004.958586] nouveau E[   PDISP][0000:01:00.0] DP:0006:0f42: link training failed
Comment 1 Eric Swanson 2014-06-20 18:20:56 UTC
Created attachment 101448 [details]
dmesg from 3.15
Comment 2 Tom Li 2014-06-20 19:59:55 UTC
possible duplicate: https://bugs.freedesktop.org/show_bug.cgi?id=80013
Comment 3 Eric Swanson 2014-06-20 21:47:16 UTC
eswanson@svoboda ~$ sudo cat /sys/kernel/debug/vgaswitcheroo/switch
0:DIS: :DynPwr:0000:01:00.0
1:IGD:+:Pwr:0000:00:02.0

I've always used bbswitch and multiple Xorg.conf files to manage my two GPUs, so I'm not sure how to interpret the above, but it doesn't look the same as in #80013.
Comment 4 Eric Swanson 2014-06-20 23:50:06 UTC
Alright, after a long troubleshooting session assisted by imirkin on #nouveau, I tested the following configurations:

v3.15 from Linus's github tree: suspends fine, but has the "3.14" error on resume
linux-3.15.y from linux-stable tree: suspends fine, but has the "3.14" error on resume
drm-fixes from airlied's tree: fails to boot (hangs after loading initrd and decrypting my drive, but before running anything on /. It may not be mounting root. I'm using btrfs, and I don't know what the mount line in console looks like for that fs.)
drm-next from airlied's tree: works! no errors on suspend or resume.
Comment 5 Ilia Mirkin 2015-10-22 04:30:38 UTC
Since drm-next which allegedly worked eventually went into 3.16, I'm assuming all's well here. If not, feel free to reopen with updated info.

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.