Skip to main content
Topic solved
This topic has been marked as solved and requires no further attention.
Topic: [SOLVED] Linux Kernel cannot see my nvme ssd (Read 1885 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

[SOLVED] Linux Kernel cannot see my nvme ssd

Hello, I recently updated my artix runit install to get the latest graphics drivers. When I rebooted I was greeted with an error message saying it cannot find my UEFI boot partition on my nvme ssd. I have tried many different things, regenerating the fstab, reinstalling grub, and using efibootmgr to create a new boot option pointing to the drive, and none of them work. I believe the issue is with runit but I do not know for sure. I do have matlib32 enabled for steam, I don't know if that matters but I'll mention it anyway. I have attached an image of the error code.

Re: Runit cannot find boot drive

Reply #1
I'm not sure since it's still on initramfs stage, the but looks like the UUID of your partition might have changed. You may want to check that.
now only the dinit guy in artix

Re: Runit cannot find boot drive

Reply #2
So I checked again and i had the UUIDs mixed up. The UUID it can't find is the root partition and specifically the Filesystem UUID. The partitions I have for the main drive are /dev/nvme0n1p1 boot, /dev/nvme0n1p2 root, and /dev/nvme0n1p3 home. I'd rather not reinstall but if that is needed I am willing to do so.

Re: Runit cannot find boot drive

Reply #3
So I switched from grub to efistub to see if the issue was grub and I still got the same issue. I downgraded the kernel and headers to the previous version that worked, kernel version 5.7.6, and i still got the same issue. I then tried to downgrade the linux-firmware but pacman would not let me, the error was /usr/bin/tmpfiles: /sys/devices/system/cpu/microcode/reload: cannot create [Read-only file system]. However, I was able to uninstall the linux-firmware but now I do not have it installed because I get the same issue with pacman and with basestrap when I try to install the kernel. I don't know if this is important or not but I noticed that the error mentioned /usr/bin/tmpfiles and when I would boot the same message would show up saying /usr/bin/tmpfiles cannot be used in a function or something like that.

Re: Runit cannot find boot drive

Reply #4
What if you change your GRUB configuration from using UUID to using its partition directly (eg. root=/dev/nvme0n1p2 instead of root=UUID=abcd-abcd)? I really cannot reproduce this.
now only the dinit guy in artix

Re: Runit cannot find boot drive

Reply #5
I did try that and it brings up the same error. When im in the emergency shell and I ls /dev I can see my other drives but the nvme drive. I might just reinstall since it shouldn't take too long.

Re: Runit cannot find boot drive

Reply #6
I was able to downgrade the linux-firmware to version 20200519 and the kernel to 5.7.6 and now I am able to boot. The issue seems to be that when the kernel/firmware is upgraded the system no longer see my nvme drive.

Re: Runit cannot find boot drive

Reply #7
So the issue seems to be caused by the kernel because I tried the zen kernel which is version 5.7.9 and the nvme drive does not show up in the /dev folder. I going to change the title to Linux Kernel cannot see my nvme ssd.

Re: Linux Kernel cannot see my nvme ssd

Reply #8
The issue is with the Kernel. It seems to be a bug with kernel 5.* and was fixed for a bit but seems to be back. My current solution was to downgrade the Kernel to version 5.7.6 and downgrade all Nvidia drivers to 440.100.

 

Re: Linux Kernel cannot see my nvme ssd

Reply #9
Man, kernel and drivers are really hit and miss. Glad you can solve the problem.

Since this is not a runit problem, I'm moving this to somewhere else.
now only the dinit guy in artix