Blank display and graphics glitches after rebooting without external monitor

I have a Dell XPS 15 notebook with a docking station that is almost always attached. So I basically never use the internal display.
Yesterday I was preparing for my upgrade to Fedora 35. So I updated my Fedora 34 packages and rebooted to make sure everything is still working and everything was fine indeed. So I started downloading the package for the upgrade to 35 which I was planning to do now. The download went fine and I put the notebook to hibernate then. This morning I took my notebook with me (without the docking station of course) and this is what happened:

I turned the notebook on and was greeted with grub as usual and selected the latest kernel.
Then the screen went blank and started showing weird graphics artifacts on the whole screen (horizontal lines, random noise etc). I then blindly typed in my disk decryption password and managed to boot back into my hibernated session (no black screen or glitches anymore). I then decided to reboot with the previous kernel to see if the graphics glitches go away then. But it just got worse. Now after booting the screen remains black/glitched. I can still interact with the system e.g. the volume-up shortcut still works and makes its usual beep sound. I can also switch to the tty modes, but I still don’t get display output.

I tried rebooting using the rescue mode with the same result and then I tried booting with the latest kernel again, this time removing every custom kernel parameter I’ve been using. But the problem is still not going away.

Any ideas what I can do now?

The notebook as an AMD GPU and an Intel iGPU btw.

Hi, could you post here your current kernel parameters?

Trying to upgrade while booting from a hibernated state seems rather risky. You should never do anything serious to the system without having done a clean boot before hand.

I suspect the graphics issue was because you hibernated with the docking station & external monitor in use then booted with neither attached so the saved graphics config caused the issue. You probably also did the last update with the docking station attached so the kernel & graphics is configured for that condition and not for a clean laptop.

A clean boot with just the laptop screen and using an older kernel should be possible, then you need to do sudo dnf upgrade followed by sudo dnf distro-sync, then reboot again. You may even need to boot to run level 3, or use F2 or F3 to get to a terminal where the graphics are not an issue to run those commands.

Once you are getting a clean boot with the latest kernel you should once again do the download portion of the version upgrade before you complete the reboot step.

Just for note: If I’m not mistaken, we could also prevent the system from load the saved session during the boot by removing resume=<swap location>.

I think you are right. The OP should only need to edit the line that begins with linux in grub when booting. He can press the ‘e’ key to edit the grub line, delete the part that says resume=<resume location> then continue the boot with ctrl+X and it should do a normal boot without the hibernation config affecting it.