On Thu, 7 Mar 2013, Paul Zimmerman wrote: > Hi Alan, > > I was talking about uhci_hcd_endpoint_disable(). It drops the spinlock, > reacquires it, but doesn't reload qh from hep->hcpriv before continuing. > Maybe that's not required for uhci, I didn't look any deeper. No, it's not required. hep->hcpriv doesn't matter once we have used it to find the correct qh. > Actually, I see now I misread ohci_endpoint_disable(), it doesn't reload > from ep->hcpriv either, only ehci_endpoint_disable() does. That's right. I suppose we might get into trouble if any one of the *_endpoint_disable() routines was called concurrently in different threads for the same endpoint. Fortunately usbcore is smart enough not to do that. 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