resume from suspend freezes system (GTX 970, Arch Linux, Kernel 4.4/4.7, NVIDIA 370)

OK, here it is:
http://s000.tinyupload.com/index.php?file_id=36890903954147799773

  • FRESHLY installed Linux Mint 18 (format harddisk).
  • installed nvidia drivers 370.23 straight from nvidia website
  • rebooted
  • after I got back into Linux mint I suspended the PC
  • waited 15 seconds, then tapped some random keys on the keyboard.
  • black screen bug. Can’t get into the OS.
  • Computer auto-reboots itself to do another attempt.
  • Computer gives up after about half a minute, and switches itself off (and stays off).
  • I manually switch on the PC and it fails again. Now I manually switch it off by long pressing the power button.
  • Once I’m back in Mint, I run the nvidia-bug-report.sh.

Please generated log file as soon as issue reproduce. Maye be you need to use remote ssh connection. And attach log to your existing post. Make note nvidia related messages/errors in dmesg .

I can’t even ping the computer at that stage so I have no idea how to approach this. Any ideas?

(What follows is an amalgam of two posts I recently made in another thread on the resume from suspend issue.)

Have you tried removing all other expansion cards to determine if a card conflict is at play?

Back when I was using an Asus GTX750-DCSL-2GD5, a StarTech PEX2IDE and a StarTech PCI300WN2X2 with an Asus SABERTOOTH 990FX R2.0 (UEFI 2501 at the time), resume from suspend worked fine.

But when I upgraded to an Asus STRIX-GTX960-DC2OC-4GD5 it no longer functioned–that is until I temporarily removed the superfluous StarTech cards, found that resume from suspend worked fine with the '960 after all and then reintroduced the other cards one-at-a-time until I identified the PCI300WN2X2 as the culprit. Swapping out that PCI card for the PCIe-based StarTech PEX300WN2X2 resolved the wake from suspend issue.

