Panic when removing Airprime PC5220 card (usb hub).
M. Warner Losh
imp at bsdimp.com
Thu May 12 09:39:08 PDT 2005
In message: <200505121755.32810.hselasky at c2i.net>
Hans Petter Selasky <hselasky at c2i.net> writes:
: 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);
Apart from ugly ifdef, that might have some merit. We don't
necessarily want to delete devices unless the hardware goes away.
Warner
More information about the freebsd-usb
mailing list