DragonFly BSD
DragonFly kernel List (threaded) for 2010-12
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: swi_vm() and busdma_swi()?


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Mon, 6 Dec 2010 10:40:45 -0800 (PST)

:Err, the current busdma API supports pre-allocation bounce buffer
:zones for address restrictions and alignment constraints, all of the
:network device drivers use that features (I think I converted all of
:the network drivers early 2009).

    Which works fairly well on system boot but can fail horribly when
    you kldload a driver after the system has been up for a while.

    In anycase, I agree re: the async busdma stuff.  It needs to be
    removed.  I'd like to simplify the API to bus_dma_tag_create() as well,
    replacing the extremely non-intuitive 'lowaddr' and 'highaddr' fields
    with a simple #define'd domain constant.  e.g. BUS_DMA_ADDR24,
    BUS_DMA_ADDR31, BUS_DMA_ADDR32, and so forth.

						-Matt



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]