arm64 shares some code under arch/arm/xen, including mm.c. However ZONE_DMA is removed by commit ad67f5a6545("arm64: replace ZONE_DMA with ZONE_DMA32"). So to ARM64, need use __GFP_DMA32.
Signed-off-by: Peng Fan <peng....@nxp.com> --- arch/arm/xen/mm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/xen/mm.c b/arch/arm/xen/mm.c index e1d44b903dfc..a95e76d18bf9 100644 --- a/arch/arm/xen/mm.c +++ b/arch/arm/xen/mm.c @@ -27,7 +27,7 @@ unsigned long xen_get_swiotlb_free_pages(unsigned int order) for_each_memblock(memory, reg) { if (reg->base < (phys_addr_t)0xffffffff) { - flags |= __GFP_DMA; + flags |= __GFP_DMA | __GFP_DMA32; break; } } -- 2.16.4