Unloading USB driver while device is attached.
M. Warner Losh
imp at bsdimp.com
Mon Jul 19 18:53:52 PDT 2004
In message: <200407200045.aa99979 at salmon.maths.tcd.ie>
Ian Dowse <iedowse at maths.tcd.ie> writes:
: In message <20040719.170132.52458790.imp at bsdimp.com>, "M. Warner Losh" writes:
: >In message: <200407191950.aa12733 at salmon.maths.tcd.ie>
: > Ian Dowse <iedowse at maths.tcd.ie> writes:
: >: http://people.freebsd.org/~iedowse/usb.diff
: >:
: >: but unfortunately I haven't had time to work on this lately (and
: >: there are all the problems of divergence from NetBSD etc. if bits
: >: of this get committed). The (small) uhub.c changes look like they
: >: might possibly help in your case. With the full patch I was able
: >: to `kldunload usb' without crashes a while ago, but there were still
: >: memory leaks.
: >
: >I'm going to start merging in some of these changes, if you don't
: >mind.
:
: If you have the time that would be great! FYI, here is a rough
: summary of the changes in no particular order:
:
: o Beginnings of interrupt pipe support for EHCI (very little done)
cool.
: o Support for unloading the usb driver (leaks some memory)
: o Support for removing cardbus USB controllers (also leaks memory)
These are my biggest goals of the moment.
: o Avoid most (but not all) uses of contigmalloc and data buffer
: copies by using bus_dmamap_load() and a new `struct usb_dma_mapping'.
: A few places marked `XXX' need to be checked for crossing DMA
: segment boundaries. This is probably the most important change,
: as it makes USB work much more reliably on low memory machines.
This would be nice.
: o Attempt to follow the correct procedure for synchronising with
: the BIOS via SMM to take over control of the EHCI controller.
: This may fix problems when the BIOS is configured to emulate
: legacy devices, but is untested on any affected machines.
Docs on how to do this? I've not seen this info...
: o Try to make transfers reusable from the completion callback (some
: related changes went into NetBSD recently, but I haven't checked
: the overlap).
I saw that.
: There are probably a few other changes in there too - let me know if
: you find any stuff that doesn't make sense.
OK. Will do.
I think we need to look at radically updating the way we do
compatibility between the different systems that the usb code runs
on. But that's a good way to freak people out by saying such things
in public :-)
Warner
More information about the freebsd-current
mailing list