On Mon, Dec 13, 2021 at 03:39:25PM +0800, Baoquan He wrote: > > > As said at above, ia64 and riscv don't have ZONE_DMA at all, they just > > > cover low 4G with ZONE_DMA32 alone. > > > > If you do not have devices that are crap and cannot address the full > > memory then you dont need these special zones. > > I am not a DMA expert, with my understanding, on x86_64 and arm64, we > have PCIe devices which dma mask is 32bit Yes, way to many, and they keep getting newly introduce as well. Also weirdo masks like 40, 44 or 48 bits. > , means they can only address > ZONE_DMA32. Yes and no. Offset between cpu physical and device address make this complicated, even ignoring iommus.