On Mon, May 20, 2019 at 05:41:56PM +0200, Fredrik Noring wrote: > 2. A device address is supplied as phys_addr_t phys to gen_pool_add_virt(). > This seems to work in this particular DMA application, but there will be > problems if someone does phys_to_virt() or suchlike. Can this be improved > or clearly explained? gen_pool_virt_to_phys() searches in address ranges, > for example, so it appears the implementation uses phys quite carefully. Well, it is a physical address, but not one that has a kernel mapping. So phys_addr_t seems right here, but an additional comment explaining it is not in the kernel mapping never hurts.