Skip to content

Commit

Permalink
swiotlb: Use dma_direct_supported() for swiotlb_ops
Browse files Browse the repository at this point in the history
swiotlb_alloc() calls dma_direct_alloc(), which can satisfy lower than 32-bit
DMA mask requests using GFP_DMA if the architecture supports it.  Various
x86 drivers rely on that, so we need to support that.  At the same time
the whole kernel expects a 32-bit DMA mask to just work, so the other magic
in swiotlb_dma_supported() isn't actually needed either.

Reported-by: Dominik Brodowski <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
Cc: Konrad Rzeszutek Wilk <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: [email protected]
Fixes: 6e4bf58 ("x86/dma: Use generic swiotlb_ops")
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
  • Loading branch information
Christoph Hellwig authored and Ingo Molnar committed Apr 9, 2018
1 parent 9a3b7e5 commit 66bdb14
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion lib/swiotlb.c
Original file line number Diff line number Diff line change
Expand Up @@ -1130,6 +1130,6 @@ const struct dma_map_ops swiotlb_dma_ops = {
.unmap_sg = swiotlb_unmap_sg_attrs,
.map_page = swiotlb_map_page,
.unmap_page = swiotlb_unmap_page,
.dma_supported = swiotlb_dma_supported,
.dma_supported = dma_direct_supported,
};
#endif /* CONFIG_DMA_DIRECT_OPS */

0 comments on commit 66bdb14

Please sign in to comment.