Loading include/linux/irq.h +1 −0 Original line number Diff line number Diff line Loading @@ -379,6 +379,7 @@ extern void irq_cpu_online(void); extern void irq_cpu_offline(void); extern int irq_set_affinity_locked(struct irq_data *data, const struct cpumask *cpumask, bool force); extern void irq_affinity_notify(struct work_struct *work); #if defined(CONFIG_SMP) && defined(CONFIG_GENERIC_PENDING_IRQ) void irq_move_irq(struct irq_data *data); Loading kernel/irq/irqdesc.c +1 −0 Original line number Diff line number Diff line Loading @@ -93,6 +93,7 @@ static void desc_set_defaults(unsigned int irq, struct irq_desc *desc, int node, desc_smp_init(desc, node); #ifdef CONFIG_SMP INIT_LIST_HEAD(&desc->affinity_notify); INIT_WORK(&desc->affinity_work, irq_affinity_notify); #endif } Loading kernel/irq/manage.c +1 −3 Original line number Diff line number Diff line Loading @@ -216,7 +216,7 @@ int irq_set_affinity_hint(unsigned int irq, const struct cpumask *m) } EXPORT_SYMBOL_GPL(irq_set_affinity_hint); static void irq_affinity_notify(struct work_struct *work) void irq_affinity_notify(struct work_struct *work) { struct irq_desc *desc = container_of(work, struct irq_desc, affinity_work); Loading Loading @@ -343,8 +343,6 @@ setup_affinity(unsigned int irq, struct irq_desc *desc, struct cpumask *mask) if (cpumask_intersects(mask, nodemask)) cpumask_and(mask, mask, nodemask); } INIT_LIST_HEAD(&desc->affinity_notify); INIT_WORK(&desc->affinity_work, irq_affinity_notify); irq_do_set_affinity(&desc->irq_data, mask, false); return 0; } Loading Loading
include/linux/irq.h +1 −0 Original line number Diff line number Diff line Loading @@ -379,6 +379,7 @@ extern void irq_cpu_online(void); extern void irq_cpu_offline(void); extern int irq_set_affinity_locked(struct irq_data *data, const struct cpumask *cpumask, bool force); extern void irq_affinity_notify(struct work_struct *work); #if defined(CONFIG_SMP) && defined(CONFIG_GENERIC_PENDING_IRQ) void irq_move_irq(struct irq_data *data); Loading
kernel/irq/irqdesc.c +1 −0 Original line number Diff line number Diff line Loading @@ -93,6 +93,7 @@ static void desc_set_defaults(unsigned int irq, struct irq_desc *desc, int node, desc_smp_init(desc, node); #ifdef CONFIG_SMP INIT_LIST_HEAD(&desc->affinity_notify); INIT_WORK(&desc->affinity_work, irq_affinity_notify); #endif } Loading
kernel/irq/manage.c +1 −3 Original line number Diff line number Diff line Loading @@ -216,7 +216,7 @@ int irq_set_affinity_hint(unsigned int irq, const struct cpumask *m) } EXPORT_SYMBOL_GPL(irq_set_affinity_hint); static void irq_affinity_notify(struct work_struct *work) void irq_affinity_notify(struct work_struct *work) { struct irq_desc *desc = container_of(work, struct irq_desc, affinity_work); Loading Loading @@ -343,8 +343,6 @@ setup_affinity(unsigned int irq, struct irq_desc *desc, struct cpumask *mask) if (cpumask_intersects(mask, nodemask)) cpumask_and(mask, mask, nodemask); } INIT_LIST_HEAD(&desc->affinity_notify); INIT_WORK(&desc->affinity_work, irq_affinity_notify); irq_do_set_affinity(&desc->irq_data, mask, false); return 0; } Loading