View previous topic :: View next topic |
Author |
Message |
feystorm Tux's lil' helper
Joined: 29 Jan 2004 Posts: 96
|
Posted: Sat Feb 11, 2012 2:23 am Post subject: USB keyboard non-functional after kernel upgrade to 3.2.2 |
|
|
So after upgrading to kernel 3.2.2-hardened-r1, my USB keyboard is no longer functional. The keyboard works just fine in grub, but once the kernel loads, it goes dead (I do not know about things like numlock since its wireless and has no LEDs on it, so I dont know how dead it really is other than just dead).
The USBHID driver is loaded and working (since it picks up my APC/UPS just fine). lsusb also shows the keyboard being detected.
Also looking in the kernel boot messages I see no errors indicating any issues.
It seems that there are a few other people experiencing this same issue since upgrading to kernel 3.2, however since I have no error messages, I've got diddly squat to create a kernel.org bug report with. (other reports: debian, suse, and redhat).
Anyone have any brilliant ideas as to where to start on this?
Here's kernel messages of usb initialization and the hid driver failing to pick up my keyboard, but then picking up the UPS just fine:
Code: | 2012-02-09 22:15:38 kernel: [ 2.246573] uhci_hcd 0000:00:1d.3: port 1 portsc 01a3,00
2012-02-09 22:15:38 kernel: [ 2.246590] hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0000
2012-02-09 22:15:38 kernel: [ 2.246607] hub 5-0:1.0: port 1: status 0301 change 0001
2012-02-09 22:15:38 kernel: [ 2.247069] hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0002
2012-02-09 22:15:38 kernel: [ 2.247081] uhci_hcd 0000:00:1d.1: port 1 portsc 0093,00
2012-02-09 22:15:38 kernel: [ 2.247092] hub 3-0:1.0: port 1, status 0101, change 0001, 12 Mb/s
2012-02-09 22:15:38 kernel: [ 2.353042] hub 3-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x101
2012-02-09 22:15:38 kernel: [ 2.455038] usb 3-1: new full-speed USB device number 2 using uhci_hcd
2012-02-09 22:15:38 kernel: [ 2.575060] usb 3-1: ep0 maxpacket = 8
2012-02-09 22:15:38 kernel: [ 2.608208] usb 3-1: skipped 1 descriptor after interface
2012-02-09 22:15:38 kernel: [ 2.608221] usb 3-1: skipped 1 descriptor after interface
2012-02-09 22:15:38 kernel: [ 2.608229] usb 3-1: skipped 1 descriptor after interface
2012-02-09 22:15:38 kernel: [ 2.613142] usb 3-1: default language 0x0409
2012-02-09 22:15:38 kernel: [ 2.628119] usb 3-1: udev 2, busnum 3, minor = 257
2012-02-09 22:15:38 kernel: [ 2.628126] usb 3-1: New USB device found, idVendor=046d, idProduct=c52b
2012-02-09 22:15:38 kernel: [ 2.628132] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
2012-02-09 22:15:38 kernel: [ 2.628137] usb 3-1: Product: USB Receiver
2012-02-09 22:15:38 kernel: [ 2.628141] usb 3-1: Manufacturer: Logitech
2012-02-09 22:15:38 kernel: [ 2.628440] usb 3-1: usb_probe_device
2012-02-09 22:15:38 kernel: [ 2.628448] usb 3-1: configuration #1 chosen from 1 choice
2012-02-09 22:15:38 kernel: [ 2.634121] usb 3-1: adding 3-1:1.0 (config #1, interface 0)
2012-02-09 22:15:38 kernel: [ 2.634281] usbhid 3-1:1.0: usb_probe_interface
2012-02-09 22:15:38 kernel: [ 2.634287] usbhid 3-1:1.0: usb_probe_interface - got id
2012-02-09 22:15:38 kernel: [ 2.634458] usb 3-1: adding 3-1:1.1 (config #1, interface 1)
2012-02-09 22:15:38 kernel: [ 2.634601] usbhid 3-1:1.1: usb_probe_interface
2012-02-09 22:15:38 kernel: [ 2.634606] usbhid 3-1:1.1: usb_probe_interface - got id
2012-02-09 22:15:38 kernel: [ 2.634777] usb 3-1: adding 3-1:1.2 (config #1, interface 2)
2012-02-09 22:15:38 kernel: [ 2.634922] usbhid 3-1:1.2: usb_probe_interface
2012-02-09 22:15:38 kernel: [ 2.634927] usbhid 3-1:1.2: usb_probe_interface - got id
2012-02-09 22:15:38 kernel: [ 2.635126] hub 5-0:1.0: state 7 ports 2 chg 0002 evt 0000
2012-02-09 22:15:38 kernel: [ 2.635142] hub 5-0:1.0: port 1, status 0301, change 0000, 1.5 Mb/s
2012-02-09 22:15:38 kernel: [ 2.737041] usb 5-1: new low-speed USB device number 2 using uhci_hcd
2012-02-09 22:15:38 kernel: [ 2.884749] usb 5-1: skipped 1 descriptor after interface
2012-02-09 22:15:38 kernel: [ 2.890760] usb 5-1: default language 0x0409
2012-02-09 22:15:38 kernel: [ 2.922748] usb 5-1: udev 2, busnum 5, minor = 513
2012-02-09 22:15:38 kernel: [ 2.922754] usb 5-1: New USB device found, idVendor=051d, idProduct=0002
2012-02-09 22:15:38 kernel: [ 2.922760] usb 5-1: New USB device strings: Mfr=3, Product=1, SerialNumber=2
2012-02-09 22:15:38 kernel: [ 2.922766] usb 5-1: Product: Back-UPS NS 600 FW:818.w1 .D USB FW:w1
2012-02-09 22:15:38 kernel: [ 2.922770] usb 5-1: Manufacturer: APC
2012-02-09 22:15:38 kernel: [ 2.922774] usb 5-1: SerialNumber: 3B0947X46608
2012-02-09 22:15:38 kernel: [ 2.923149] usb 5-1: usb_probe_device
2012-02-09 22:15:38 kernel: [ 2.923157] usb 5-1: configuration #1 chosen from 1 choice
2012-02-09 22:15:38 kernel: [ 2.925777] usb 5-1: adding 5-1:1.0 (config #1, interface 0)
2012-02-09 22:15:38 kernel: [ 2.925959] usbhid 5-1:1.0: usb_probe_interface
2012-02-09 22:15:38 kernel: [ 2.925966] usbhid 5-1:1.0: usb_probe_interface - got id
2012-02-09 22:15:38 kernel: [ 2.954035] usb usb2: suspend_rh (auto-stop)
2012-02-09 22:15:38 kernel: [ 3.204051] usb usb4: suspend_rh (auto-stop)
2012-02-09 22:15:38 kernel: [ 3.314922] usbhid 5-1:1.0: looking for a minor, starting at 96
2012-02-09 22:15:38 kernel: [ 3.315328] generic-usb 0003:051D:0002.0004: hiddev0,hidraw0: USB HID v1.10 Device [APC Back-UPS NS 600 FW:818.w1 .D USB FW:w1 ] on usb-0000:00:1d.3-1/input0 |
Code: | # lsusb
Bus 005 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub |
|
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 23064
|
Posted: Sat Feb 11, 2012 4:08 am Post subject: |
|
|
What is the highest kernel version in which the keyboard works properly? |
|
Back to top |
|
|
feystorm Tux's lil' helper
Joined: 29 Jan 2004 Posts: 96
|
Posted: Sat Feb 11, 2012 4:30 am Post subject: |
|
|
The one I upgraded from was 3.1.5-hardened.
I went looking through the change logs and didnt see anything overtly obvious. I recall there were some usbhid changes in 3.2.0, but nothing sounded that significant.
I'm also trying to avoid going back to those versions because of that security issue with /proc/<pid>/mem. Not sure if the hardened kernels were affected or not, but just playing safe. And since this box is a server anyway, not having the keyboard isnt a major problem (as long as the machine stays working and I can ssh in). |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 23064
|
Posted: Sat Feb 11, 2012 4:49 pm Post subject: |
|
|
I recall reading several posts from the PaXTeam alias asserting that hardened kernels prevented the escalation via /proc/pid/mem. I believe this depended on a change related to mprotect/ptrace handling that is part of the hardened kernel patches. I am unsure whether the relevant change is always enabled or if you can configure it out. |
|
Back to top |
|
|
jerith n00b
Joined: 04 Jan 2005 Posts: 14
|
|
Back to top |
|
|
feystorm Tux's lil' helper
Joined: 29 Jan 2004 Posts: 96
|
Posted: Sun Mar 25, 2012 12:52 am Post subject: |
|
|
Hrm, looks interesting. I'll have to fetch a new kernel and see if those changes are in it (I'm am still running that box without a keyboard). |
|
Back to top |
|
|
BillWho Veteran
Joined: 03 Mar 2012 Posts: 1600 Location: US
|
Posted: Sun Mar 25, 2012 1:11 am Post subject: |
|
|
feystorm,
This works 9 out of 10 times:
Code: | emerge -av $(qlist -IC x11-drivers) |
Good luck |
|
Back to top |
|
|
jerith n00b
Joined: 04 Jan 2005 Posts: 14
|
Posted: Sun Mar 25, 2012 1:13 am Post subject: |
|
|
I'm guessing this is the solution ... testing now:
Code: | commit 0944e964b23baee17d40abbd314695289380c2fd
Author: Konstantin Khlebnikov <khlebnikov@openvz.org>
Date: Mon Feb 13 14:13:03 2012 +0400
HID: use generic driver for Logitech Unifying receivers if !CONFIG_HID_LOGITECH_DJ
Before commit 534a7b8e1 ("HID: Add full support for Logitech Unifying
receivers") Logitech Unifying receiver can work as generic device
without special driver, after that commit these devices does not works
without special driver.
After this patch they will use generic driver if special driver is disabled.
Signed-off-by: Konstantin Khlebnikov <khlebnikov@openvz.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index 0a55866..1e6b78e 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -257,7 +257,9 @@ config HID_LOGITECH_DJ
---help---
Say Y if you want support for Logitech Unifying receivers and devices.
Unifying receivers are capable of pairing up to 6 Logitech compliant
- devices to the same receiver.
+ devices to the same receiver. Without this driver it will be handled by
+ generic USB_HID driver and all incomming events will be multiplexed
+ into a single mouse and a single keyboard device.
config LOGITECH_FF
bool "Logitech force feedback support"
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index e89e4c7..549c753 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -1463,8 +1463,10 @@ static const struct hid_device_id hid_have_special_driver[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DFGT_WHEEL) },
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_G25_WHEEL) },
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_G27_WHEEL) },
+#if IS_ENABLED(CONFIG_HID_LOGITECH_DJ)
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_UNIFYING_RECEIVER) },
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_UNIFYING_RECEIVER_2) },
+#endif
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WII_WHEEL) },
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2) },
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_SPACETRAVELLER) }, |
|
|
Back to top |
|
|
feystorm Tux's lil' helper
Joined: 29 Jan 2004 Posts: 96
|
Posted: Sun Mar 25, 2012 1:18 am Post subject: |
|
|
BillWho wrote: | feystorm,
This works 9 out of 10 times:
Code: | emerge -av $(qlist -IC x11-drivers) |
Good luck |
If I were using X, I might agree with you.
I'm not. |
|
Back to top |
|
|
jerith n00b
Joined: 04 Jan 2005 Posts: 14
|
Posted: Sun Mar 25, 2012 3:16 am Post subject: |
|
|
Yep, applying that patch on top of 3.2.1-gentoo-r2 got the keyboard working again. |
|
Back to top |
|
|
feystorm Tux's lil' helper
Joined: 29 Jan 2004 Posts: 96
|
Posted: Sun Mar 25, 2012 5:40 am Post subject: |
|
|
jerith wrote: | Yep, applying that patch on top of 3.2.1-gentoo-r2 got the keyboard working again. |
That is awesome news. I'll apply it to my kernel then.
Thanks |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|