[PATCH 14/16] PCI: hv: Switch to msi_create_parent_irq_domain()

Nam Cao namcao at linutronix.de
Thu Jul 3 14:00:56 PDT 2025


On Thu, Jul 03, 2025 at 08:15:07PM +0000, Michael Kelley wrote:
> From: Thomas Gleixner <tglx at linutronix.de> Sent: Thursday, July 3, 2025 1:00 PM
> > 
> > On Thu, Jul 03 2025 at 17:41, Michael Kelley wrote:
> > > From: Nam Cao <namcao at linutronix.de> Sent: Thursday, June 26, 2025 7:48 AM
> > >>
> > >> Move away from the legacy MSI domain setup, switch to use
> > >> msi_create_parent_irq_domain().
> > >
> > > From a build standpoint, this patch does not apply cleanly to
> > > linux-next20250630. See also an issue below where a needed irq
> > > function isn't exported.
> > 
> > Does it conflict against the PCI tree?
> 
> There's no conflict in the "next" or "for-linus" tags in
> https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git/.
> 
> The conflict is with Patch 2 of this series:
> 
> https://lore.kernel.org/linux-hyperv/1749650984-9193-1-git-send-email-shradhagupta@linux.microsoft.com/
> 
> which is in netdev/net-next.

I need some guidance here. If I make it apply cleanly to linux-next, it
won't apply to pci tree.

I saw this type of conflict being resolved during merging to Linus's tree.
Shouldn't we do the same for this case?

> Michael
> 
> > 
> > > At runtime, I've done basic smoke testing on an x86 VM in the Azure
> > > cloud that has a Mellanox NIC VF and two NVMe devices as PCI devices.
> > > So far everything looks good. But I'm still doing additional testing, and
> > > I want to also test on an ARM64 VM. Please give me another day or two
> > > to be completely satisfied.

Good to hear, thanks!

> > Sure.
> > >> +static void hv_pcie_domain_free(struct irq_domain *d, unsigned int virq, unsigned int nr_irqs)
> > >> +{
> > >> +	struct msi_domain_info *info = d->host_data;
> > >> +
> > >> +	for (int i = 0; i < nr_irqs; i++)
> > >> +		hv_msi_free(d, info, virq + i);
> > >> +
> > >> +	irq_domain_free_irqs_top(d, virq, nr_irqs);
> > >
> > > This code can be built as a module, so irq_domain_free_irqs_top() needs to be
> > > exported, which it currently is not.
> > 
> > Nam, can you please create a seperate patch, which exports this and take
> > care of the conflict?

Will do.

Best regards,
Nam



More information about the linux-arm-kernel mailing list