multisegment bus_dmamem_alloc()
Scott Long
scottl at samsco.org
Fri Mar 2 16:04:04 UTC 2007
Mark Tinguely wrote:
> Are there any other devices other than bktr(4) that could benefit
> from a multisegment bus_dmamem_alloc(9) routine? The old USB system
> comes to mind, but I have not studied the new USB. There may be others.
>
> NetBSD only partially implements this (if the number page allocated > number
> of segments, they punt and do a totally contiguous allocation - IMO, they
> could fix this pretty easy though).
>
> I know chages to contigmalloc() is a tricky subject. I was hoping
> there are enough drivers that would provide enough merits to change
> such an important part of the system. If not, please forgive this noise.
>
Looking at bktr, it's not at all clear to me why the author felt that
FreeBSD didn't support bus_dmamem_alloc. It's even stranger since the
author explicitly tells the NetBSD/OpenBSD code to only allocate 1
segment. Meh. I'm getting tired of fighting the busdma API fight with
developers who deliberately ignore standard API's that have been
around for almost 10 years. Multi-segment bus_dmamem_alloc support
would be nice, but bringing the drivers up to API standards would be an
even nicer first step.
Scott
More information about the freebsd-current
mailing list