diff mbox series

[-next] pinctrl: mcp23s08: Fix missing unlock on error in mcp23s08_irq()

Message ID 1623069869-39309-1-git-send-email-zou_wei@huawei.com
State New
Headers show
Series [-next] pinctrl: mcp23s08: Fix missing unlock on error in mcp23s08_irq() | expand

Commit Message

Zou Wei June 7, 2021, 12:44 p.m. UTC
Add the missing unlock before return from function mcp23s08_irq()
in the error handling case.

Fixes: 897120d41e7a ("pinctrl: mcp23s08: fix race condition in irq handler")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Zou Wei <zou_wei@huawei.com>
---
 drivers/pinctrl/pinctrl-mcp23s08.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Zou Wei June 8, 2021, 3:22 a.m. UTC | #1
On 2021/6/7 20:44, Zou Wei wrote:
> Add the missing unlock before return from function mcp23s08_irq()

> in the error handling case.

> 

> Fixes: 897120d41e7a ("pinctrl: mcp23s08: fix race condition in irq handler")

> Reported-by: Hulk Robot <hulkci@huawei.com>

> Signed-off-by: Zou Wei <zou_wei@huawei.com>

> ---

>   drivers/pinctrl/pinctrl-mcp23s08.c | 1 +

>   1 file changed, 1 insertion(+)

> 

> diff --git a/drivers/pinctrl/pinctrl-mcp23s08.c b/drivers/pinctrl/pinctrl-mcp23s08.c

> index 799d596..e12aa09 100644

> --- a/drivers/pinctrl/pinctrl-mcp23s08.c

> +++ b/drivers/pinctrl/pinctrl-mcp23s08.c

> @@ -353,6 +353,7 @@ static irqreturn_t mcp23s08_irq(int irq, void *data)

>   

>   	if (intf == 0) {

>   		/* There is no interrupt pending */

> +		goto unlock;

>   		return IRQ_HANDLED;

One mistake here is to forget to delete the "return IRQ_HANDLED" line, 
please ignore this patch, I will send v2 later.
>   	}

>   

>
diff mbox series

Patch

diff --git a/drivers/pinctrl/pinctrl-mcp23s08.c b/drivers/pinctrl/pinctrl-mcp23s08.c
index 799d596..e12aa09 100644
--- a/drivers/pinctrl/pinctrl-mcp23s08.c
+++ b/drivers/pinctrl/pinctrl-mcp23s08.c
@@ -353,6 +353,7 @@  static irqreturn_t mcp23s08_irq(int irq, void *data)
 
 	if (intf == 0) {
 		/* There is no interrupt pending */
+		goto unlock;
 		return IRQ_HANDLED;
 	}