Просмотр исходного кода

dma: ste_dma40: Maintain spinlock order while handling pause

The runtime PM resume callback needs to be executed while holding the
spinlock, make sure to maintain this for the pause operation as well.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Ulf Hansson 11 лет назад
Родитель
Сommit
80245216cc
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      drivers/dma/ste_dma40.c

+ 1 - 1
drivers/dma/ste_dma40.c

@@ -1495,8 +1495,8 @@ static int d40_pause(struct d40_chan *d40c)
 	if (!d40c->busy)
 		return 0;
 
-	pm_runtime_get_sync(d40c->base->dev);
 	spin_lock_irqsave(&d40c->lock, flags);
+	pm_runtime_get_sync(d40c->base->dev);
 
 	res = d40_channel_execute_command(d40c, D40_DMA_SUSPEND_REQ);