Background
Typically I triple boot NixOS, Fedora 37, and Windows 11 happily on my 12th gen Intel Batch 2 Framework laptop. However, overnight I was suddenly stuck and completely unable to boot into either NixOS or Fedora.
On NixOS it displayed the bootloader (systemd-boot), then hung after the first step of stage 1, as it was trying to load the i915 module (which is the Intel graphics driver). None of my other stored NixOS configurations that I could roll back to would boot either. It would sit there until I rebooted.
In Fedora, it again reached the bootloader but would show a single _
in the top left corner of an otherwise completely black screen, and hang until I rebooted.
I was successfully able to boot into Windows, however it is not my primary concern because I normally run Linux.
Troubleshooting
I tried booting into many different live Linux environments, none of them very successfully, including Ubuntu 22.04, Fedora 36, PopOS 22.04. With Ubuntu I was able to boot using “safe graphics” and could reach the live environment. I double checked many bios settings, secure boot was off for example and everything looked good. The strangest part is that this broke overnight, and every Linux distro that I had booted into before worked perfectly up until now.
After rebooting countless times I decided to go nuclear. I backed up all my data, then went into Ubuntu and cleared and installed Ubuntu 22.04 on the entire drive. I also followed this guide to clear any bios settings that I might have changed and didn’t remember, to hopefully get it back to the way it worked on day one. Unfortunately, nothing changed. I still have to use safe graphics to boot into Ubuntu.
After more troubleshooting I ended up installing Fedora 36 onto it and upgrading to Fedora 37. To get into the Fedora installer, I had to set “nomodeset” in GRUB, which as it turns out is what “safe graphics” does for Ubuntu. Now I can successfully boot into Fedora and currently have that installed as the only OS on my drive.
In Fedora (GNOME), the About page shows that I am using Software Rendering when it should say something about Mesa Intel Graphics.
Fedora seems to have detected to add “nomodeset” by default, in /etc/default/grub
. When I remove “nomodeset” and increase the logging level, grub reports these messages:
[ OK ] Started plymouth-start.service - Show Plymouth Boot Screen.
[ OK ] Started systemd-ask-password-plymouth.path - Forward Password Requests to Plymouth Directory Watch.
[ OK ] Reached target paths.target - Path Units.
[ OK ] Reached target basic.target - Basic System.
...
[ OK ] Found device ...
[ OK ] Reached target initrd-root-device.target - Initrd Root Device.
[ 2.948315] i915 0000:00:02.0: [drm] VT-d active for gfx access
Then it hangs, the fans spin up a lot, and I have to hold down the power button to reboot…
Additionally, when I shut down my computer via software, it seems to hit the systemd target for shutting down, then the fans begin to spin faster until I physically hold down the power button to shut it off. This happens consistently, as in it cannot shutdown on its own and the fans begin spinning very fast. When I exit the BIOS in any way, it also cannot boot, it just displays a single _
in the top left corner of an otherwise completely black screen. I have to hold the power button again to shut it down and turn it back on.
Speed info
Relevant output of lspci -k
in Fedora with “nomodeset”:
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
Subsystem: Device f111:0002
Kernel modules: i915
Output of inxi -G
in Fedora with “nomodeset”:
[mbund@fedora ~]$ inxi -G
Graphics:
Device-1: Intel Alder Lake-P Integrated Graphics driver: N/A
Display: wayland server: X.Org v: 22.1.5 with: Xwayland v: 22.1.5
compositor: gnome-shell v: 43.1 driver: N/A resolution: 2256x1504~60Hz
API: OpenGL v: 4.5 Mesa 22.2.3 renderer: llvmpipe (LLVM 15.0.0 256 bits)
Output of uname -r
in Fedora with “nomodeset”:
6.0.11-300.fc37.x86_64
All default kernel params in Fedora
GRUB_CMDLINE_LINUX="nomodeset rhgb quiet module_blacklist=hid_sensor_hub"
I purchased my RAM from Framework themselves, but I have a third party SSD, the SK Hynix Platinum P41 1TB.
Final thoughts
I was not doing anything to the functionality of the system (like messing with the root filesystem) just before everything stopped working, and anyways that should be negated by me completely nuking the SSD. It is important to note that the night that it happened my battery completely drained so I had to plug it in before I learned that I wasn’t able to boot anymore.
My theory right now is that my integrated graphics are completely not responding, because only those distros that have fallbacks to software rendering work at all. Only thing is that I have no idea how that happens or how to fix it.
Update 1
I tried the following kernels in Fedora, unsetting “nomodeset” in GRUB before boot. Below each kernel version are any relevant messages, just before the system hangs and needs to be manually rebooted:
kernel-5.16.20-200.fc35.x86_64
[ 2.944679] i915 0000:00:02.0: Your graphics device 46a6 is not properly supported by the driver in this kernel version. To force driver probe anyway, use i915.force_probe=46a6
kernel-5.17.14-200.fc35.x86_64
[ 2.949502] i915 0000:00:02.0: [drm] VT-d active for gfx access
[ 2.949522] fb0: switching to i915 from EFI VGA
kernel-5.18.19-200.fc36.x86_64
[ 2.949502] i915 0000:00:02.0: [drm] VT-d active for gfx access
kernel-5.19.17-300.fc37.x86_64
[ 2.949502] i915 0000:00:02.0: [drm] VT-d active for gfx access
kernel-6.0.11-300.fc37.x86_64
[ 2.949502] i915 0000:00:02.0: [drm] VT-d active for gfx access
kernel-6.1.0-0.rc8.58.fc38.x86_64
[ 2.949502] i915 0000:00:02.0: [drm] VT-d active for gfx access
If I set VT-d
off in the BIOS, it hangs on
[ OK ] Reached target initrd-root-device.target - Initrd Root Device.
Related articles
https://community.frame.work/t/can-only-start-linux-with-option-nomodeset/21314
Any help would be appreciated!