[PATCH v5] dma-debug: New interfaces to debug dma mapping errors

Andrew Morton akpm at linux-foundation.org
Tue Oct 9 21:06:05 UTC 2012


On Mon, 08 Oct 2012 11:08:06 -0600
Shuah Khan <shuah.khan at hp.com> wrote:

> Add dma-debug interface debug_dma_mapping_error() to debug drivers that fail
> to check dma mapping errors on addresses returned by dma_map_single() and
> dma_map_page() interfaces. This interface clears a flag set by
> debug_dma_map_page() to indicate that dma_mapping_error() has been called by
> the driver. When driver does unmap, debug_dma_unmap() checks the flag and if
> this flag is still set, prints warning message that includes call trace that
> leads up to the unmap. This interface can be called from dma_mapping_error()
> routines to enable dma mapping error check debugging.
> 
> Tested: Intel iommu and swiotlb (iommu=soft) on x86-64 with
>         CONFIG_DMA_API_DEBUG enabled and disabled.
> 
> Signed-off-by: Shuah Khan <shuah.khan at hp.com>
> ---
>  Documentation/DMA-API.txt          |   12 ++++++
>  arch/x86/include/asm/dma-mapping.h |    1 +
>  include/linux/dma-debug.h          |    7 ++++
>  lib/dma-debug.c                    |   71 ++++++++++++++++++++++++++++++++++--

Third time lucky ... we still haven't fixed Documentation/DMA-API-HOWTO.txt!

Please, go through it and update it to show people how to correctly use
these APIs.




More information about the devel mailing list