Lines Matching refs:desc
53 static bool migrate_one_irq(struct irq_desc *desc) in migrate_one_irq() argument
55 struct irq_data *d = irq_desc_get_irq_data(desc); in migrate_one_irq()
78 irq_force_complete_move(desc); in migrate_one_irq()
94 irq_fixup_move_pending(desc, false); in migrate_one_irq()
104 if (irq_fixup_move_pending(desc, true)) in migrate_one_irq()
105 affinity = irq_desc_get_pending_mask(desc); in migrate_one_irq()
120 irq_shutdown_and_deactivate(desc); in migrate_one_irq()
173 struct irq_desc *desc; in irq_migrate_all_off_this_cpu() local
179 desc = irq_to_desc(irq); in irq_migrate_all_off_this_cpu()
180 raw_spin_lock(&desc->lock); in irq_migrate_all_off_this_cpu()
181 affinity_broken = migrate_one_irq(desc); in irq_migrate_all_off_this_cpu()
182 raw_spin_unlock(&desc->lock); in irq_migrate_all_off_this_cpu()
205 static void irq_restore_affinity_of_irq(struct irq_desc *desc, unsigned int cpu) in irq_restore_affinity_of_irq() argument
207 struct irq_data *data = irq_desc_get_irq_data(desc); in irq_restore_affinity_of_irq()
210 if (!irqd_affinity_is_managed(data) || !desc->action || in irq_restore_affinity_of_irq()
218 if (desc->istate & IRQS_SUSPENDED) in irq_restore_affinity_of_irq()
222 irq_startup(desc, IRQ_RESEND, IRQ_START_COND); in irq_restore_affinity_of_irq()
241 struct irq_desc *desc; in irq_affinity_online_cpu() local
246 desc = irq_to_desc(irq); in irq_affinity_online_cpu()
247 raw_spin_lock_irq(&desc->lock); in irq_affinity_online_cpu()
248 irq_restore_affinity_of_irq(desc, cpu); in irq_affinity_online_cpu()
249 raw_spin_unlock_irq(&desc->lock); in irq_affinity_online_cpu()