Re: 2.6.37-rc2 regression: usb network hotplug

From: Eric Dumazet
Date: Wed Nov 17 2010 - 08:05:30 EST


Le mercredi 17 novembre 2010 Ã 13:10 +0100, Patrick Schaaf a Ãcrit :
> When trying out 2.6.37-rc2 on my Dell Latitude D630 laptop, I notice a
> regression, compared to plain 2.6.36, related to USB unplugging my N900
> (cdc_ether network device).
>
> The usb0 interface is configured to automatically plug into a bridge
> group, if that matters.
>
> On 2.6.36 I can unplug and replug the device properly.
>
> Under 2.6.37-rc2, the first plugging works, the device is reachable as
> desired, but after unplugging it the first time, I receive the following
> message every 10 seconds:
>
> kernel:[ 149.632104] unregister_netdevice: waiting for usb0 to become
> free. Usage count = 1
>
> The usb0 device is gone at that point. Replugging does not work.
>
> When I reboot into the same kernel, a list of "cannot reset port"
> messages is apparent in the boot logs, as appended. This disappears
> after shutting down the machine.
>
> I'll gladly try out patches that could fix this, or try out other things
> to help diagnose.
>
> best regards
> Patrick
>
> <3>[ 4.449056] usb 6-1.2: device not accepting address 3, error -71
> <3>[ 4.452793] hub 6-1:1.0: cannot disable port 2 (err = -71)
> <3>[ 4.454787] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.456787] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.458787] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.460787] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.462786] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.464491] hub 6-1:1.0: Cannot enable port 2. Maybe the USB
> cable is bad?
> <3>[ 4.466787] hub 6-1:1.0: cannot disable port 2 (err = -71)
> <3>[ 4.468785] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.470786] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.472787] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.474780] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.476784] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.478261] hub 6-1:1.0: Cannot enable port 2. Maybe the USB
> cable is bad?
> <3>[ 4.479773] hub 6-1:1.0: cannot disable port 2 (err = -71)
> <3>[ 4.481773] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.483772] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.485778] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.487787] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.489789] hub 6-1:1.0: cannot reset port 2 (err = -71)
> <3>[ 4.491052] hub 6-1:1.0: Cannot enable port 2. Maybe the USB
> cable is bad?
> <3>[ 4.492788] hub 6-1:1.0: cannot disable port 2 (err = -71)
> <3>[ 4.494079] hub 6-1:1.0: unable to enumerate USB device on port 2
> <3>[ 4.495787] hub 6-1:1.0: cannot disable port 2 (err = -71)
> <3>[ 4.497790] hub 6-1:1.0: hub_port_status failed (err = -71)
> <6>[ 4.499100] usb 6-1: USB disconnect, address 2
>

Please try

http://patchwork.ozlabs.org/patch/71354/



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/