Lines Matching refs:eoi
523 struct lateeoi_work *eoi = &per_cpu(lateeoi, info->eoi_cpu); in lateeoi_list_del() local
526 spin_lock_irqsave(&eoi->eoi_list_lock, flags); in lateeoi_list_del()
528 spin_unlock_irqrestore(&eoi->eoi_list_lock, flags); in lateeoi_list_del()
533 struct lateeoi_work *eoi = &per_cpu(lateeoi, info->eoi_cpu); in lateeoi_list_add() local
544 spin_lock_irqsave(&eoi->eoi_list_lock, flags); in lateeoi_list_add()
546 if (list_empty(&eoi->eoi_list)) { in lateeoi_list_add()
547 list_add(&info->eoi_list, &eoi->eoi_list); in lateeoi_list_add()
549 &eoi->delayed, delay); in lateeoi_list_add()
551 list_for_each_entry_reverse(elem, &eoi->eoi_list, eoi_list) { in lateeoi_list_add()
558 spin_unlock_irqrestore(&eoi->eoi_list_lock, flags); in lateeoi_list_add()
602 struct lateeoi_work *eoi; in xen_irq_lateeoi_worker() local
607 eoi = container_of(to_delayed_work(work), struct lateeoi_work, delayed); in xen_irq_lateeoi_worker()
612 spin_lock(&eoi->eoi_list_lock); in xen_irq_lateeoi_worker()
614 info = list_first_entry_or_null(&eoi->eoi_list, struct irq_info, in xen_irq_lateeoi_worker()
618 spin_unlock(&eoi->eoi_list_lock); in xen_irq_lateeoi_worker()
624 spin_unlock(&eoi->eoi_list_lock); in xen_irq_lateeoi_worker()
633 &eoi->delayed, info->eoi_time - now); in xen_irq_lateeoi_worker()
640 struct lateeoi_work *eoi = &per_cpu(lateeoi, cpu); in xen_cpu_init_eoi() local
642 INIT_DELAYED_WORK(&eoi->delayed, xen_irq_lateeoi_worker); in xen_cpu_init_eoi()
643 spin_lock_init(&eoi->eoi_list_lock); in xen_cpu_init_eoi()
644 INIT_LIST_HEAD(&eoi->eoi_list); in xen_cpu_init_eoi()
792 struct physdev_eoi eoi = { .irq = pirq_from_irq(data->irq) }; in eoi_pirq() local
811 rc = HYPERVISOR_physdev_op(PHYSDEVOP_eoi, &eoi); in eoi_pirq()