Re: [RFC PATCHv3 3/4] x86/pci: Initial commit for new VMD device driver

From: Thomas Gleixner
Date: Wed Nov 04 2015 - 10:15:41 EST


On Wed, 4 Nov 2015, Keith Busch wrote:

> On Tue, Nov 03, 2015 at 12:42:02PM +0100, Thomas Gleixner wrote:
> > On Tue, 3 Nov 2015, Keith Busch wrote:
> > > > > + msi_irqdomain = pci_msi_create_irq_domain(NULL, &pci_chained_msi_domain_info,
> > > > > + vmd_irqdomain);
> >
> > But that parent limitation does not matter simply because your
> > msi_irqdomain does not follow down the hierarchy in the allocation
> > path.
> >
> > So we can avoid the vmd_irqdomain creation completely. It's just
> > wasting memory and has no value at all. Creating the msi domain with a
> > NULL parent is possible.
>
> I'm having trouble following the hierarchy and didn't understand the
> connection between the parent and msi comain. It's still new to me,
> but I don't think a NULL parent is allowable with msi domains:
>
> pci_msi_setup_msi_irqs()
> pci_msi_domain_alloc_irqs()
> msi_domain_alloc_irqs()
> __irq_domain_alloc_irqs()
> irq_domain_alloc_irqs_recursive()
> msi_domain_alloc()
> irq_domain_alloc_irqs_parent()
>
> The last call returns -ENOSYS since there parent is NULL. Was the
> intension to allow no parent, or do I still need to allocate one to
> achieve the desired chaining?

Hmm, seems I missed that part. But that's a fixable problem. Jiang?

Thanks,

tglx

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/