Re: [PATCH] mmc: owl-mmc: replace spin_lock_irqsave by spin_lock in hard IRQ
From: Manivannan Sadhasivam
Date: Mon Nov 02 2020 - 10:54:15 EST
On Mon, Nov 02, 2020 at 08:52:17AM +0800, Tian Tao wrote:
> The code has been in a irq-disabled context since it is hard IRQ. There
> is no necessity to do it again.
>
Ah, yes. This should save few cycles!
> Signed-off-by: Tian Tao <tiantao6@xxxxxxxxxxxxx>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
Thanks,
Mani
> ---
> drivers/mmc/host/owl-mmc.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mmc/host/owl-mmc.c b/drivers/mmc/host/owl-mmc.c
> index ccf214a..82d2bad 100644
> --- a/drivers/mmc/host/owl-mmc.c
> +++ b/drivers/mmc/host/owl-mmc.c
> @@ -134,10 +134,9 @@ static void owl_mmc_update_reg(void __iomem *reg, unsigned int val, bool state)
> static irqreturn_t owl_irq_handler(int irq, void *devid)
> {
> struct owl_mmc_host *owl_host = devid;
> - unsigned long flags;
> u32 state;
>
> - spin_lock_irqsave(&owl_host->lock, flags);
> + spin_lock(&owl_host->lock);
>
> state = readl(owl_host->base + OWL_REG_SD_STATE);
> if (state & OWL_SD_STATE_TEI) {
> @@ -147,7 +146,7 @@ static irqreturn_t owl_irq_handler(int irq, void *devid)
> complete(&owl_host->sdc_complete);
> }
>
> - spin_unlock_irqrestore(&owl_host->lock, flags);
> + spin_unlock(&owl_host->lock);
>
> return IRQ_HANDLED;
> }
> --
> 2.7.4
>