On Fri, 6 Mar 2009, Chris Frey wrote: > On Thu, Mar 05, 2009 at 11:34:36AM -0500, Alan Stern wrote: > > A complete usbmon starting from before the device was plugged in might > > help to settle the issue. After all, following a fresh plug-in the > > toggle value definitely should be 0 on both the device and the host, no > > matter what. > > Thanks Alan for the explanation of toggle behaviour. > > All my testing has been through a VM, changing the kernel in the VM while > leaving the kernel in the host the same. I'm not sure if a usbmon capture > in this setup will be as clean as you need, since you said that toggle > behaviour is handled by the hardware: in this case, the host hardware and > the QEMU code. I haven't looked at your data yet. However the version of the host kernel _is_ important, just as much as the version of the guest kernel. That is, if there's a bug in the host then you can't fix it simply by updating the guest. > > Calling usb_set_altinterface() at the start should always be safe and > > it should work around the problem, whatever the ultimate cause is. > > The good news is that this seems to have fixed similar hangs on Mac OS X and, > pending feedback, FreeBSD, so it is a good fix all around, and may indicate > that the Linux kernel was more forgiving before, and the new behaviour is not > due to a bug. That's right; it's entirely possible that something funny is going on in the device itself. This is an easy fix, so unless you want to investigate further I'm happy to declare the bug closed. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html