ASoC: intel: restore IRQs on error
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 25 Feb 2014 08:32:50 +0000 (11:32 +0300)
committerMark Brown <broonie@linaro.org>
Tue, 25 Feb 2014 23:45:43 +0000 (08:45 +0900)
This should be spin_unlock_irqrestore() instead of spin_unlock()

Fixes: 22981243589c ('ASoC: Intel: Add Haswell/Broadwell IPC')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/intel/sst-haswell-ipc.c

index 668d486520aed35860b8ca32f967beaf114d07af..552aebf2c8f5264de360cc3855467906275a95be 100644 (file)
@@ -527,7 +527,7 @@ static int ipc_tx_message(struct sst_hsw *hsw, u32 header, void *tx_data,
 
        msg = msg_get_empty(hsw);
        if (msg == NULL) {
-               spin_unlock(&hsw->dsp->spinlock);
+               spin_unlock_irqrestore(&hsw->dsp->spinlock, flags);
                return -EBUSY;
        }