So, when I suspend my laptop, then wake it up later, my laptop does turn on, I'm able to, for example, turn up and down the volume with audio confirmation using the kepboard, but my screen remains black and doesn't show anything until after I restart my laptop.
16 Answers
It is the buggy nouveau driver again. That's what solved the issue for me.
Edit the file /etc/default/grub
(using Vi editor -- some users have not been able to save after editing in Vi and have had to use the alternate "Ex" editing mode, which substitutes sudo edit
below, then Alt+:w and :x for the save and exit commands).
$ sudoedit /etc/default/grub
Add nouveau.modeset=0
to the line that says GRUB_CMDLINE_LINUX
.
GRUB_CMDLINE_LINUX="nouveau.modeset=0"
Then press CtrlO then Enter to save the file and CtrlX to leave Editor.
Run
$ sudo update-grub
Now reboot.

- 449
-
8
-
Seems to work for me. Using GTX1050 and nvidia driver, with Samsung 4K monitor 28 inch – Roland Aug 20 '18 at 09:57
-
8I have a NVIDIA GTX1050 Ti on 18.04. For me this solution screwed my display resolution without the option to fix it after a reboot. Went to "Software and Updates" (it's in the application list), in "Additional Drivers" I found it was using "X.Org X Server Nouveau Display Driver" and not the NVIDIA provided driver. I selected NVIDIA driver and removed the nouveau.modeset=0 (suggested above) did update-grub and rebooted. Now suspend/resume seems to work well. Hope this helps someone. – Ravi Jul 25 '19 at 12:09
-
3
-
1@Ravi followed your suggestion and it was still happening. Turns out my screensaver was enabled (was a black screen). This can be turned off in Screensaver preferences – lasec0203 Oct 02 '20 at 02:53
-
Worked for me on a RTX2070 and 2x GTX1080Ti. I think the real culprit was the MSI 144Hz monitor but I can't be sure. – aj.toulan Apr 07 '21 at 16:57
-
-
This didn't work for me, but I saw somewhere else where they said to update
GRUB_CMDLINE_LINUX
tonouveau.blacklist=1
and that did work. – Yechiel K Apr 18 '21 at 16:59 -
2
-
-
This horrible suggestion destroyed the boot of my 22.04lts ubuntu completely... It can't boot normally, only with an old kernel version, with discrete Intel graphics and my Nvidia driver is not visible by the system at all((( I reverted this GRUB_CMDLINE_LINUX flag to an empty string, updated grub and, rebooted and still see that black window on the normal ubuntu boot....fuck....! – Alex-Bogdanov May 09 '23 at 14:41
That seems graphics card driver problem.
Try Ctrl + Alt + F3 then Ctrl + Alt + F2 (might be F7) this might turn on display.
But it's temporary solution.
You may want to persistent solution then you can try to upgrade or change your graphics driver or try @cascagrossa's grub settings solution.

- 839
-
2This solutions works for my setup. 2 monitors connected via DP to an nvidia 1080. When my power settings turn off my monitor 9/10 when resuming my secondary monitor receives the "No display signal" message and remains off. Using these key combinations has worked every time. thanks! – John Jan 06 '19 at 22:08
-
This used to work for me, but with some recent upgrade it has stopped working. On an MSI GP62/6QE. – talonx Feb 08 '20 at 15:22
-
I am glad this works for me But is any permanent fix to this? I have already updated the nvidia driver to the latest. – ohmygoddess Nov 03 '21 at 23:19
-
Hello I didn't found any persistent solution. Did you tried other answers? – Almas Dusal Nov 09 '21 at 09:37
Ubuntu 21.10/22.04 NVIDIA 470/510 nv_restore_user_channels
bug
This started happening to me as soon as I moved to Ubuntu 21.10 on my Lenovo ThinkPad P51 NVIDIA Quadro M1200, and based on kernel traces, it is this exact bug: https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-510/+bug/1946303 My duplicated investigation: https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-510/+bug/1953674
To reproduce the problem easily, I had to disconnect the power cable from my laptop and be on battery only. Otherwise, the problem would only happen sometimes, and more commonly after suspending for a few hours.
Workarounds:
option 1: the bug report links to https://forums.developer.nvidia.com/t/fixed-suspend-resume-issues-with-the-driver-version-470/187150/3 from heroic user humblebee which has workaround:
sudo systemctl stop nvidia-suspend.service sudo systemctl stop nvidia-hibernate.service sudo systemctl stop nvidia-resume.service
sudo systemctl disable nvidia-suspend.service sudo systemctl disable nvidia-hibernate.service sudo systemctl disable nvidia-resume.service
sudo mv /lib/systemd/system-sleep/nvidia ~/nvidia.bak
and reboot.
In case you nuke it, the contents of
nvidia.bak
are:#!/bin/sh
case "$1" in post) /usr/bin/nvidia-sleep.sh "resume" ;; esac
That post gives their root cause:
the 470 driver migrated to systemd method while previous versions relied on Kernel Driver Callback. Apparently this is broken on some setups and kernels.
option 2: give up acceleration and PURGE EVERYTHING FROM NVIDIA: uninstall all nvidia packages (
dpkg -l | grep -i nvidia
,sudo apt uninstall
), and purge their configs as well (sudo apt purge ...
). The config purging is fundamental, because as seen on Option 1), the configs are a key root cause of the issue.Note that even non graphic stuff like NVIDIA's CUDA/OpenCL package was still breaking things, notably I couldn't suspend after removing the graphics but keeping them, related: Ubuntu 18.04.2 immediately wakes up from suspend
option 3: ditch Nvidia and get yourself and AMD GPU in case you don't care about CUDA. Why did I ever buy a laptop with a discrete GPU? I played with CUDA like 10 times over 5 years. Just rent an Nvidia GPU on AWS if playing with CUDA very occasionally is your use case.
It is easy to know if you've hit the same bug or not, just look for the following stack traces on your dmesg.
Because you are likely shutting down the computer and restarting, you have to look for them in the dmesg of the previous boot as per How to find previous boot log after Ubuntu 16.04+ restarts? :
journalctl -b-1
The traces are:
WARNING: CPU: 0 PID: 18016 at /var/lib/dkms/nvidia/510.47.03/build/nvidia/nv.c:3935 nv_restore_user_channels+0xce/0xe0 [nvidia]
Call Trace:
<TASK>
nv_set_system_power_state+0x22b/0x3e0 [nvidia]
nv_procfs_write_suspend+0xe9/0x140 [nvidia]
proc_reg_write+0x5a/0x90
? __cond_resched+0x1a/0x50
vfs_write+0xc3/0x250
ksys_write+0x67/0xe0
__x64_sys_write+0x19/0x20
do_syscall_64+0x61/0xb0
? exit_to_user_mode_prepare+0x37/0xb0
? syscall_exit_to_user_mode+0x27/0x50
? __x64_sys_newfstatat+0x1c/0x20
? do_syscall_64+0x6e/0xb0
? syscall_exit_to_user_mode+0x27/0x50
? do_syscall_64+0x6e/0xb0
? asm_exc_page_fault+0x8/0x30
entry_SYSCALL_64_after_hwframe+0x44/0xae
WARNING: CPU: 0 PID: 18016 at /var/lib/dkms/nvidia/510.47.03/build/nvidia/nv.c:4152 nv_set_system_power_state+0x2d0/0x3e0 [nvidia]
nv_procfs_write_suspend+0xe9/0x140 [nvidia]
proc_reg_write+0x5a/0x90
? __cond_resched+0x1a/0x50
vfs_write+0xc3/0x250
ksys_write+0x67/0xe0
__x64_sys_write+0x19/0x20
do_syscall_64+0x61/0xb0
? exit_to_user_mode_prepare+0x37/0xb0
? syscall_exit_to_user_mode+0x27/0x50
? __x64_sys_newfstatat+0x1c/0x20
? do_syscall_64+0x6e/0xb0
? syscall_exit_to_user_mode+0x27/0x50
? do_syscall_64+0x6e/0xb0
? asm_exc_page_fault+0x8/0x30
entry_SYSCALL_64_after_hwframe+0x44/0xae
I was also seeing the following ACPI error:
ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.LPCB.EC.HKEY.DEVT.PEGS], AE_NOT_FOUND (20210331/psargs-330)
No Local Variables are initialized for Method [DEVT]
Initialized Arguments for Method [DEVT]: (1 arguments defined for method invocation)
Arg0: 00000000fe968048 <Obj> Integer 00000000000000D3
ACPI Error: Aborting method _SB.PCI0.LPCB.EC.HKEY.DEVT due to previous error (AE_NOT_FOUND) (20210331/psparse-529)
Related:
- Ubuntu 21.10 resume produces blank screen
- Suspend not working: Ubuntu 20.04 (does not work at all) / 21.10(in battery mode does not work )
- Suspend not working properly (cannot wake up) on Ubuntu 20.04 with NVIDIA
- Ubuntu 21.04 won't wake from sleep
- Getting suspend to work on Ubuntu (21.10 - impish release)?
- https://superuser.com/questions/1699286/ubuntu-21-10-suspension-problems
- https://www.youtube.com/watch?v=_36yNWw_07g
- https://itsfoss.community/t/ubuntu-21-10-not-reawakening-from-sleep/7782

