Skip to contentSkip to conversation

include/linux/dma-mapping: update usage of zone modifiers

RFC PATCH New Huaisheng Ye 1 participant 1 message May 23, 2018

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

RFC PATCH v3 2/9 include/linux/dma-mapping: update usage of zone modifiers

From: Huaisheng Ye <[email protected]>

Use __GFP_ZONE_MASK to replace (__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32).

___GFP_DMA, ___GFP_HIGHMEM and ___GFP_DMA32 have been deleted from GFP bitmasks, the bottom three bits of GFP mask is reserved for storing encoded zone number.
__GFP_DMA, __GFP_HIGHMEM and __GFP_DMA32 should not be operated with each others by OR.

Use GFP_NORMAL() to clear bottom 3 bits of GFP bitmaks.

Cc Christoph Hellwig <[email protected]>
Cc Marek Szyprowski <[email protected]>
Cc Robin Murphy <[email protected]>
Cc Christoph Hellwig <[email protected]>
---
 include/linux/dma-mapping.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
include/linux/dma-mapping.h +1 -1
index f8ab1c0..8fe524d 100644
@@ -519,7 +519,7 @@ static inline void *dma_alloc_attrs(struct device *dev, size_t size,
 		return cpu_addr;
 
 	/* let the implementation decide on the zone to allocate from: */
-	flag &= ~(__GFP_DMA | __GFP_DMA32 | __GFP_HIGHMEM);
+	flag = GFP_NORMAL(flag);
 
 	if (!arch_dma_alloc_attrs(&dev, &flag))
 		return NULL;
Signature · 1 line
1.8.3.1