RE: [PATCH v2 12/13] iommu/vt-d: Add an irq_chip for posted MSIs

From: Tian, Kevin
Date: Fri Apr 12 2024 - 05:36:24 EST


> From: Jacob Pan <jacob.jun.pan@xxxxxxxxxxxxxxx>
> Sent: Saturday, April 6, 2024 6:31 AM
>
> + *
> + * For the example below, 3 MSIs are coalesced into one CPU notification.
> Only
> + * one apic_eoi() is needed.
> + *
> + * __sysvec_posted_msi_notification()
> + * irq_enter();
> + * handle_edge_irq()
> + * irq_chip_ack_parent()
> + * dummy(); // No EOI
> + * handle_irq_event()
> + * driver_handler()
> + * irq_enter();
> + * handle_edge_irq()
> + * irq_chip_ack_parent()
> + * dummy(); // No EOI
> + * handle_irq_event()
> + * driver_handler()
> + * irq_enter();
> + * handle_edge_irq()
> + * irq_chip_ack_parent()
> + * dummy(); // No EOI
> + * handle_irq_event()
> + * driver_handler()

typo: you added three irq_enter()'s here

> + * apic_eoi()
> + * irq_exit()
> + */
> +static struct irq_chip intel_ir_chip_post_msi = {
> + .name = "INTEL-IR-POST",
> + .irq_ack = dummy,
> + .irq_set_affinity = intel_ir_set_affinity,
> + .irq_compose_msi_msg = intel_ir_compose_msi_msg,
> + .irq_set_vcpu_affinity = intel_ir_set_vcpu_affinity,
> +};

What about putting this patch at end of the series (combining the
change in intel_irq_remapping_alloc()) to finally enable this
feature?

It reads slightly better to me to first get those callbacks extended
to deal with the new mechanism (i.e. most changes in patch13)
before using them in the new irqchip. 😊