- 28,474
for me switching from gdm3 to lightdm display manager did the trick

- 71
-
For this, I did
apt remove gdm3
& it auto-switched to ligthdm (I think). Works like a charm, but I'd rather have gdm3 back if possible :( – shad0w_wa1k3r Apr 22 '19 at 14:50 -
Lghtdm hangs and crashes sometimes, gdm3 is way better than lightdm – Kritarth Sharma Jan 15 '24 at 18:26
If on Ubuntu 22.04.2, or any Ubuntu OS using Wayland
See my answer here: Wayland window manager causes my computer to stay on a black/blank screen and not wake up. I present 3 fixes there, in detail, so check them out first.
I've also started documenting these types of issues and fixes on my personal website, so I can keep track of them, since I need them myself every time I upgrade to the latest version of Ubuntu: Common ways to fix video driver (and related) issues in Linux Ubuntu.
Last resort: do the kernel interrupt soft reboot process before doing a hard reboot
Remember: before you hold down the power button to hard reboot, you can always soft reboot with this funky sequence:
Hold down Ctrl + Alt + PrScr, then press the following keys one-at-a-time while holding those first 3 keys down the whole time: R, E, I, S, U, B.
Note that on some (many?) laptops/keyboards,the PrScr button may require your Function key, Fn, to activate it, so you may have to hold down Ctrl + Alt + PrScr + Fn instead, while typing the REISUB reboot key sequence.
I don't remember where I learned this, but I read it from someone else years ago on Ask Ubuntu or SuperUser somewhere. The last key, "B", stands for 'B'oot. So, when you press that key your computer will restart.
Keep this in mind for any Linux problem. Only do a hard reboot if this soft reboot sequence first fails.
A few final thoughts
- If you have a Yubikey plugged in, unplug it! It enumerates itself as a USB keyboard to your computer and may have a "jammed key" or otherwise interfere with your computer's normal operation. I make a USB keyboard device called the "Computa Pranksta" and sometimes have a similar problem.
- You may have a hardware problem, as I once had on my computer here. To test this, boot into your BIOS/UEFI boot menu and choose to run a full hardware diagnostics test suite, assuming your computer has such an option from the factory. It may reveal bad RAM, a bad motherboard, or something else.
- This answer by @Vijay Prema looks promising, but unfortunately I don't have the BIOS password on the computer I'm having problems on, so I can't change the BIOS settings to find out.

