Panic when removing Airprime PC5220 card (usb hub).

Hans Petter Selasky hselasky at c2i.net
Thu May 12 08:54:50 PDT 2005


On Thursday 12 May 2005 15:48, Hans Petter Selasky wrote:
> On Thursday 12 May 2005 01:58, M. Warner Losh wrote:
> > In message: <200505120058.51834.hselasky at c2i.net>
> >
> >             Hans Petter Selasky <hselasky at c2i.net> writes:
> > : On Wednesday 11 May 2005 22:33, Warner Losh wrote:

Maybe something like this is better, so that memory doesn't leak.

usb_disconnect_port(struct usbd_port *up, device_ptr_t parent,
      u_int8_t free_subdev)
{
...
#ifdef __FreeBSD__
   config_detach(dev->subdevs[i], DETACH_FORCE, free_subdev);
#else
   config_detach(dev->subdevs[i], DETACH_FORCE);
#endif
...
}

#define config_detach(dev, flag, free_subdev) \
        do { \
                free(device_get_ivars(dev), M_USB); \
                if(free_subdev) \
                device_delete_child(device_get_parent(dev), dev); \
        } while (0);

--HPS


More information about the freebsd-usb mailing list