apicd 91 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 93 arch/x86/kernel/apic/vector.c return apicd ? &apicd->hw_irq_cfg : NULL; apicd 104 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd; apicd 106 arch/x86/kernel/apic/vector.c apicd = kzalloc_node(sizeof(*apicd), GFP_KERNEL, node); apicd 107 arch/x86/kernel/apic/vector.c if (apicd) apicd 108 arch/x86/kernel/apic/vector.c INIT_HLIST_NODE(&apicd->clist); apicd 109 arch/x86/kernel/apic/vector.c return apicd; apicd 112 arch/x86/kernel/apic/vector.c static void free_apic_chip_data(struct apic_chip_data *apicd) apicd 114 arch/x86/kernel/apic/vector.c kfree(apicd); apicd 120 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 124 arch/x86/kernel/apic/vector.c apicd->hw_irq_cfg.vector = vector; apicd 125 arch/x86/kernel/apic/vector.c apicd->hw_irq_cfg.dest_apicid = apic->calc_dest_apicid(cpu); apicd 128 arch/x86/kernel/apic/vector.c apicd->hw_irq_cfg.dest_apicid); apicd 134 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 140 arch/x86/kernel/apic/vector.c trace_vector_update(irqd->irq, newvec, newcpu, apicd->vector, apicd 141 arch/x86/kernel/apic/vector.c apicd->cpu); apicd 149 arch/x86/kernel/apic/vector.c apicd->prev_vector = 0; apicd 150 arch/x86/kernel/apic/vector.c if (!apicd->vector || apicd->vector == MANAGED_IRQ_SHUTDOWN_VECTOR) apicd 160 arch/x86/kernel/apic/vector.c if (cpu_online(apicd->cpu)) { apicd 161 arch/x86/kernel/apic/vector.c apicd->move_in_progress = true; apicd 162 arch/x86/kernel/apic/vector.c apicd->prev_vector = apicd->vector; apicd 163 arch/x86/kernel/apic/vector.c apicd->prev_cpu = apicd->cpu; apicd 165 arch/x86/kernel/apic/vector.c irq_matrix_free(vector_matrix, apicd->cpu, apicd->vector, apicd 170 arch/x86/kernel/apic/vector.c apicd->vector = newvec; apicd 171 arch/x86/kernel/apic/vector.c apicd->cpu = newcpu; apicd 186 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 191 arch/x86/kernel/apic/vector.c apicd->is_managed = true; apicd 200 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 203 arch/x86/kernel/apic/vector.c apicd->can_reserve = true; apicd 204 arch/x86/kernel/apic/vector.c apicd->has_reserved = true; apicd 223 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 224 arch/x86/kernel/apic/vector.c bool resvd = apicd->has_reserved; apicd 225 arch/x86/kernel/apic/vector.c unsigned int cpu = apicd->cpu; apicd 226 arch/x86/kernel/apic/vector.c int vector = apicd->vector; apicd 244 arch/x86/kernel/apic/vector.c if (apicd->move_in_progress || !hlist_unhashed(&apicd->clist)) apicd 311 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 317 arch/x86/kernel/apic/vector.c if (apicd->vector && cpumask_test_cpu(apicd->cpu, vector_searchmask)) apicd 331 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 333 arch/x86/kernel/apic/vector.c unsigned int vector = apicd->vector; apicd 340 arch/x86/kernel/apic/vector.c trace_vector_clear(irqd->irq, vector, apicd->cpu, apicd->prev_vector, apicd 341 arch/x86/kernel/apic/vector.c apicd->prev_cpu); apicd 343 arch/x86/kernel/apic/vector.c per_cpu(vector_irq, apicd->cpu)[vector] = VECTOR_SHUTDOWN; apicd 344 arch/x86/kernel/apic/vector.c irq_matrix_free(vector_matrix, apicd->cpu, vector, managed); apicd 345 arch/x86/kernel/apic/vector.c apicd->vector = 0; apicd 348 arch/x86/kernel/apic/vector.c vector = apicd->prev_vector; apicd 352 arch/x86/kernel/apic/vector.c per_cpu(vector_irq, apicd->prev_cpu)[vector] = VECTOR_SHUTDOWN; apicd 353 arch/x86/kernel/apic/vector.c irq_matrix_free(vector_matrix, apicd->prev_cpu, vector, managed); apicd 354 arch/x86/kernel/apic/vector.c apicd->prev_vector = 0; apicd 355 arch/x86/kernel/apic/vector.c apicd->move_in_progress = 0; apicd 356 arch/x86/kernel/apic/vector.c hlist_del_init(&apicd->clist); apicd 361 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 364 arch/x86/kernel/apic/vector.c trace_vector_deactivate(irqd->irq, apicd->is_managed, apicd 365 arch/x86/kernel/apic/vector.c apicd->can_reserve, false); apicd 368 arch/x86/kernel/apic/vector.c if (!apicd->is_managed && !apicd->can_reserve) apicd 371 arch/x86/kernel/apic/vector.c if (apicd->has_reserved) apicd 376 arch/x86/kernel/apic/vector.c if (apicd->can_reserve) apicd 385 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 390 arch/x86/kernel/apic/vector.c apicd->has_reserved = false; apicd 399 arch/x86/kernel/apic/vector.c apicd->can_reserve = false; apicd 442 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 446 arch/x86/kernel/apic/vector.c trace_vector_activate(irqd->irq, apicd->is_managed, apicd 447 arch/x86/kernel/apic/vector.c apicd->can_reserve, reserve); apicd 450 arch/x86/kernel/apic/vector.c if (!apicd->can_reserve && !apicd->is_managed) apicd 456 arch/x86/kernel/apic/vector.c else if (apicd->is_managed) apicd 458 arch/x86/kernel/apic/vector.c else if (apicd->has_reserved) apicd 467 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 469 arch/x86/kernel/apic/vector.c trace_vector_teardown(irqd->irq, apicd->is_managed, apicd 470 arch/x86/kernel/apic/vector.c apicd->has_reserved); apicd 472 arch/x86/kernel/apic/vector.c if (apicd->has_reserved) apicd 474 arch/x86/kernel/apic/vector.c if (apicd->is_managed) apicd 481 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd; apicd 492 arch/x86/kernel/apic/vector.c apicd = irqd->chip_data; apicd 495 arch/x86/kernel/apic/vector.c free_apic_chip_data(apicd); apicd 501 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd) apicd 506 arch/x86/kernel/apic/vector.c apicd->vector = ISA_IRQ_VECTOR(virq); apicd 507 arch/x86/kernel/apic/vector.c apicd->cpu = 0; apicd 516 arch/x86/kernel/apic/vector.c apic_update_irq_cfg(irqd, apicd->vector, apicd->cpu); apicd 519 arch/x86/kernel/apic/vector.c apicd->can_reserve = true; apicd 532 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd; apicd 548 arch/x86/kernel/apic/vector.c apicd = alloc_apic_chip_data(node); apicd 549 arch/x86/kernel/apic/vector.c if (!apicd) { apicd 554 arch/x86/kernel/apic/vector.c apicd->irq = virq + i; apicd 556 arch/x86/kernel/apic/vector.c irqd->chip_data = apicd; apicd 567 arch/x86/kernel/apic/vector.c if (!vector_configure_legacy(virq + i, irqd, apicd)) apicd 575 arch/x86/kernel/apic/vector.c free_apic_chip_data(apicd); apicd 591 arch/x86/kernel/apic/vector.c struct apic_chip_data apicd; apicd 613 arch/x86/kernel/apic/vector.c memcpy(&apicd, irqd->chip_data, sizeof(apicd)); apicd 616 arch/x86/kernel/apic/vector.c seq_printf(m, "%*sVector: %5u\n", ind, "", apicd.vector); apicd 617 arch/x86/kernel/apic/vector.c seq_printf(m, "%*sTarget: %5u\n", ind, "", apicd.cpu); apicd 618 arch/x86/kernel/apic/vector.c if (apicd.prev_vector) { apicd 619 arch/x86/kernel/apic/vector.c seq_printf(m, "%*sPrevious vector: %5u\n", ind, "", apicd.prev_vector); apicd 620 arch/x86/kernel/apic/vector.c seq_printf(m, "%*sPrevious target: %5u\n", ind, "", apicd.prev_cpu); apicd 622 arch/x86/kernel/apic/vector.c seq_printf(m, "%*smove_in_progress: %u\n", ind, "", apicd.move_in_progress ? 1 : 0); apicd 623 arch/x86/kernel/apic/vector.c seq_printf(m, "%*sis_managed: %u\n", ind, "", apicd.is_managed ? 1 : 0); apicd 624 arch/x86/kernel/apic/vector.c seq_printf(m, "%*scan_reserve: %u\n", ind, "", apicd.can_reserve ? 1 : 0); apicd 625 arch/x86/kernel/apic/vector.c seq_printf(m, "%*shas_reserved: %u\n", ind, "", apicd.has_reserved ? 1 : 0); apicd 626 arch/x86/kernel/apic/vector.c seq_printf(m, "%*scleanup_pending: %u\n", ind, "", !hlist_unhashed(&apicd.clist)); apicd 772 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 784 arch/x86/kernel/apic/vector.c (apicd->is_managed || apicd->can_reserve)) apicd 803 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd = apic_chip_data(irqd); apicd 807 arch/x86/kernel/apic/vector.c apic->send_IPI(apicd->cpu, apicd->vector); apicd 834 arch/x86/kernel/apic/vector.c static void free_moved_vector(struct apic_chip_data *apicd) apicd 836 arch/x86/kernel/apic/vector.c unsigned int vector = apicd->prev_vector; apicd 837 arch/x86/kernel/apic/vector.c unsigned int cpu = apicd->prev_cpu; apicd 838 arch/x86/kernel/apic/vector.c bool managed = apicd->is_managed; apicd 848 arch/x86/kernel/apic/vector.c trace_vector_free_moved(apicd->irq, cpu, vector, managed); apicd 851 arch/x86/kernel/apic/vector.c hlist_del_init(&apicd->clist); apicd 852 arch/x86/kernel/apic/vector.c apicd->prev_vector = 0; apicd 853 arch/x86/kernel/apic/vector.c apicd->move_in_progress = 0; apicd 859 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd; apicd 866 arch/x86/kernel/apic/vector.c hlist_for_each_entry_safe(apicd, tmp, clhead, clist) { apicd 867 arch/x86/kernel/apic/vector.c unsigned int irr, vector = apicd->prev_vector; apicd 883 arch/x86/kernel/apic/vector.c free_moved_vector(apicd); apicd 890 arch/x86/kernel/apic/vector.c static void __send_cleanup_vector(struct apic_chip_data *apicd) apicd 895 arch/x86/kernel/apic/vector.c apicd->move_in_progress = 0; apicd 896 arch/x86/kernel/apic/vector.c cpu = apicd->prev_cpu; apicd 898 arch/x86/kernel/apic/vector.c hlist_add_head(&apicd->clist, per_cpu_ptr(&cleanup_list, cpu)); apicd 901 arch/x86/kernel/apic/vector.c apicd->prev_vector = 0; apicd 908 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd; apicd 910 arch/x86/kernel/apic/vector.c apicd = container_of(cfg, struct apic_chip_data, hw_irq_cfg); apicd 911 arch/x86/kernel/apic/vector.c if (apicd->move_in_progress) apicd 912 arch/x86/kernel/apic/vector.c __send_cleanup_vector(apicd); apicd 917 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd; apicd 919 arch/x86/kernel/apic/vector.c apicd = container_of(cfg, struct apic_chip_data, hw_irq_cfg); apicd 920 arch/x86/kernel/apic/vector.c if (likely(!apicd->move_in_progress)) apicd 923 arch/x86/kernel/apic/vector.c if (vector == apicd->vector && apicd->cpu == smp_processor_id()) apicd 924 arch/x86/kernel/apic/vector.c __send_cleanup_vector(apicd); apicd 937 arch/x86/kernel/apic/vector.c struct apic_chip_data *apicd; apicd 956 arch/x86/kernel/apic/vector.c apicd = apic_chip_data(irqd); apicd 957 arch/x86/kernel/apic/vector.c if (!apicd) apicd 963 arch/x86/kernel/apic/vector.c vector = apicd->prev_vector; apicd 982 arch/x86/kernel/apic/vector.c if (apicd->move_in_progress) { apicd 1018 arch/x86/kernel/apic/vector.c free_moved_vector(apicd);