On Tue, Nov 07, 2017 at 10:45:29AM +0800, Wei Hu (Xavier) wrote: > We reconstruct the code as below: > It replaces dma_alloc_coherent with __get_free_pages and > dma_map_single functions. So, we can vmap serveral ptrs returned by > __get_free_pages, right? Can't you just use vmalloc and dma_map that? Other drivers follow that approach.. However, dma_alloc_coherent and dma_map_single are not the same thing. You can't touch the vmap memory once you call dma_map unless the driver also includes dma cache flushing calls in all the right places. The difference is that alloc_coherent will return non-cachable memory if necessary, while get_free_pages does not. Jason -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html