|
@@ -285,7 +285,12 @@ static int dmatest_func(void *data)
|
|
|
|
|
|
set_user_nice(current, 10);
|
|
|
|
|
|
- flags = DMA_CTRL_ACK | DMA_COMPL_SKIP_DEST_UNMAP | DMA_PREP_INTERRUPT;
|
|
|
+ /*
|
|
|
+ * src buffers are freed by the DMAEngine code with dma_unmap_single()
|
|
|
+ * dst buffers are freed by ourselves below
|
|
|
+ */
|
|
|
+ flags = DMA_CTRL_ACK | DMA_PREP_INTERRUPT
|
|
|
+ | DMA_COMPL_SKIP_DEST_UNMAP | DMA_COMPL_SRC_UNMAP_SINGLE;
|
|
|
|
|
|
while (!kthread_should_stop()
|
|
|
&& !(iterations && total_tests >= iterations)) {
|