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: e1c7e32453 ("dma-mapping: always provide the dma_map_ops based implementation")
Signed-off-by: Christoph Hellwig <[email protected]>
This commit is contained in:
Christoph Hellwig 2019-08-06 15:01:50 +03:00
commit f9f3232a7d
15 changed files with 42 additions and 8 deletions

View file

@ -1024,6 +1024,8 @@ static const struct dma_map_ops ccio_ops = {
.unmap_page = ccio_unmap_page,
.map_sg = ccio_map_sg,
.unmap_sg = ccio_unmap_sg,
.mmap = dma_common_mmap,
.get_sgtable = dma_common_get_sgtable,
};
#ifdef CONFIG_PROC_FS

View file

@ -1084,6 +1084,8 @@ static const struct dma_map_ops sba_ops = {
.unmap_page = sba_unmap_page,
.map_sg = sba_map_sg,
.unmap_sg = sba_unmap_sg,
.mmap = dma_common_mmap,
.get_sgtable = dma_common_get_sgtable,
};