|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 06/21] xen/arm: Allow virq != irq
On Wed, 6 Aug 2014, Julien Grall wrote:
> Hi Stefano,
>
> On 08/06/2014 03:50 PM, Stefano Stabellini wrote:
> >> -int route_irq_to_guest(struct domain *d, unsigned int irq,
> >> - const char * devname)
> >> +int route_irq_to_guest(struct domain *d, unsigned int virq,
> >> + unsigned int irq, const char * devname)
> >> {
> >> struct irqaction *action;
> >> - struct irq_desc *desc = irq_to_desc(irq);
> >> + struct irq_guest *info;
> >> + struct irq_desc *desc;
> >> unsigned long flags;
> >> int retval = 0;
> >>
> >> action = xmalloc(struct irqaction);
> >> - if (!action)
> >> + if ( !action )
> >> + return -ENOMEM;
> >> +
> >> + info = xmalloc(struct irq_guest);
> >> + if ( !info )
> >> + {
> >> + xfree(action);
> >> return -ENOMEM;
> >> + }
> >
> > Rather than xmalloc'ing another struct and storing the pointer in
> > dev_id, maybe we could simply expand struct arch_irq_desc?
>
> I though about it. If we add another field in arch_irq_desc, we will
> likely use more memory than xmalloc. This is because most of the
> platform doesn't use 1024 interrupts but about 256 interrupts.
>
> As the new field will be a pointer (on ARM64, 8 bytes), that would make
> Xen use statically about 8K more.
OK
> We could allocate irq_desc dynamically during Xen boot.
Let's leave it as is.
Acked-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |