On Thu, 2 Jan 2014, Yinghai Lu wrote: > To make x86 irq allocation to be same with booting path and ioapic > hot add path, We will pre-reserve irq for all gsi at first. > We have to use alloc_reserved here, otherwise irq_alloc_desc_at will fail > because bit is already get marked for pre-reserved in irq bitmaps. > > Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx> > Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> > Cc: xen-devel@xxxxxxxxxxxxxxxxxxx > --- > drivers/xen/events.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/drivers/xen/events.c b/drivers/xen/events.c > index 4035e83..020cd77 100644 > --- a/drivers/xen/events.c > +++ b/drivers/xen/events.c > @@ -508,8 +508,12 @@ static int __must_check xen_allocate_irq_gsi(unsigned gsi) > /* Legacy IRQ descriptors are already allocated by the arch. */ > if (gsi < NR_IRQS_LEGACY) > irq = gsi; > - else > - irq = irq_alloc_desc_at(gsi, -1); > + else { > + /* for x86, irq already get reserved for gsi */ > + irq = irq_alloc_reserved_desc_at(gsi, -1); > + if (irq < 0) > + irq = irq_alloc_desc_at(gsi, -1); > + } This is common code. On ARM I get: drivers/xen/events.c: In function 'xen_allocate_irq_gsi': drivers/xen/events.c:513:3: error: implicit declaration of function 'irq_alloc_reserved_desc_at' [-Werror=implicit-function-declaration] irq = irq_alloc_reserved_desc_at(gsi, -1); ^ cc1: some warnings being treated as errors -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html