New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Keyboard not initialize before rd.cmdline=ask
prompt
#728
Comments
The cmdline=(
rd.cmdline=ask
rw
rd.luks.name=$(cryptsetup luksUUID /dev/disk/by-partlabel/cryptsystem)=system
root=LABEL=system
zswap.enabled=1
zswap.compressor=lz4
zswap.zpool=z3fold
)
kmods=( lz4 lz4_compress serio psmouse atkbd hid usbhid isp116x-hcd thinkpad_acpi )
dracut --uefi --early-microcode --kver $kver --kernel-cmdline="${cmdline[*]}" \
--force-drivers=" ${kmods[*]} " \
--uefi-stub /usr/lib/systemd/boot/efi/linuxx64.efi.stub \
/efi/EFI/archlinux/linux.test.efi
efibootmgr --create --disk /dev/disk/by-label/ESP --label 'Arch Linux (test)' \
--loader EFI/archlinux/linux.test.efi Can someone test |
Hmm, this works for me with Fedora 31 and current master |
Just try it with a Fedora VM |
I'm also experiencing this. I notice that the caps lock light does not illuminate, as if the USB drivers have not been loaded. There's unfortunately no serial port on this hardware. |
This issue is being marked as stale because it has not had any recent activity. It will be closed if no further activity occurs. If this is still an issue in the latest release of Dracut and you would like to keep it open please comment on this issue within the next 7 days. Thank you for your contributions. |
I'm on Archlinux, with dracut 051. Both the laptop builtin keyboard and external USB keyboard are still unusable during |
This issue is being marked as stale because it has not had any recent activity. It will be closed if no further activity occurs. If this is still an issue in the latest release of Dracut and you would like to keep it open please comment on this issue within the next 7 days. Thank you for your contributions. |
The latest release is still 051 and the issue is still there. |
This issue is being marked as stale because it has not had any recent activity. It will be closed if no further activity occurs. If this is still an issue in the latest release of Dracut and you would like to keep it open please comment on this issue within the next 7 days. Thank you for your contributions. |
Not sure what else to add. Still on version 051. |
@Aetf is this still an issue with latest dracut and arch release? |
This is still an issue with both 056 (latest in official Arch repos) and Is there any other information I can provide? |
"forced" modules are only loaded after cmdline.service if systemd is in the initramfs - https://github.com/dracutdevs/dracut/blob/master/modules.d/98dracut-systemd/dracut-pre-udev.service#L8 If systemd is NOT in the initramfs, this use-case might already work due to https://github.com/dracutdevs/dracut/blob/master/modules.d/90kernel-modules/module-setup.sh#L150 . This is because https://github.com/dracutdevs/dracut/blob/master/modules.d/90kernel-modules/parse-kernel.sh#L12 loads the forced kernel modules earlier than systemd. Perhaps we can remove the @Neurognostic @Aetf @mwberry - are you in a position to make this change locally and confirm that this resolves your issue ?
This is likely as Fedora has those kernel modules pre-built into kernel. |
@Aetf Thanks for helping to debug this. Some ideas (you can try perhaps all of them at once)
|
Tried with force_drivers+= all modules. Keybaord still not working. Here's dracut.log with Adding Let me try next to omit systemd. |
1./ Let's stick to omitting systemd just because I am more familiar with that flow. Can you please try the following change
2./ If the above does not work, can you confirm if you remove In the original report you mentioned that "Both the laptop builtin keyboard ". When you tested recently you still testing on laptop builtin keyboard or only on USB ? 3./ In an unlikely scenario, perhaps firmware is missing for USB From the log
4./ FYI
I might be wrong, but I do not think dracut supports this feature with this syntax (unless you meant manually listing all the modules ).. There are some out of tree dracut modules trying to implement this - https://github.com/DragoonAethis/dracut-force-add-loaded-modules |
I haven't tried builtin keyboard recently, since my laptop is connected to a dock and closed all the time. I'll remember to try it next.
Yeah I meant manually listing all modules. (Well probably not all as in lsmod, I created a list of modules needed by my hardware by |
Summary
OS: Arch Linux
Dracut Version:
16abea2
If I specify the
rd.cmdline=ask
parameter, when I am presented with the prompt to add additional kernel parameters the prompt will not receive any input.If I remove
rd.cmdline=ask
then the first prompt is the LUKS passphrase prompt and the keyboard input works fine.Keyboard works fine in firmware setup and in both rEFInd and systemd-boot.
How the issue was verified
I have tried to forcefully add every kernel module for input devices I could find loaded on my system. I can see they have indeed all been added to the initramfs with
lsinitrd(1)
.I have tried multiple USB keyboards, the issue is not limited to my built-in ThinkPad keyboard.
Testing keyboard at every break point when initramfs drops to emergency shell:
rd.break=cmdline
rd.break=pre-udev
rd.break=pre-trigger
rd.break=initqueue
rd.break=pre-mount
rd.break=mount
rd.break=pre-pivot
rd.break=cleanup
rd.break
Debug output up to the prompt
Any idea what is going on here? Why does the keyboard work at some points in the initramfs but not in the
rd.cmdline=ask
prompt?Editing the kernel parameters from the initramfs is highly desired when EFISTUB booting directly from the firmware.
The text was updated successfully, but these errors were encountered: