RE: [PATCH] Input: serio: make HYPERV_KEYBOARD depend on SERIO_I8042=y
From: Dexuan Cui <decui@microsoft.com>
Date: 2014-08-12 07:16:20
Also in:
lkml
-----Original Message----- From: linux-kernel-owner@vger.kernel.org [mailto:linux-kernel- owner@vger.kernel.org] On Behalf Of Greg KHquoted
quoted
What exactly needs to be done to fix this "correctly" that is going to take too much work at the moment?To decouple the dependency between the hyperv-keyboard and i8042 modules, I suppose we probably have to re-implement hyperv-keyboard by using input_allocate_device(), input_register_device(), and using input_report_key() to pass the key strokes to the high level.Yes, that would be the best thing to do, and shouldn't be that hard to create an input driver, it's pretty simple code, right?
Hi Greg, Thanks for the confirmation! I didn't use the APIs before. I think I need a couple of days to code, test and debug it while I have many things at hand at present. :-(
quoted
I'll have to need some time for further investigation and a new implementation. Before the new code is completely ready, IMHO the patch can help to avoid a bad user experience like Arch Linux working as a Generation 2 hyper-v guest.You are still preventing Arch from working here, as the driver can't be built at all, right?
The driver can build(compile) fine. The issue is: the latest Arch Linux release doesn't have a working (virtual) keyboard when it runs as Generation 2 hyper-v guest -- when it runs as a "traditional" Generation 1 hyper-v guest, everything works fine. I hope this patch can temporarily help Arch users if they find the issue and if they can rebuild the kernel.
quoted
BTW, looks most of Linux distros (like RHEL, Ubuntu, SUSE) have CONFIG_SERIO_I8042=y, probably because it's the result of "make defconfig". So the patch actually doesn't affect these distros.Or maybe it is beause they use older kernels and like to turn on every single possible option :)
If these 3 distros had =m, we could have found the issue earlier. Thanks, -- Dexuan