bus_dmamem_alloc() can't handle large NOWAIT requests

Daniel O'Connor doconnor at gsoft.com.au
Sat Jan 8 21:41:01 PST 2005


On Sun, 9 Jan 2005 15:55, Scott Long wrote:
> > bus_dmamem_alloc() maps BUS_DMA_NOWAIT to M_NOWAIT but contigmalloc()
> > does not support M_NOWAIT and will tsleep() under some conditions.
> >
> > Unfortunately, I don't know enough about the VM code to be able to
> > suggest a fix.
>
> Will contigmalloc() actually sleep?  If so, then this is something that
> needs to be addressed in contigmalloc.

Couldn't contigmalloc() just return NULL if it was going to sleep?

(hehe.. "just" ;)

-- 
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20050109/c48f19b0/attachment.bin


More information about the freebsd-current mailing list