summaryrefslogtreecommitdiffstats
path: root/arch/s390/pci/pci_dma.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2019-08-06 15:01:50 +0300
committerChristoph Hellwig <hch@lst.de>2019-09-04 11:13:18 +0200
commitf9f3232a7d0ab73a33d11f4056c5823010f03d55 (patch)
tree021c07b01f104492a5d049a885bc8fb931839c34 /arch/s390/pci/pci_dma.c
parent14451467014b4c8aff6570b44b6d0ee68cd49bc0 (diff)
downloadlinux-stable-f9f3232a7d0ab73a33d11f4056c5823010f03d55.tar.gz
linux-stable-f9f3232a7d0ab73a33d11f4056c5823010f03d55.tar.bz2
linux-stable-f9f3232a7d0ab73a33d11f4056c5823010f03d55.zip
dma-mapping: explicitly wire up ->mmap and ->get_sgtable
While the default ->mmap and ->get_sgtable implementations work for the majority of our dma_map_ops impementations they are inherently safe for others that don't use the page allocator or CMA and/or use their own way of remapping not covered by the common code. So remove the defaults if these methods are not wired up, but instead wire up the default implementations for all safe instances. Fixes: e1c7e324539a ("dma-mapping: always provide the dma_map_ops based implementation") Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'arch/s390/pci/pci_dma.c')
-rw-r--r--arch/s390/pci/pci_dma.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/s390/pci/pci_dma.c b/arch/s390/pci/pci_dma.c
index 9e52d1527f71..03d8c1c9f82f 100644
--- a/arch/s390/pci/pci_dma.c
+++ b/arch/s390/pci/pci_dma.c
@@ -668,6 +668,8 @@ const struct dma_map_ops s390_pci_dma_ops = {
.unmap_sg = s390_dma_unmap_sg,
.map_page = s390_dma_map_pages,
.unmap_page = s390_dma_unmap_pages,
+ .mmap = dma_common_mmap,
+ .get_sgtable = dma_common_get_sgtable,
/* dma_supported is unconditionally true without a callback */
};
EXPORT_SYMBOL_GPL(s390_pci_dma_ops);