On Thu, 27 Oct 2016 16:57:52 -0200 Fabio Estevam wrote: > From: Fabio Estevam <fabio.estevam@xxxxxxx> > > Inside an interrupt handler we should use the spin_lock_irqsave()/ > spin_unlock_irqrestore() variants, so fix it accordingly. hmm, in interrupt handler the irq is disabled, so IMHO there's no need to use irqsave/irqrestore spinlock variants. Thanks, Jisheng > > Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxx> > --- > drivers/mmc/host/mxs-mmc.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/mmc/host/mxs-mmc.c b/drivers/mmc/host/mxs-mmc.c > index 44ecebd..14b7548 100644 > --- a/drivers/mmc/host/mxs-mmc.c > +++ b/drivers/mmc/host/mxs-mmc.c > @@ -189,15 +189,16 @@ static irqreturn_t mxs_mmc_irq_handler(int irq, void *dev_id) > struct mmc_command *cmd = host->cmd; > struct mmc_data *data = host->data; > struct mxs_ssp *ssp = &host->ssp; > + unsigned long flags; > u32 stat; > > - spin_lock(&host->lock); > + spin_lock_irqsave(&host->lock, flags); > > stat = readl(ssp->base + HW_SSP_CTRL1(ssp)); > writel(stat & MXS_MMC_IRQ_BITS, > ssp->base + HW_SSP_CTRL1(ssp) + STMP_OFFSET_REG_CLR); > > - spin_unlock(&host->lock); > + spin_unlock_irqrestore(&host->lock, flags); > > if ((stat & BM_SSP_CTRL1_SDIO_IRQ) && (stat & BM_SSP_CTRL1_SDIO_IRQ_EN)) > mmc_signal_sdio_irq(host->mmc); -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html