diff options
author | Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> | 2012-11-08 05:03:16 -0500 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2013-01-08 01:05:12 -0500 |
commit | 7d283397ade3c9e51de644676a6593e1f724ac00 (patch) | |
tree | 8b56fa0af94d8cd8d85d6f7cd6cc4f7a451445e6 /crypto | |
parent | 2cbe7feba1ac521b5668609c35b94536bbbcd52f (diff) |
async_tx: fix checking of dma_wait_for_async_tx() return value
dma_wait_for_async_tx() can also return DMA_PAUSED (which
should be considered as error).
Cc: Vinod Koul <vinod.koul@intel.com>
Cc: Dan Williams <djbw@fb.com>
Cc: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Dan Williams <djbw@fb.com>
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/async_tx/async_tx.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/crypto/async_tx/async_tx.c b/crypto/async_tx/async_tx.c index 842120979374..7be34248b450 100644 --- a/crypto/async_tx/async_tx.c +++ b/crypto/async_tx/async_tx.c | |||
@@ -128,8 +128,8 @@ async_tx_channel_switch(struct dma_async_tx_descriptor *depend_tx, | |||
128 | } | 128 | } |
129 | device->device_issue_pending(chan); | 129 | device->device_issue_pending(chan); |
130 | } else { | 130 | } else { |
131 | if (dma_wait_for_async_tx(depend_tx) == DMA_ERROR) | 131 | if (dma_wait_for_async_tx(depend_tx) != DMA_SUCCESS) |
132 | panic("%s: DMA_ERROR waiting for depend_tx\n", | 132 | panic("%s: DMA error waiting for depend_tx\n", |
133 | __func__); | 133 | __func__); |
134 | tx->tx_submit(tx); | 134 | tx->tx_submit(tx); |
135 | } | 135 | } |
@@ -280,8 +280,9 @@ void async_tx_quiesce(struct dma_async_tx_descriptor **tx) | |||
280 | * we are referring to the correct operation | 280 | * we are referring to the correct operation |
281 | */ | 281 | */ |
282 | BUG_ON(async_tx_test_ack(*tx)); | 282 | BUG_ON(async_tx_test_ack(*tx)); |
283 | if (dma_wait_for_async_tx(*tx) == DMA_ERROR) | 283 | if (dma_wait_for_async_tx(*tx) != DMA_SUCCESS) |
284 | panic("DMA_ERROR waiting for transaction\n"); | 284 | panic("%s: DMA error waiting for transaction\n", |
285 | __func__); | ||
285 | async_tx_ack(*tx); | 286 | async_tx_ack(*tx); |
286 | *tx = NULL; | 287 | *tx = NULL; |
287 | } | 288 | } |