Thread (1 message) 1 message, 1 author, 2015-06-17

[PATCH 9/9] irq: spear-shirq: fix race in installing chained IRQ handler

From: viresh.kumar@linaro.org (Viresh Kumar)
Date: 2015-06-17 02:40:55
Also in: linux-gpio, linux-tegra

On Wed, Jun 17, 2015 at 3:37 AM, Russell King
[off-list ref] wrote:
quoted hunk
Fix a race where a pending interrupt could be received and the handler
called before the handler's data has been setup, by converting to
irq_set_chained_handler_and_data().

Signed-off-by: Russell King <redacted>
---
Depends on patch 1.

 drivers/irqchip/spear-shirq.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/irqchip/spear-shirq.c b/drivers/irqchip/spear-shirq.c
index 9c145a7cb056..a45121546caf 100644
--- a/drivers/irqchip/spear-shirq.c
+++ b/drivers/irqchip/spear-shirq.c
@@ -207,8 +207,7 @@ static void __init spear_shirq_register(struct spear_shirq *shirq,
        if (!shirq->irq_chip)
                return;

-       irq_set_chained_handler(parent_irq, shirq_handler);
-       irq_set_handler_data(parent_irq, shirq);
+       irq_set_chained_handler_and_data(parent_irq, shirq_handler, shirq);
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help