Lines Matching refs:vector

130 		int new_cpu, vector, offset;  in __assign_irq_vector()  local
150 vector = current_vector; in __assign_irq_vector()
153 vector += 16; in __assign_irq_vector()
154 if (vector >= first_system_vector) { in __assign_irq_vector()
156 vector = FIRST_EXTERNAL_VECTOR + offset; in __assign_irq_vector()
159 if (unlikely(current_vector == vector)) { in __assign_irq_vector()
166 if (test_bit(vector, used_vectors)) in __assign_irq_vector()
170 if (per_cpu(vector_irq, new_cpu)[vector] > in __assign_irq_vector()
175 current_vector = vector; in __assign_irq_vector()
177 if (cfg->vector) { in __assign_irq_vector()
183 per_cpu(vector_irq, new_cpu)[vector] = irq; in __assign_irq_vector()
184 cfg->vector = vector; in __assign_irq_vector()
207 int cpu, vector; in clear_irq_vector() local
211 BUG_ON(!cfg->vector); in clear_irq_vector()
213 vector = cfg->vector; in clear_irq_vector()
215 per_cpu(vector_irq, cpu)[vector] = VECTOR_UNDEFINED; in clear_irq_vector()
217 cfg->vector = 0; in clear_irq_vector()
226 for (vector = FIRST_EXTERNAL_VECTOR; vector < NR_VECTORS; in clear_irq_vector()
227 vector++) { in clear_irq_vector()
228 if (per_cpu(vector_irq, cpu)[vector] != irq) in clear_irq_vector()
230 per_cpu(vector_irq, cpu)[vector] = VECTOR_UNDEFINED; in clear_irq_vector()
269 int irq, vector; in __setup_vector_irq() local
286 vector = cfg->vector; in __setup_vector_irq()
287 per_cpu(vector_irq, cpu)[vector] = irq; in __setup_vector_irq()
290 for (vector = 0; vector < NR_VECTORS; ++vector) { in __setup_vector_irq()
291 irq = per_cpu(vector_irq, cpu)[vector]; in __setup_vector_irq()
297 per_cpu(vector_irq, cpu)[vector] = VECTOR_UNDEFINED; in __setup_vector_irq()
330 apic->send_IPI_mask(cpumask_of(cpu), cfg->vector); in apic_retrigger_irq()
398 unsigned vector, me; in smp_irq_move_cleanup_interrupt() local
405 for (vector = FIRST_EXTERNAL_VECTOR; vector < NR_VECTORS; vector++) { in smp_irq_move_cleanup_interrupt()
411 irq = __this_cpu_read(vector_irq[vector]); in smp_irq_move_cleanup_interrupt()
433 if (vector == cfg->vector && cpumask_test_cpu(me, cfg->domain)) in smp_irq_move_cleanup_interrupt()
436 irr = apic_read(APIC_IRR + (vector / 32 * 0x10)); in smp_irq_move_cleanup_interrupt()
444 if (irr & (1 << (vector % 32))) { in smp_irq_move_cleanup_interrupt()
448 __this_cpu_write(vector_irq[vector], VECTOR_UNDEFINED); in smp_irq_move_cleanup_interrupt()
456 static void __irq_complete_move(struct irq_cfg *cfg, unsigned vector) in __irq_complete_move() argument
465 if (vector == cfg->vector && cpumask_test_cpu(me, cfg->domain)) in __irq_complete_move()
481 __irq_complete_move(cfg, cfg->vector); in irq_force_complete_move()