- 9,155
-
1Regarding the key-sequence for rescue, this link has more detail explanation. (including REISUB; like as Reboot Even If System Utterly Broken). – agfe2 Aug 06 '21 at 10:25
Here is what fixed this issue for me on Kubuntu 20.04 Intel NUC PC (NUC8i7HVK), which has Intel HD graphics + embedded Radeon RX Vega M GH:
I went into UEFI BIOS settings and enabled PCIe ASPM (Active State Power Management). I left some other settings such as "Native ACPI OS PCIe" disabled
This is very easy to test so give it a shot and see if it helps.

- 496
- 3
- 9
-
Saved me, thanks. I had a few options - Off / L0 / L1 / L0 and L1. I chose the last one and it fixed it. – homebrand Dec 14 '20 at 06:43
i fixed it by changing Graphics BIOS configuration: Advanced -> Built-In Device Options -> Graphics, then switched from Hybrid Graphics to UMA Graphics. (on an HP laptop)

- 21
-
Thanks, worked for ZBook G5 Studio. Graphics setting seems to be problematic for HP's using Linux 18.04 or 19.04. I changed it from Hybrid to Discrete to make the Linux Installer work. Changing to UMA fixed this issue, but does disable the HDMI port. – javatestcase Aug 25 '19 at 15:24
Sorry if what I'm saying is weird (I'm using the google translator). In my case, I am using an Asus Vivobook S15. After desperately searching, I accidentally gave the solution (in my case) and I wanted to share it. What I did was install the Unity Desktop:
$ sudo apt install ubuntu-unity-desktop
And although it seems absurd, it began to work, almost magically. I hope this information is useful for someone. A greeting!

- 11
For me worked:
sudo nano /etc/default/grub
And edit:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="persistent"

- 141
I've found that simply pressing the function ("Fn") key wakes the screen up when all else fails. All else being other random key-resses.

