diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 6f7985e6f129..432de7089d0e 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -361,6 +361,9 @@ static void *__netdev_alloc_frag(unsigned int fragsz, gfp_t gfp_mask) unsigned long flags; void *data; + if (IS_ENABLED(CONFIG_FORCE_ALLOC_FROM_DMA_ZONE)) + gfp_mask |= GFP_DMA; + local_irq_save(flags); nc = this_cpu_ptr(&netdev_alloc_cache); data = __alloc_page_frag(nc, fragsz, gfp_mask);