diff options
Diffstat (limited to 'drivers/dma/dmaengine.c')
| -rw-r--r-- | drivers/dma/dmaengine.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/dma/dmaengine.c b/drivers/dma/dmaengine.c index d37cf95987b..242b8c0a3de 100644 --- a/drivers/dma/dmaengine.c +++ b/drivers/dma/dmaengine.c @@ -267,7 +267,10 @@ enum dma_status dma_sync_wait(struct dma_chan *chan, dma_cookie_t cookie)  			pr_err("%s: timeout!\n", __func__);  			return DMA_ERROR;  		} -	} while (status == DMA_IN_PROGRESS); +		if (status != DMA_IN_PROGRESS) +			break; +		cpu_relax(); +	} while (1);  	return status;  }  |