FS#29526 - [linux] 3.3.2 - 3.8.x USB devices cannot be hot-plugged after upgrading kernel
Attached to Project:
Arch Linux
Opened by Robby Lank (bluefalcon) - Wednesday, 18 April 2012, 16:31 GMT
Last edited by Tobias Powalowski (tpowa) - Tuesday, 30 July 2013, 10:21 GMT
Opened by Robby Lank (bluefalcon) - Wednesday, 18 April 2012, 16:31 GMT
Last edited by Tobias Powalowski (tpowa) - Tuesday, 30 July 2013, 10:21 GMT
|
Details
Description:
Recent kernel updates seem to have broken usb hotplug support on my system. If a usb device is plugged in at boot time everything works fine. However, if the device is plugged in after boot it will not be recognized unless lsusb -v is run or if I run "sudo rmmod ehci_hcd && sudo modprobe ehci_hcd" I don't see any error output from the ehci_hcd module so I am not sure what is failing here, but I believe that it happend after upgrading from kernel 3.2.8-1 to 3.3.1-1. 3.3.2-1 does not fix the issue. Additional info: I should also note that lsusb shows nothing and nothing is seen in dmesg output until either of the above mentioned commands are run. My system is a 2008 MacBook Pro 15" I am running an up-to-date arch system as of Apr 19 12:30pm. Steps to reproduce: 1. Boot machine 2. Try to plugin a USB device. I have tried a USB drive and my cell phone. 3. Verify that neither show up in lsusb or in /proc/bus/usb/devices 4. run lsusb -v, devices show up in dmesg and in proc. |
This task depends upon
Closed by Tobias Powalowski (tpowa)
Tuesday, 30 July 2013, 10:21 GMT
Reason for closing: Fixed
Additional comments about closing: 3.9.x
Tuesday, 30 July 2013, 10:21 GMT
Reason for closing: Fixed
Additional comments about closing: 3.9.x
My user is added to the proper groups (dbus, storage, disk). Nothing new appears in /sys/block after inserting a USB drive. Running lsusb -v detects the usb properly. It seems like a kernel issue, please fix this!
modprobe -r ehci-hcd
Everything works fine after this!
Reloading the module doesn't work for good, it only detects connected devices. If I connect any other device (or remove and reconnect the same device) afterwards, situation remains, device remains undetected.
I will run a full update this weekend, repro the issue and pull some data. Hopefully there will be something helpful in there.
P.S. I suppose this is an upstream issue.
[ 960.423296] INFO: task modprobe:912 blocked for more than 120 seconds.
[ 960.423302] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
and the modprobe to go into uninterruptable sleep.
This also happens if run in rc.local (unable to boot that way)
At boot usb devices are detected correctly, but after that only removing them works.
Removing and plugging in a device that has been detected:
[ 1250.500027] usb 3-1: USB disconnect, device number 2
I guess the most important lines from rc.conf:
MOD_AUTOLOAD="yes"
MODULES=()
DAEMONS=(syslog-ng network netfs crond dbus ntpdate sshd fam samba gdm tvheadend httpd)
Affected kernels noticed: 3.4.6, 3.4.7
Not a laptop.
I've been having problems with USB earlier. From some point in 2.6.3x or so
khubd started crashing randomly, going into uninterruptable sleep. All devices that
were working at the time (mouse) continued to work, but devices like dvb card and
webcam could not be connected to afterwards. I'm not sure if this problem persists,
it did continue to the 3.2.x at least, but I haven't seen khubd halt in 3.3.x.
All that time rmmod ehci_hcd has halted.
This is should not be a hardware problem, I have changed everything but the display
around the installation.
Has no one resolved this?
It seems the suggestion of
"Specify usb.autosuspend=-1 for the kernel."
would be an acceptable work around for a desktop that is always on. can someone tell me where the config file is and/or how to change this option?
ssgross, see https://wiki.archlinux.org/index.php/Kernel_parameters