Rootfs on laptop without keyboard support

My laptop did not want to boot up and went into rootfs. The keyboard did not work, so I restarted and was able to go through the fall back to initramfs.

I still feel the need to know, why the keyboard in rootfs did not work, while it worked in Grub…

See more details about the previous steps here:

Hardware info:
Boot log:

$ lsblk -o name,type,size,PTTYPE,FSTYPE
loop0       loop 164,8M        squashfs
loop1       loop  55,6M        squashfs
loop2       loop  91,7M        squashfs
loop3       loop  53,2M        squashfs
loop4       loop     4K        squashfs
loop5       loop 114,4M        squashfs
nvme0n1     disk 476,9G gpt    
├─nvme0n1p1 part   260M gpt    vfat
├─nvme0n1p2 part    16M gpt    
├─nvme0n1p3 part  82,9G gpt    ntfs
├─nvme0n1p4 part     2G gpt    ntfs
├─nvme0n1p5 part 377,4G gpt    ext4
└─nvme0n1p6 part  14,4G gpt    swap

I hope that you can find something.

Thank you!

Are you using dracut or mkinitcpio?

If it is mkinitcpio, can we see your /etc/mkinitcpio.conf?

# vim:set ft=sh
# The following modules are loaded before any boot hooks are
# run.  Advanced users may wish to specify all system modules
# in this array.  For instance:
#     MODULES=(piix ide_disk reiserfs)

# This setting includes any additional binaries a given user may
# wish into the CPIO image.  This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries

# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way.  This is useful for config files.

# This is the most important setting in this file.  The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
##   This setup specifies all modules in the MODULES setting above.
##   No raid, lvm2, or encrypted root is needed.
#    HOOKS=(base)
##   This setup will autodetect all modules for your system and should
##   work as a sane default
#    HOOKS=(base udev autodetect block filesystems)
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS=(base udev block filesystems)
##   This setup assembles a pata mdadm array with an encrypted root FS.
##   Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
#    HOOKS=(base udev block mdadm encrypt filesystems)
##   This setup loads an lvm2 volume group on a usb device.
#    HOOKS=(base udev block lvm2 filesystems)
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr, fsck and shutdown hooks.
HOOKS="base udev autodetect modconf block keyboard keymap consolefont filesystems fsck"

# Use this to compress the initramfs image. By default, zstd compression
# is used. Use 'cat' to create an uncompressed image.

# Additional options for the compressor

A similar issue with xhci was reported recently.
It is possible that this driver is not in the system, or cannot be found by mkinitcpio when building the image.
You probably have a warning during kernel buildup, like this:

WARNING: Possibly missing firmware for module: 'xhci_pci'

I don’t know how to resolve this, but maybe someone else has an idea.

Did you try an external keyboard when this happened?
If not, do you have an external keyboard to test if it also happens with external?

Yes, this is, what happens.

I just cannot test that again, because I have fixed the original problem, so I cannot “unfix” it. :smiley:

What exactly? :thinking:

I missed this. Can you describe the fix?

What happens is the missing module xhci_pci.

My fix for the boot problem has happened in the meantime. Please see the link in my first post.


If the problem appears again, I will have an external keyboard nearby to test it. But my problem is mitigated for now, since the rootfs does not come up any more during boot.