[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v4 05/17] xen/arm: ITS: implement hw_irq_controller for LPIs

On Sat, 2015-07-18 at 11:13 +0100, Julien Grall wrote:
> Hi Ian,
> On 15/07/2015 10:32, Ian Campbell wrote:
> >> and save 2 byte if not more with the alignment per irq_desc.
> >
> > If this is a concern then I would say we would either want a separate
> > array of per-pLPI information which we do not want in irq_desc because
> > it is irq specific, or do add a pointer to its_desc which points to an
> > array of per-event information.
> I noticed that we have a field msi_desc in the structure irq_desc. On 
> ARM, the structure msi_desc is not defined at all but still waste a 8 
> byte for the pointer in the irq_desc.
> Given that LPI is an MSI, I'm wondering if we could move all LPI related 
> data in this msi_desc. This would avoid to introduce new field in the 
> irq_desc structure.

Yes, I think I suggested something similar at some point, although I
seemed to think msi_desc was more similar to its_device.

Looking at the content of the struct, alloc_msi_entry and
msi_capability_init makes me less sure, it looks like msi_entry on x86
is allocated as an array (sized for events) stored per device, which
doesn't directly map onto how ARM is structured.

So what you propose may make more sense:

> The msi_desc would look like:
> struct msi_desc
> {
>       its_device *dev;
>       unsigned int eventID;
> };
> Regards,

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.