- 582
- 8
- 34
I tried all the answers given in this post, none of them helped me(changed drivers, updated drivers, edited /etc/default/grub, changed display manager, made more swap, spent some hours, prayed to laptop).
I then finally gave up & thought to enable hibernate mode, while enabling that I ran
cat /sys/power/state
Which gave me
disabled
Then I felt it is due to UEFI boot mode
in BIOS. Made that option to legacy support
which enabled another option Boot priority
, let this be default as UEFI First
.
After this I am able to resume the system after suspend.
cat /sys/power/state
now gives more options which has suspend
.
This was done on Legion Y540 (GTX 1650 with Nvidia drivers - 418 (no IGPU) /Ubuntu 20 LTS/ Kernel 5.4/ latest BIOS as of date)
P.S. Windows never had any problem resuming from sleep.

- 354
- 1
- 4
- 14
For KDE / Kubuntu:
Along with changing volume, I could also see the mouse cursor and was able to move it around in the black background(screen). Because of the black "screen", I was not able to login/logout or perform a graceful shutdown or restart.Previously, killing plasmashell or Xorg from tty, would fix the issue, however this resulted in loss of open applications/windows and unsaved buffer data (like text in Kate etc.)
I finally figured out that I could kill kscreenlocker instead. To do the same.
ctrl + alt + f2
pkill -9 kscreenlocker_g
orpkill -9 kscreenlocker_greet
ctrl + alt + f1
Now, the kscreenlocker_greet should have restarted, allowing user login!
Note: This solution is restricted to KDE users only, however it doesn't require changing drivers/display settings, as suggested by above answers.
Cheers!

- 101
Probably the equivalent of someone pressing buttons to see if it fixes their problems, but looks like adding the persistent
keyword to the GRUB_CMDLINE_LINUX_DEFAULT
line did the trick for me.
What used to happen is every time I would lock my screen, it turned off my monitor.
After adding the persistent
keyword to the GRUB_CMDLINE_LINUX_DEFAULT
line of the /etc/default/grub
file and running sudo update-grub
, my screen no longer turns off after locking.
Nowadays, I can come back and enter my password to login and continue my work like a pro without having to do the ALT
+ F1
, F2
, F3
key combination that some of you may have gotten used to!
THANKS persistent
KEYWORD IN MY GRUB_CMDLINE_LINUX_DEFAULT
LINE! (and also megashake)
Here's a sample of my /etc/default/grub
file.
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=menu
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian
GRUB_CMDLINE_LINUX_DEFAULT="vga=0 rdblacklist=nouveau nouveau.modeset=0 acpi_osi=Linux persistent"
GRUB_CMDLINE_LINUX=""
Uncomment to enable BadRAM filtering, modify to suit your needs
This works with Linux (no patch required) and with any kernel that obtains
the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
The resolution used on graphical terminal
note that you can use only modes which your graphic card supports via VBE
you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=1024x768
Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
Uncomment to get a beep at grub start
GRUB_INIT_TUNE="480 440 1"
#GRUB_DISABLE_OS_PROBER=false

- 119
-
Spoke too soon - this really fkn sucks. How hard is it to solve this problem? What I did different was install xscreensaver and fired up the daemon. After messing around with it a couple of times, I removed it. guess it didn't remove it all completely. I just did an apt-get autoremove just then... probably removed some other setting. Idk... Frustrating. – Aries Mar 13 '22 at 11:38
- Bring pointer[ arrow ] to the bottom of screen
- Hold down left click bar which locate below touchpad of laptop then push arrow toward to center of screen which move the screen up and you will see the blank bar on the bottom of screen then click it .... It works for me every time....Good luck...
This seems to work for me (as a temporary solution).
Device: HP 245 G5
OS: Xubuntu 18.04
When your screen is blank, this sequence of actions seems to do the trick:
(wait 5 seconds)
CTRL + ALT + F2 (wait a second)
CTRL + ALT + F3 (wait a second)
CTRL + ALT + F7 (wait a second)
ESC (wait a second)
ENTER (3 times XD)
Close your laptop (wait 5 seconds).
Open back your laptop.
And the terrific blank screen is gone.

- 99
- 1
- 1
- 4
-
15
-
I suspended my Ubuntu 18.04 laptop. Normally it wakes up, but about every 3 to 5 suspends it doesn't. This didn't work for me. :( – Gabriel Staples Oct 24 '20 at 05:41
- Just try to change the boot mode to UEFI in bios.
- I too encountered the same problem in my lenovo laptop.
- Just changed the boot mode and i am running it flawlessly

- 9
nvidia-driver-525
. Disabling some Nvidia services worked for me. – Danijel Jan 24 '23 at 08:11