Then about a couple of months ago Asus released UEFI 2901 for the Sabertooth (the first UEFI update that 'board has had in over two years). So I applied it and then re-tested the PCI300WN2X2 with the STRIX-GTX960-DC2OC-4GD5 only to discover that wake from suspend now functions correctly with that combo.

The take-away:

Expansion card conflicts and UEFI updates can have an influence on wake from suspend functionality.

Addendum:

  • Before flashing a motherboard’s UEFI / BIOS, first read the relevant section in the 'board’s users manual then boot into the UEFI / BIOS and load ‘Setup Defaults’ (or however it’s worded) and then reboot before shutting the PC down.

  • Check out the link in my signature and scroll down to ‘Clearing the CMOS’.

  • If the above approaches fail to remedy the resume from suspend issue, then if possible try your graphics card in a different 16 lane PCIe slot (after once again clearing the CMOS).

Note:

Contrary to Internet lore re the need to install a graphics card in a motherboard’s first 16 lane slot to ensure the best performance, I’ve benchmarked my GTX 960 in both of my motherboard’s 16 lane slots and there was no practical difference in FPS or overall scores beyond a typical .xx % margin of error which favored neither slot.

Valley | UNIGINE: real-time 3D engine
[url]UNIGINE Benchmarks

Heaven | UNIGINE: real-time 3D engine
[url]UNIGINE Benchmarks

This issue is inhibiting my daily life as well. Not being able to suspend to RAM incurs about 5 minutes of reopening projects every time I want to start working. Is there anything that I can do to help?

Kernel: Linux AndrewMain 4.8.6-1-ARCH #1 SMP PREEMPT Mon Oct 31 18:51:30 CET 2016 x86_64 GNU/Linux

Graphics: GTX 1070 Founders

I have similar issue on lenovo ideapad z510. When I resume from suspend when nvidia gpu is used (with nvidia optimus), I always get black screen, system completely frozen.

Steps to reproduce are simply suspend and resume.

GPU: Nvidia GeForce GT 740M.

I got that issue with debian with kernel version 3.16.0, and gentoo with kernel versions 4.4.26 and 4.8.4, both with nvidia drivers version 361.28 as well as nouveau. So far I didn’t find any way to get that GPU working after suspend.

Just as a further note, both of my monitors are 4k hooked up through display port. Some people on the arch forums mentioned this explicitly as well

I have a Asus K555UQ Specs:

i5-6200u, 940mx

I have similar issues, main problem is nvidia card becomes unusable after suspend. It doesn’t matter if the card powered on or off before suspend. I tried with kernel 4.4, 4.8.6, 4.9rc3

Ubuntu 16.04 kernel 4.4:
1-Using nvidia-prime, nvidia card active
2-Sleep and resume >> black screen, unresponsive

1-intel card active
2-Sleep and resume >> works ok.
3-prime-select nvidia >> logout & login >> can’t past login screen

with bumblebee:
1-primusrun glxgears >> works ok
2-Sleep & resume >> works ok
3-primusrun glxgears >> nvidia gpu couldn’t accessed

So according to my trials when resuming nvidia card couldn’t restore its power state and becomes unusable to system. I tried with nvidia 364, 367, 370 so i’m not sure whether the problem is in the kernel or driver or bbswitch.

The solution mentioned here fixed the suspend issue for me: https://devtalk.nvidia.com/default/topic/955952/linux/struggling-with-my-geforce-gt-635m-and-the-nvidia-linux-driver-/

Barteks2x, i assume you mean this:

add acpi_osi=“!Windows 2013” to kernel command line for suspend/resume to work for kernels >3.14

This solution left the problem completely unchanged for me…

There are a few variations on that: https://bugs.launchpad.net/lpbugreporter/+bug/752542

FWIW

I suspect that how a motherboard’s UEFI / BIOS’ ‘Power’ and ‘DDR power down mode’ and ‘S3 Video Repost’ sections (or however they’re worded) are adjusted may influence the effectiveness of the following info:

pm-suspend(8): Suspend/Hibernate your computer - Linux man page
[url]https://linux.die.net/man/8/pm-suspend[/url]

Power management/Suspend and hibernate - ArchWiki
[url]https://wiki.archlinux.org/index.php/Power_management/Suspend_and_hibernate[/url]

UnderstandingSuspend - Ubuntu Wiki
[url]https://wiki.ubuntu.com/UnderstandingSuspend[/url]

(Power Management S3 Tricks and Tips)
Kernel/Reference/S3 - Ubuntu Wiki
[url]https://wiki.ubuntu.com/Kernel/Reference/S3[/url]

For the record, it doesn’t work with either systemctl suspend nor pm-utils. It has always worked until I switched to an nvidia GPU. I can check the BIOS, but nothing has changed in there for well over a year.

What’s the exact make, model # and revision # of your PC’s motherboard? I wouldn’t mind browsing through its manual myself just to see if I can find anything pertinent.

I seem to have the same issue.

One thing I’ve noticed is that when both of my monitors are connected hibernate/suspend does not work but when either of them are disconnected it work as it should. Disabling them is not enough, they need to be physically disconnected.

Some here noted that they have more than one monitor and no one specified they have only one. So i don’t know what the case is for most of you. But if most doesn’t have multiple monitors then perhaps mine is a different issue. Does that have, does disconnecting all but one make things work?

It is the MSI MPower Z77 board. I really doubt anything will be there, because it is definitely an Nvidia issue. With RadeonSI or Intel graphics set up, it is fine.

I’m guessing that you already use [S3]?

Page 56 of 100 of the English manual:

“▶ ACPI Settings
Press to enter the sub-menu.
▶ ACPI Standby State
Specifies the power saving mode for ACPI function
[S1] Sleep Mode. Hardware remains on.
[S3] Suspend to RAM. Turns off hardware. (Recommended)”

On my AMD motherboard I turn off HPET because it has no positive effect on how the m/b runs. Caveat: I don’t use ‘Secure Boot’ (because it isn’t) and I do use the CSM (Compatibility Support Module).

Page 57 of 100 of the English manual:

“▶ HPET
The HPET (High Precision Event Timers) is a component that is part of the chipset.
You can enable it, and will provide you with the means to get to it via the various
ACPI methods.”

Z77 MPOWER English manual
http://download.msi.com/archive/mnu_exe/E7751v4.0.zip

Beyond the above I didn’t see much else in the manual which could have a bearing on resume from suspend.

Just to clarify something you said earlier: resume from suspend works correctly with an AMD card or the motherboard’s on-board Intel graphics?

single monitor (lcd) ASUS ROG G751 laptop w/ GTX 980M

I think, this thread addresses the same issue?!
https://devtalk.nvidia.com/default/topic/919984/linux/resume-from-suspend-not-working-with-980-ti-drivers-352-370-kernels-3-16-4-4/1

Maybe someone can merge them?

Exactly the same problem here with:

Nvidia Driver Version: 375.10
Xorg: 1.18.4 (11804000)
Kernel: 4.8.6.1
Mainboard: Asus Z170-P D3
Bios: 2002
GPU: GTX Titan X (Maxwell)

Sometimes the system resumes correctly. But in > 50% of the cases it shows a black screen and when I SSH, I see Xorg on 100% load. Kill Commands have no effect.

If the machine is on sleep for some hours, resumes fail in 90+ percent of all cases.

nvidia-bug-report:

http://www.naanoo.com/upstream/nvidia-bug-report.log.gz