Bug 15198

Summary: keyboard not available after upgrade to 3.19 kernel
Product: Mageia Reporter: Pavel Kreuzt <pkreuzt>
Component: RPM PackagesAssignee: Thomas Backlund <tmb>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: Normal CC: mageia, thierry.vignaud
Version: CauldronKeywords: NEEDINFO, Triaged
Target Milestone: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Source RPM: kernel-3.19.0-0.rc7.2.mga5.src.rpm, dracut CVE:
Status comment:
Attachments: 'lspcidrake -v' from a running kernel-3.17.2-desktop-3
lsinitrd from /boot/initrd-3.17.2-desktop-3.mga5.img
lsinitrd from /boot/initrd-3.19.0-desktop-0.rc7.3
lsinitrd from 3.18.3-desktop-2
lsinitrd from running 3.19.0-4 kernel
lsinitrd from 3.19.0-desktop-5 before rebuilding
lsinitrd from 3.19.0-desktop-5 after rebuilding, with working keyboard

Description Pavel Kreuzt 2015-02-03 23:00:05 CET
Description of problem: 

After installing 3.19 kernel update, the keyboard (Logitech k400 wireless) doesn't work at boot time. It is usable in grub menu, but cannot introduce LUKS password. No response at all.


Version-Release number of selected component (if applicable):

3.19.0-0.rc7.2.mga5


How reproducible:

Not sure if it's keyboard model specific or something in dracut, with 3.18.3 kernel it worked without problem.


Steps to Reproduce:
1. Update kernel to 3.19
2. Reboot to new kernel
3. Try to use keyboard after grub menu. 


Reproducible: 

Steps to Reproduce:
Comment 1 Pavel Kreuzt 2015-02-04 15:22:02 CET
Similar problem in Kali Linux and kernel 3.18, related to initramfs-tools:

https://bugs.kali.org/view.php?id=2043
Comment 2 Pavel Kreuzt 2015-02-04 21:43:47 CET
Still valid with kernel-3.19.0-0.rc7.3
Pavel Kreuzt 2015-02-05 04:31:08 CET

Severity: normal => major

Manuel Hiebel 2015-02-05 13:04:50 CET

Keywords: (none) => Triaged
Assignee: bugsquad => tmb

Comment 3 Thierry Vignaud 2015-02-06 09:07:09 CET
Maybe dracut doesn't include a HID module that is new in 3.19?
Though udev should have loaded it later

Can you attach (not paste) the output of the "lspcidrake -v" command (from another kernel obviously).
Actually, if you can ssh to your machine when it boots the 3.19 kernel, if you could attach "lspcidrake -v" output for 3.19 too that would help.
We could then compare lspcidrake output for 3.18 & 3.19

Keywords: (none) => NEEDINFO
CC: (none) => mageia, thierry.vignaud
Source RPM: kernel-3.19.0-0.rc7.2.mga5.src.rpm => kernel-3.19.0-0.rc7.2.mga5.src.rpm, dracut

Comment 4 Pavel Kreuzt 2015-02-06 16:58:32 CET
Created attachment 5864 [details]
'lspcidrake -v' from a running kernel-3.17.2-desktop-3

Cannot currently boot with 3.19 kernel due to the impossibility to introduce LUKS password at boot, will try to create an USB contained key to boot.
Comment 5 Thomas Backlund 2015-02-06 17:05:24 CET
Can you attach output of lsinitrd /boot/initrd-3.19.0-desktop-0.rc7.3.mga5.img and lsinitrd /boot/initrd-3.17.2-desktop-3.mga5.img
Comment 6 Pavel Kreuzt 2015-02-06 17:18:45 CET
Created attachment 5865 [details]
lsinitrd from /boot/initrd-3.17.2-desktop-3.mga5.img
Comment 7 Pavel Kreuzt 2015-02-06 17:20:01 CET
Created attachment 5866 [details]
lsinitrd from /boot/initrd-3.19.0-desktop-0.rc7.3
Comment 8 Thomas Backlund 2015-02-06 18:58:32 CET
Can you add an lsinitrd for the working 3.18.3 too ?

the 3.17 one looks like a --hostonly=no initrd with a lot of extra...

the same hid drivers are in both...

One thing, can you try to add the hid-logitech-hidpp to the 3.19 initrd

move old initrd to safety:

mv /boot/initrd-3.19.0-desktop-0.rc7.3.mga5.img /boot/initrd-3.19.0-desktop-0.rc7.3.mga5.img.old

# create new one:
dracut -f --add-drivers hid-logitech-hidpp /boot/initrd-3.19.0-desktop-0.rc7.3.mga5.img 3.19.0-desktop-0.rc7.3.mga5

and try to reboot into the 3.19 kernel
Comment 9 Pavel Kreuzt 2015-02-06 19:45:00 CET
Created attachment 5869 [details]
lsinitrd from 3.18.3-desktop-2

New initrd created with dracut and added hid-logitech-hidpp doesn't solve the problem (also, boot resolution has changed with it).
Comment 10 Pavel Kreuzt 2015-03-02 12:01:57 CET
Created attachment 5972 [details]
lsinitrd from running 3.19.0-4 kernel

With 3.19.0-4 kernel and latest dracut the issue seems to have gone, but only after running "dracut --hostonly --force" (I've bought a wired keyboard to do this XD ) The attachment is the lsinitrd for the resulting image.
Comment 11 Thomas Backlund 2015-03-02 18:56:56 CET
Can you confirm that when kernel-3.19.0-5.mga5 (currently building) gets installed it works without you having to do any manual initrd creation 

If so, close this bug as fixed
Comment 12 Pavel Kreuzt 2015-03-03 18:04:06 CET
Nope, this problem persists.
Comment 13 Thomas Backlund 2015-03-03 20:58:00 CET
Ok, can you attach lsinitrd from the non-working initrd for 3.19.0-5 and then regenerate the initrd with the above "dracut --hostonly --force", and if that initrd works, attach the lsinitrd from that one so we can compare what gets missed
Comment 14 Pavel Kreuzt 2015-03-04 16:28:05 CET
Created attachment 5986 [details]
lsinitrd from 3.19.0-desktop-5 before rebuilding
Comment 15 Pavel Kreuzt 2015-03-04 16:30:25 CET
Created attachment 5987 [details]
lsinitrd from 3.19.0-desktop-5 after rebuilding, with working keyboard
Comment 16 Thomas Backlund 2015-03-04 22:21:54 CET
Ok, so now I'm confused...

the specific difference between comment 14 and comment 15 is exactly that missing hid-logitech-hidpp module.

And that one I added in the dracut-038-12.mga5 package:
http://svnweb.mageia.org/packages/cauldron/dracut/current/SOURCES/0521-kernel-modules-hid-logitech-hidpp.patch?revision=817174&view=markup

wich kernel 3.19.0-5 has a requires(pre) on.

@colin: any thoughts on why it does not get added on kernel install time, but gets added on manual install ?

dracut.conf states hostonly="yes" and that is the same as the above --hostonly
Comment 17 Pavel Kreuzt 2015-03-10 01:27:18 CET
With kernel 3.19.0-6 the issue is not present and the keyboard works without further intervention. Can this be closed?
Comment 18 Thierry Vignaud 2015-03-10 06:06:37 CET
Closing

Status: NEW => RESOLVED
Resolution: (none) => FIXED