Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
USB keyboard non-functional after kernel upgrade to 3.2.2
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
feystorm
Tux's lil' helper
Tux's lil' helper


Joined: 29 Jan 2004
Posts: 96

PostPosted: Sat Feb 11, 2012 2:23 am    Post subject: USB keyboard non-functional after kernel upgrade to 3.2.2 Reply with quote

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
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 23066

PostPosted: Sat Feb 11, 2012 4:08 am    Post subject: Reply with quote

What is the highest kernel version in which the keyboard works properly?
Back to top
View user's profile Send private message
feystorm
Tux's lil' helper
Tux's lil' helper


Joined: 29 Jan 2004
Posts: 96

PostPosted: Sat Feb 11, 2012 4:30 am    Post subject: Reply with quote

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
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 23066

PostPosted: Sat Feb 11, 2012 4:49 pm    Post subject: Reply with quote

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
View user's profile Send private message
jerith
n00b
n00b


Joined: 04 Jan 2005
Posts: 14

PostPosted: Sun Mar 25, 2012 12:15 am    Post subject: Reply with quote

I just upgraded from linux-3.1.10-gentoo-r1 to linux-3.2.1-gentoo-r2 and I'm seeing the same thing. This LKML thread is the only thing I could find:

http://www.gossamer-threads.com/lists/linux/kernel/1491013
Back to top
View user's profile Send private message
feystorm
Tux's lil' helper
Tux's lil' helper


Joined: 29 Jan 2004
Posts: 96

PostPosted: Sun Mar 25, 2012 12:52 am    Post subject: Reply with quote

jerith wrote:
I just upgraded from linux-3.1.10-gentoo-r1 to linux-3.2.1-gentoo-r2 and I'm seeing the same thing. This LKML thread is the only thing I could find:

http://www.gossamer-threads.com/lists/linux/kernel/1491013


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
View user's profile Send private message
BillWho
Veteran
Veteran


Joined: 03 Mar 2012
Posts: 1600
Location: US

PostPosted: Sun Mar 25, 2012 1:11 am    Post subject: Reply with quote

feystorm,

This works 9 out of 10 times:
Code:
emerge -av $(qlist -IC x11-drivers)

Good luck :wink:
Back to top
View user's profile Send private message
jerith
n00b
n00b


Joined: 04 Jan 2005
Posts: 14

PostPosted: Sun Mar 25, 2012 1:13 am    Post subject: Reply with quote

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
View user's profile Send private message
feystorm
Tux's lil' helper
Tux's lil' helper


Joined: 29 Jan 2004
Posts: 96

PostPosted: Sun Mar 25, 2012 1:18 am    Post subject: Reply with quote

BillWho wrote:
feystorm,

This works 9 out of 10 times:
Code:
emerge -av $(qlist -IC x11-drivers)

Good luck :wink:



If I were using X, I might agree with you.
I'm not.
Back to top
View user's profile Send private message
jerith
n00b
n00b


Joined: 04 Jan 2005
Posts: 14

PostPosted: Sun Mar 25, 2012 3:16 am    Post subject: Reply with quote

Yep, applying that patch on top of 3.2.1-gentoo-r2 got the keyboard working again.
Back to top
View user's profile Send private message
feystorm
Tux's lil' helper
Tux's lil' helper


Joined: 29 Jan 2004
Posts: 96

PostPosted: Sun Mar 25, 2012 5:40 am    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
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