There is a problem being discussed in the Linux memory management list that maybe of interest to DPDK developers. The DPDK/ VFIO assumes that it can do DMA from hugepaged memory because it is pinned. But in reality the hugepages are still in ZONE_MOVABLE. You can follow the thread here: https://marc.info/?l=linux-mm&m=160590410611711&w=2