On Fri, 27 Apr 2018, Matthew Wilcox wrote: > Some devices have incredibly bogus hardware like 28 bit addressing > or 39 bit addressing. We don't have a good way to allocate memory by > physical address other than than saying "GFP_DMA for anything less than > 32, GFP_DMA32 (or GFP_KERNEL on 32-bit) for anything less than 64 bit". > > Even CMA doesn't have a "cma_alloc_phys()". Maybe that's the right place > to put such an allocation API. The other way out of this would be to require a IOMMU?