summaryrefslogtreecommitdiff
path: root/kernel/irq/chip.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2017-09-13 23:29:12 +0200
committerThomas Gleixner <tglx@linutronix.de>2017-09-25 20:38:25 +0200
commit42e1cc2dc5b698181ab1ffb7972bd880230c506e (patch)
tree7d7e16c91a3f4056d1885ceb66817867882b96c4 /kernel/irq/chip.c
parentbb9b428a5c832d7abb494fbabac37c515c01c6c4 (diff)
downloadlwn-42e1cc2dc5b698181ab1ffb7972bd880230c506e.tar.gz
lwn-42e1cc2dc5b698181ab1ffb7972bd880230c506e.zip
genirq/irqdomain: Propagate early activation
Propagate the early activation mode to the irqdomain activate() callbacks. This is required for the upcoming reservation, late vector assignment scheme, so that the early activation call can act accordingly. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Juergen Gross <jgross@suse.com> Tested-by: Yu Chen <yu.c.chen@intel.com> Acked-by: Juergen Gross <jgross@suse.com> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com> Cc: Tony Luck <tony.luck@intel.com> Cc: Marc Zyngier <marc.zyngier@arm.com> Cc: Alok Kataria <akataria@vmware.com> Cc: Joerg Roedel <joro@8bytes.org> Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Christoph Hellwig <hch@lst.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Borislav Petkov <bp@alien8.de> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Rui Zhang <rui.zhang@intel.com> Cc: "K. Y. Srinivasan" <kys@microsoft.com> Cc: Arjan van de Ven <arjan@linux.intel.com> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Len Brown <lenb@kernel.org> Link: https://lkml.kernel.org/r/20170913213153.028353660@linutronix.de
Diffstat (limited to 'kernel/irq/chip.c')
-rw-r--r--kernel/irq/chip.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
index cd5b3eb38082..82333835ac66 100644
--- a/kernel/irq/chip.c
+++ b/kernel/irq/chip.c
@@ -223,7 +223,7 @@ __irq_startup_managed(struct irq_desc *desc, struct cpumask *aff, bool force)
* Managed interrupts have reserved resources, so this should not
* happen.
*/
- if (WARN_ON(irq_domain_activate_irq(d)))
+ if (WARN_ON(irq_domain_activate_irq(d, false)))
return IRQ_STARTUP_ABORT;
return IRQ_STARTUP_MANAGED;
}
@@ -290,7 +290,7 @@ int irq_activate(struct irq_desc *desc)
struct irq_data *d = irq_desc_get_irq_data(desc);
if (!irqd_affinity_is_managed(d))
- return irq_domain_activate_irq(d);
+ return irq_domain_activate_irq(d, false);
return 0;
}