Commit 6bca52b5 authored by Andi Kleen's avatar Andi Kleen Committed by Linus Torvalds

[PATCH] x86_64: Fix swiotlb dma_alloc_coherent fallback

This avoids BUG_ONs in the low level allocator when an illegal
GFP mask is added.
Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 0dd2ea9a
...@@ -107,6 +107,9 @@ dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, ...@@ -107,6 +107,9 @@ dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
goto again; goto again;
} }
/* Let low level make its own zone decisions */
gfp &= ~(GFP_DMA32|GFP_DMA);
if (dma_ops->alloc_coherent) if (dma_ops->alloc_coherent)
return dma_ops->alloc_coherent(dev, size, return dma_ops->alloc_coherent(dev, size,
dma_handle, gfp); dma_handle, gfp);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment