Hardware abstractions: bus_dma (continued) We need to deal with caches as we are dealing with memory Some architectures don't have consistent cache and memory (cache incoherent) so we have to make sure to flush caches at the appropriate time for the driver to work. Sparc64 is the architecture most people use to test for this. See the bus_dma(9) manual page and thorpej's bus_dma paper for more bus_dma discussion.