aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/dma-debug.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2018-12-25 08:50:35 +0100
committerChristoph Hellwig <hch@lst.de>2019-01-04 09:02:17 +0100
commit2e05ea5cdc1ac55d9ef678ed5ea6c38acf7fd2a3 (patch)
treee88e6506cf6ad38bd2ad3d764a20290dbf0b6818 /include/linux/dma-debug.h
parentRemove 'type' argument from access_ok() function (diff)
downloadwireguard-linux-2e05ea5cdc1ac55d9ef678ed5ea6c38acf7fd2a3.tar.xz
wireguard-linux-2e05ea5cdc1ac55d9ef678ed5ea6c38acf7fd2a3.zip
dma-mapping: implement dma_map_single_attrs using dma_map_page_attrs
And also switch the way we implement the unmap side around to stay consistent. This ensures dma-debug works again because it records which function we used for mapping to ensure it is also used for unmapping, and also reduces further code duplication. Last but not least this also officially allows calling dma_sync_single_* for mappings created using dma_map_page, which is perfectly fine given that the sync calls only take a dma_addr_t, but not a virtual address or struct page. Fixes: 7f0fee242e ("dma-mapping: merge dma_unmap_page_attrs and dma_unmap_single_attrs") Signed-off-by: Christoph Hellwig <hch@lst.de> Tested-by: LABBE Corentin <clabbe.montjoie@gmail.com>
Diffstat (limited to 'include/linux/dma-debug.h')
-rw-r--r--include/linux/dma-debug.h11
1 files changed, 4 insertions, 7 deletions
diff --git a/include/linux/dma-debug.h b/include/linux/dma-debug.h
index 2ad5c363d7d5..cb422cbe587d 100644
--- a/include/linux/dma-debug.h
+++ b/include/linux/dma-debug.h
@@ -35,13 +35,12 @@ extern void debug_dma_map_single(struct device *dev, const void *addr,
extern void debug_dma_map_page(struct device *dev, struct page *page,
size_t offset, size_t size,
- int direction, dma_addr_t dma_addr,
- bool map_single);
+ int direction, dma_addr_t dma_addr);
extern void debug_dma_mapping_error(struct device *dev, dma_addr_t dma_addr);
extern void debug_dma_unmap_page(struct device *dev, dma_addr_t addr,
- size_t size, int direction, bool map_single);
+ size_t size, int direction);
extern void debug_dma_map_sg(struct device *dev, struct scatterlist *sg,
int nents, int mapped_ents, int direction);
@@ -95,8 +94,7 @@ static inline void debug_dma_map_single(struct device *dev, const void *addr,
static inline void debug_dma_map_page(struct device *dev, struct page *page,
size_t offset, size_t size,
- int direction, dma_addr_t dma_addr,
- bool map_single)
+ int direction, dma_addr_t dma_addr)
{
}
@@ -106,8 +104,7 @@ static inline void debug_dma_mapping_error(struct device *dev,
}
static inline void debug_dma_unmap_page(struct device *dev, dma_addr_t addr,
- size_t size, int direction,
- bool map_single)
+ size_t size, int direction)
{
}