Most recent testing: 3.14-rc7 mainline.
As suggested on IRC by imirkin, returning -EBUSY instead of -EINVAL from
nouveau_pmops_runtime_suspend() avoids driver to fall too far to the ground.
When returning -EINVAL connectors get being seen as "disconnected" and there is
no way to get them connected anymore.
When returning -EBUSY the connectors stay functional but DE (enlightenment)
complains about missing crtc and all that is visible is black background and a
cursor that response to mouse/trackpad.
Way to reproduce:
Have xorg running, then for each avtive output call:
xrandr --output $OUTPUT --off
When last output got marked off runtime-suspend kicks in.
Same/similar behavior has been observed on radeon (I don't remember the exact
kernel releases, but older ones got console to display when switching VTs while
newer failed to do so).