aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/irq/manage.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 0caa59f747dd..a00bf2cd67ed 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -871,9 +871,14 @@ out_thread:
871 */ 871 */
872int setup_irq(unsigned int irq, struct irqaction *act) 872int setup_irq(unsigned int irq, struct irqaction *act)
873{ 873{
874 int retval;
874 struct irq_desc *desc = irq_to_desc(irq); 875 struct irq_desc *desc = irq_to_desc(irq);
875 876
876 return __setup_irq(irq, desc, act); 877 chip_bus_lock(desc);
878 retval = __setup_irq(irq, desc, act);
879 chip_bus_sync_unlock(desc);
880
881 return retval;
877} 882}
878EXPORT_SYMBOL_GPL(setup_irq); 883EXPORT_SYMBOL_GPL(setup_irq);
879 884