Commit 16f381fd authored by Jan Kiszka's avatar Jan Kiszka

x86: ipipe: Make sure IRQs are active when setting affinity

Recent kernels require to activate an IRQ prior to accepting affinities.
Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
parent 3450bd5f
......@@ -253,6 +253,7 @@ int ipipe_set_irq_affinity(unsigned int irq, cpumask_t cpumask)
{
struct irq_desc *desc;
struct irq_chip *chip;
int err;
cpumask_and(&cpumask, &cpumask, cpu_online_mask);
if (cpumask_empty(&cpumask) || ipipe_virtual_irq_p(irq))
......@@ -266,6 +267,10 @@ int ipipe_set_irq_affinity(unsigned int irq, cpumask_t cpumask)
if (chip->irq_set_affinity == NULL)
return -ENOSYS;
err = irq_activate(desc);
if (err)
return err;
chip->irq_set_affinity(irq_get_irq_data(irq), &cpumask, true);
return 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment