mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-23 12:43:55 +08:00
x86: unify gfp masks
Use the same gfp masks for x86_64 and i386. It involves using HIGHMEM or DMA32 where necessary, for the sake of code compatibility, (no real effect), and using the NORETRY mask for i386. Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
5fa78ca75d
commit
8f19ca1341
@ -79,7 +79,7 @@ void *dma_alloc_coherent(struct device *dev, size_t size,
|
||||
unsigned long dma_mask = 0;
|
||||
|
||||
/* ignore region specifiers */
|
||||
gfp &= ~(__GFP_DMA | __GFP_HIGHMEM);
|
||||
gfp &= ~(__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32);
|
||||
|
||||
if (dma_alloc_from_coherent_mem(dev, size, dma_handle, &ret))
|
||||
return ret;
|
||||
@ -91,7 +91,9 @@ void *dma_alloc_coherent(struct device *dev, size_t size,
|
||||
if (dma_mask == 0)
|
||||
dma_mask = DMA_32BIT_MASK;
|
||||
|
||||
again:
|
||||
/* Don't invoke OOM killer */
|
||||
gfp |= __GFP_NORETRY;
|
||||
again:
|
||||
page = dma_alloc_pages(dev, gfp, order);
|
||||
if (page == NULL)
|
||||
return NULL;
|
||||
|
@ -49,6 +49,8 @@ dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
|
||||
unsigned long dma_mask = 0;
|
||||
u64 bus;
|
||||
|
||||
/* ignore region specifiers */
|
||||
gfp &= ~(__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32);
|
||||
|
||||
if (dma_alloc_from_coherent_mem(dev, size, dma_handle, &memory))
|
||||
return memory;
|
||||
|
Loading…
Reference in New Issue
Block a user