On Mon, May 13, 2002, Georg Acher <[EMAIL PROTECTED]> wrote:
> On Sun, May 12, 2002 at 11:34:12PM -0700, Greg KH wrote:
>
> > > -_static int uhci_free_dev (struct usb_device *usb_dev)
> > > -{
> > > - uhci_t *s;
> > > -
> > > -
> > > - if(!usb_dev || !usb_dev->bus || !usb_dev->bus->hcpriv)
> > > - return -EINVAL;
> > > -
> > > - s=(uhci_t*) usb_dev->bus->hcpriv;
> > > - uhci_unlink_urbs(s, usb_dev, 0);
> <...>
> > Don't we need to keep uhci_free_dev() in the usb-uhci.c file? Isn't
> > uhci_unlink_urbs() needed to be called when we free up the device? Or
> > does that also happen elsewhere (i.e. on disconnect)?
>
> I don't fell well with removing the unlink_urbs(). It may be superfluous in
> most cases, but I like double security...
Not to be an asshole here, but you should really be understanding all of
the cases which that code *can* be called.
If you follow through all of the possible cases with the reference
counting, you won't have any URB's still active because you increment
the reference count for every URB.
JE
_______________________________________________________________
Have big pipes? SourceForge.net is looking for download mirrors. We supply
the hardware. You get the recognition. Email Us: [EMAIL PROTECTED]
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel