Black screen after suspend and hibernate

Could you ensure you have the REISUB method ready before proceeding to reboot from the black screen.

Then execute:

systemctl suspend

Then please do the following:

journalctl --system --boot=-1 | grep "suspend entry"
journalctl --system --boot=-1 | grep "suspend exit"

then have a look at the begin and end time and post the output of:

journalctl --system --boot=-1 --since "YYYY-MM-DD HH:MM:SS" --until "YYYY-MM-DD HH:MM:SS"

where obviously --since is the datetime of suspend entry and --until is the datetime of suspension exit.

:+1:

I’m not sure if I did it in the good order. My laptop boots into hybrid mode, I switched to nVidia then ran systemctl suspend. From there I did the REISUB method and the commands given. Here is the result:

oct. 22 21:09:18 hp-pavilion15 systemd-sleep[3420]: Suspending system...
oct. 22 21:09:18 hp-pavilion15 kernel: PM: suspend entry (deep)
oct. 22 21:09:18 hp-pavilion15 kernel: Filesystems sync: 0.004 seconds

So no suspend exit.
:thinking:

Can you do a

journalctl --system --boot=-1 --since "YYYY-MM-DD HH:MM:SS"

instead? (I.E. no --until, unless the above is all you’ve got…)

Here it is: https://pastebin.com/kaGd29aP

1 Like

Could you run the following when the black screen occurs:

export DISPLAY=:0
xrandr --setprovideroutputsource modesetting 0x0 && xrandr --setprovideroutputsource modesetting NVIDIA-0 && xrandr --output eDP-1-1 --auto

and see what happens?

oct. 22 21:09:28 hp-pavilion15 kernel: ACPI: EC: interrupt blocked
oct. 22 21:09:28 hp-pavilion15 kernel: ACPI: Preparing to enter system sleep state S3

add kernel parameter pci=acpi

oct. 22 21:09:28 hp-pavilion15 kernel: unchecked MSR access error:

Looks like a kernel bug. :scream: Output of inxi --admin --verbosity=7 --filter --no-host --width, please?

Huh. It does come out of suspend:

oct. 22 21:09:28 hp-pavilion15 kernel: PM: suspend exit

Do @pobrn 's request first!

:innocent:

Furthermore, have you tried what happens if an external monitor is connected?

@pobrn Nothing happened after the commands, I will try connecting to an external screen.

inxi output: https://pastebin.com/txM8xJFu

LightDM only shows up on the external monitor when I start the laptop after suspend and after the login screen the laptop monitor works too

That’s interesting. What happens if you switch to an unused tty, and then immediately switch back to the tty where the X server is running? Aren’t there any i915 errors in journalctl right after resume?

1 Like

I switch to tty2 when the black screen happens, if I switch back to tty1 there is just a blinking cursor there. Should I startx on tty2 and then switch to tty1?

Do this first if TTY2 works…

Do you need more detailed help with that or are you OK with generic instructions?

Added pci=acpci to /etc/default/grub.
Here is journalctl after that: https://pastebin.com/aWJZispw

unchecked MSR access error: WRMSR to 0x123

Try kernel 5.9

oct. 23 14:43:57 hp-pavilion15 unknown[1033]: Error terminating login1 session: The connection is closed
oct. 23 14:43:59 hp-pavilion15 systemd[1]: lightdm.service: Main process exited, code=killed, status=9/KILL
oct. 23 14:43:59 hp-pavilion15 systemd[1]: lightdm.service: Failed with result 'signal'.
oct. 23 14:43:59 hp-pavilion15 systemd[1]: Failed to start Light Display Manager.

Those ones are weird though… Can you:

  • reboot
  • create a new user
  • log in there
  • suspend and come back there.

Does that work?

Also: Have you ever had another DE than XFCE on your PC?

Switched to kernel 5.9. I created a new user with useradd -m. If I switch to the new user then I don’t have optimus-manager, should I add the new user to sudoers and reinstall it there?

With 5.9, the error is still there :
oct. 23 18:28:14 hp-pavilion15 kernel: unchecked MSR access error: RDMSR from 0x123 at rIP: 0xffffffff9c871d44 (native_read_msr+0x4/0x30)

There is only XFCE on my laptop, the only thing I changed is LightDM GTK to LightDM WebKit. I tried changing back to LightDM GTK but that didn’t solve the problem.

:sob:

Try first without, (Bare naked virgin profile) and if that doesn’t work neither, only then make user admin, blah blah. :wink: :grin:

:+1:

But then how do I switch to nvidia graphics without optimus :thinking:, I’m confused. The black screen only happens when the laptop runs only on nvidia graphics

Judging from the fact that the display manager appears on an external monitor, but not on the internal display, I think the most probable cause is that the nvidia gpu somehow fails to send the images to the internal one.

1 Like

Is there maybe a way to indicate to the driver to select the internal monitor? I see these lines:

[   231.709] (II) LoadModule: "nvidia"
[   231.709] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[   231.710] (II) Module nvidia: vendor="NVIDIA Corporation"
[   232.544] (II) Applying OutputClass "nvidia" options to /dev/dri/card1
[   232.544] (II) Applying OutputClass "nvidia" options to /dev/dri/card1
[   232.544] (II) Loading sub module "glxserver_nvidia"
[   232.544] (II) LoadModule: "glxserver_nvidia"
[   232.544] (II) Loading /usr/lib/nvidia/xorg/libglxserver_nvidia.so
[   232.552] (II) Module glxserver_nvidia: vendor="NVIDIA Corporation"
[   232.698] (II) NVIDIA(G0): [DRI2]   VDPAU driver: nvidia
[   427.891] (**) |-->Screen "nvidia" (0)
[   427.891] (**) |   |-->Device "nvidia"
[   427.891] (==) No monitor specified for screen "nvidia".

Maybe that’s the problem?

What @pobrn is trying to say is:

I’ts a hardware issue because the nVidia isn’t wired u to the internal screen, only to the external monitor (which unfortunately is happening more often nowadays because manufacturers cut corners / make mistakes.

:sob: