On Wed, May 30, 2018 at 09:02:13AM +0000, Huaisheng HS1 Ye wrote: > > I don't quite understand that. I think those, mostly drivers, need to > get the correct zone they want. ZONE_DMA32 is an example, if drivers can be > satisfied with a low mem zone, why they mark the gfp flags as > 'GFP_KERNEL|__GFP_DMA32'? Drivers should never use GFP_DMA32 directly. The right abstraction is the DMA API, ZONE_DMA32 is just a helper.