irqchip/loongson-liointc: Fix potential dead lock
In the function liointc_set_type(), we need to call the function irq_gc_unlock_irqrestore() before returning. Fixes: dbb152267908 ("irqchip: Add driver for Loongson I/O Local Interrupt Controller") Reported-by: Jianmin Lv <lvjianmin@loongson.cn> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> Signed-off-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/1594087972-21715-8-git-send-email-yangtiezhu@loongson.cn
This commit is contained in:
parent
b10cbca8f0
commit
fa03587cad
@ -114,6 +114,7 @@ static int liointc_set_type(struct irq_data *data, unsigned int type)
|
|||||||
liointc_set_bit(gc, LIOINTC_REG_INTC_POL, mask, false);
|
liointc_set_bit(gc, LIOINTC_REG_INTC_POL, mask, false);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
irq_gc_unlock_irqrestore(gc, flags);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
irq_gc_unlock_irqrestore(gc, flags);
|
irq_gc_unlock_irqrestore(gc, flags);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user