diff options
Diffstat (limited to 'crypto/async_tx/async_memcpy.c')
| -rw-r--r-- | crypto/async_tx/async_memcpy.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/crypto/async_tx/async_memcpy.c b/crypto/async_tx/async_memcpy.c index 98e15bd0dcb..b38cbb3fd52 100644 --- a/crypto/async_tx/async_memcpy.c +++ b/crypto/async_tx/async_memcpy.c @@ -52,9 +52,12 @@ async_memcpy(struct page *dest, struct page *src, unsigned int dest_offset,  	if (device) {  		dma_addr_t dma_dest, dma_src; -		unsigned long dma_prep_flags; +		unsigned long dma_prep_flags = 0; -		dma_prep_flags = submit->cb_fn ? DMA_PREP_INTERRUPT : 0; +		if (submit->cb_fn) +			dma_prep_flags |= DMA_PREP_INTERRUPT; +		if (submit->flags & ASYNC_TX_FENCE) +			dma_prep_flags |= DMA_PREP_FENCE;  		dma_dest = dma_map_page(device->dev, dest, dest_offset, len,  					DMA_FROM_DEVICE);  |