Frustrating.
I had the same problem, and I spent many hours investigating and fixing this issue.
It was completely trivial for me to reproduce. I had this problem with Ubuntu 14.04, and upgrading to Ubuntu 16.04 still persisted the issue.
My setup:
Nvidia GTX 950
Dual monitor: DVI and DisplayPort
Console: tried both with vga and without vga.
No nouveau drivers anywhere.
Nvidia-367
x86_64 Linux
I force the ‘ConnectedMonitor’ Option in X, because I don’t want my desktop resizing when I switch my KVM. The suspend-resume problems are not impacted by this. I had suspend-resume issues even before the ConnectedMonitor Option.
I tried all tricks suggested on the internet: forcing ‘chvt 1; sleep 3’ before suspend, to avoid Kerneloops at suspend.
I got to the point where suspend worked reliably every time. But then resume failed reliably. I’m seeing the same issues as many, many other people here: displays turn on but never show anything. The X-windows process takes 100% CPU, computer is completely unresponsive and you need to ssh into it.
Entirely disappointing. With Nvidia’s driver source (which I don’t have) and the Linux kernel source (which I do have), someone could debug this rather easily. The profusion of these bugreports suggests that there is an easy repro if someone would take the effort.
I appreciate that Sandip (and others?) at Nvidia are investigating this, but this is a productivity killer. For better or worse, many of us trust Nvidia on our work setup, and this is erodes that trust.
The problem also appears to be a recent introduction into the Nvidia drivers. I have owned the GTX950 for a while, and I only started noticing suspend-resume issues recently.
I do have an outcome here that might work for some people (depending on how new your display card is). I’ve reverted to NVIDIA-Linux-x86_64-352.79, and this fixes all suspend-resume problems for me. I got lucky: I have a relatively old graphics card. Not everyone is as lucky as me.
A market that pays top dollar for the latest hardware expects reasonable support.
I agree with djbuldog’s sentiment. I will be cautious before buying another Nvidia card. Life is too short to deal with nonsense like this. I have my own bugs to find and fix.