linux-stable/drivers/dma/sh
Laurent Pinchart 1ed1315f9b dmaengine: rcar-dmac: Cache hardware descriptors memory
Unlike DMA transfers descriptors that are preallocated and cached,
memory used to store hardware descriptors is allocated and freed with
the DMA coherent allocation API for every transfer. Besides degrading
performances, this creates a CMA stress test that seems to cause issues.
Running dmatest with the noverify option produces

[   50.066539] alloc_contig_range test_pages_isolated(6b845, 6b846) failed
[   50.235180] alloc_contig_range test_pages_isolated(6b848, 6b84e) failed
[   52.964584] alloc_contig_range test_pages_isolated(6b847, 6b848) failed
[   54.127113] alloc_contig_range test_pages_isolated(6b843, 6b844) failed
[   56.270253] alloc_contig_range test_pages_isolated(6b84c, 6b850) failed

The root cause needs to be fixed, but in the meantime, as a workaround
and a performance improvement, cache hardware descriptors.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
2014-12-23 11:13:03 +02:00
..
Kconfig dmaengine: rcar-dmac: Add Renesas R-Car Gen2 DMA Controller (DMAC) driver 2014-12-23 11:13:01 +02:00
Makefile dmaengine: rcar-dmac: Add Renesas R-Car Gen2 DMA Controller (DMAC) driver 2014-12-23 11:13:01 +02:00
rcar-audmapp.c dmaengine: Remove .owner field for driver 2014-11-06 11:54:18 +05:30
rcar-dmac.c dmaengine: rcar-dmac: Cache hardware descriptors memory 2014-12-23 11:13:03 +02:00
rcar-hpbdma.c dmaengine: Remove .owner field for driver 2014-11-06 11:54:18 +05:30
shdma-arm.h dmaengine: shdma: Use defines instead of hardcoded numbers 2014-07-15 18:02:29 +09:00
shdma-base.c dmaengine: sh: Split device_control 2014-12-22 12:32:16 +05:30
shdma-of.c dmaengine: Remove .owner field for driver 2014-11-06 11:54:18 +05:30
shdma-r8a73a4.c DMA: shdma: add r8a73a4 DMAC data to the device ID table 2013-08-27 14:26:21 +05:30
shdma.h dmaengine: sh: Rework Kconfig and Makefile 2014-07-31 17:15:45 +05:30
shdmac.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sudmac.c dmaengine: Remove .owner field for driver 2014-11-06 11:54:18 +05:30