Re: [34-stable regression] USB delay init quirk causes device eventsloss

From: Alan Stern
Date: Tue Sep 14 2010 - 10:03:37 EST


On Tue, 14 Sep 2010, Oliver Neukum wrote:

> Am Montag, 13. September 2010, 17:37:49 schrieb Alan Stern:
> > Okay, I see the problem. By moving usb_detect_quirks earlier, we end
> > up calling usb_disable_autosuspend too soon -- before the
> > pm_runtime_enable call in usb_new_device. In 2.6.35 this doesn't
> > matter because the implementation of usb_autosuspend_device has
> > changed.
> >
> > So yes, in the end it looks like the best course is to revert this
> > patch from 2.6.34.stable. This is unfortunate but I don't see any way
> > around it without making changes that aren't present in the current
> > kernel. For example, the pm_runtime_set_active and pm_runtime_enable
> > calls could also be moved from usb_new_device into
> > hub_port_connect_change.
>
> Calling usb_detect_quirks() twice?

The issue is moot now since Greg has already done the reversion.

But no, usb_detect_quirks should still be called only once. The idea
was to make sure this happens _after_ pm_runtime_set_active and
pm_runtime_enable, by moving those two calls earlier.

Alan Stern

--
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/