From: Christoph Hellwig Date: Mon, 9 Apr 2018 09:15:17 +0000 (+0200) Subject: swiotlb: Use dma_direct_supported() for swiotlb_ops X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=66bdb1478fd1a66d5b8b81e4e28e0ed3df63ed37;p=linux.git swiotlb: Use dma_direct_supported() for swiotlb_ops 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 Signed-off-by: Christoph Hellwig Cc: Konrad Rzeszutek Wilk Cc: Linus Torvalds Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: iommu@lists.linux-foundation.org Fixes: 6e4bf5867783 ("x86/dma: Use generic swiotlb_ops") Link: http://lkml.kernel.org/r/20180409091517.6619-2-hch@lst.de Signed-off-by: Ingo Molnar --- diff --git a/lib/swiotlb.c b/lib/swiotlb.c index c43ec22714698..c67b062611609 100644 --- a/lib/swiotlb.c +++ b/lib/swiotlb.c @@ -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 */