On Monday 23 February 2009, Karsten Wiese wrote: > ehci-hcd uses usb_get_urb() and usb_put_urb() in an unbalanced way How exactly are they unbalanced? > causing > isochronous URB's kref.counts incrementing once per usb_submit_urb() call. So long as they're decremented once on the giveback, no problem: one increment, one decrement, all is fine. Actually the policy was that each saved pointer gets a refcount, so each *ITD* (or for fullspeed, SITD) gets a refcount. > There is no need for ehci-hcd to deal with usb_get_urb() nor usb_put_urb() > anyhow, That might now be true; usbcore has changed quite a lot since that code was written. > so patch removes their usages in ehci-hcd. > It also removes NULL assignments that have no effect. Leave those NULL assignments please. They are not "no effect"; they ensure that "old" pointers don't linger. Such things can be useful invariants when tracking down bugs ... among other things, it causes immediate trouble the instance anyone tries to use a stale pointer. - Dave -- 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