kungpaogao
Posts: 10
Joined: Thu Feb 08, 2018 6:11 am

[Guide] Fixing freeze on wake from suspend

Thu May 31, 2018 5:11 pm

Issue

After installing proprietary Nvidia drivers (nvidia-glx-drivers-current), the laptop fails to wake from suspend. Instead, the user is left with a blank, black screen that does not respond to anything—not even Ctrl+Alt+Fx to get into TTY modes. The only solution is to force shutdown the laptop by holding the power button.

This issue has been described in a few posts, including a bug tracker issue:
Diagnosis

In the first post I linked above, some of the posts describe an issue slightly different than the one I ran into, which involves freezing/unresponsiveness after waking the laptop from suspend. If your issue is different, the fix I describe below may not work.

To determine if your issue is the same, you should suspend your laptop, force shutdown/reboot and then run the following command

Code: Select all

sudo journalctl -b -1 -e -t kernel

About this command:
  • sudo - admin rights because we're reading system stuff
  • journalctl - a command that allows us to view system logs
  • -b -1 - an option that allows us to choose the boot from which we want to view logs; -1 is the last boot
  • -e - an option that brings us to the end of the logs, where we can read the logs from the last boot
  • -t kernel - an option that shows us logs from a certain identifier; in this case, we only need to view the logs from the kernel
You should see an output similar to mine

Code: Select all

...
May 31 11:03:30 gaosolus kernel: PM: suspend exit
May 31 11:03:30 gaosolus kernel: NVRM: GPU at PCI:0000:03:00: GPU-f3410b7e-4012-9ccc-6f5d-9ce7c2b2a4fc
May 31 11:03:30 gaosolus kernel: NVRM: Xid (PCI:0000:03:00): 79, GPU has fallen off the bus.
May 31 11:03:30 gaosolus kernel: NVRM: GPU at 0000:03:00.0 has fallen off the bus.
May 31 11:03:30 gaosolus kernel: NVRM: A GPU crash dump has been created. If possible, please run
                                 NVRM: nvidia-bug-report.sh as root to collect this data before
                                 NVRM: the NVIDIA kernel module is unloaded.
May 31 11:03:30 gaosolus kernel: rfkill: input handler disabled
May 31 11:03:30 gaosolus kernel: IPv6: ADDRCONF(NETDEV_UP): enp1s0: link is not ready
May 31 11:03:30 gaosolus kernel: r8169 0000:01:00.0 enp1s0: link down
...
where the important part is the "GPU has fallen off the bus." If you have the same error, then this fix should work for you.


Fix

Summary: the fix is to add the following kernel boot parameters

Code: Select all

acpi_osi=! acpi_osi='Windows 2009'

Here's a step-by-step how to add the boot parameters:
  1. Open Terminal and execute the following command

    Code: Select all

    echo acpi_osi=! acpi_osi=\'Windows 2009\' | sudo tee /etc/kernel/cmdline
    This creates a new file (unless you've added other kernel parameters before) and adds the kernel boot parameters we need to fix the issue.
  2. Update the bootloader using the following command

    Code: Select all

    sudo clr-boot-manager update
  3. Reboot
  4. (Recommended) After rebooting, you can check that the boot parameters were applied by running the following command

    Code: Select all

    cat /proc/cmdline
    The arguments we just added should be at the end of the output.
After a reboot, you should be able to suspend and wake from suspend without freezing! Yay!

References

I definitely did not discover this on my own. Some of these links may provide further explanation as to what these commands actually do.


I hope this helps! Also, feel free to reply with any additional information/fixes/whatever!
Last edited by kungpaogao on Sat Aug 11, 2018 9:21 pm, edited 1 time in total.

kungpaogao
Posts: 10
Joined: Thu Feb 08, 2018 6:11 am

Re: [Not working][Guide] Fixing freeze on wake from suspend

Tue Aug 07, 2018 4:35 am

Update (2018.08.06)

Okay, so it seems like this solution is no longer working... The freeze on wake is back again (on my machine) with similar symptoms as before ("GPU has fallen off the bus").

I'm guessing that this may have to do with either a kernel update or Nvidia driver update, but I'm a little hesitant to rollback at the moment.

Also, for future reference, here are some more links that relate to the issue:

kungpaogao
Posts: 10
Joined: Thu Feb 08, 2018 6:11 am

Re: [Guide] Fixing freeze on wake from suspend

Sat Aug 11, 2018 9:26 pm

Update (2018.08.11)

Okay, so it seems like a recent kernel or graphics driver update has made suspend work correctly again. The original solution seems to work again.

Return to “Tutorials”