WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH 10/11] __setup_vector_irq: handle NULL chip_data

To: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH 10/11] __setup_vector_irq: handle NULL chip_data
From: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
Date: Tue, 11 May 2010 12:20:15 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Stefano Stabellini <Stefano.Stabellini@xxxxxxxxxxxxx>
Delivery-date: Tue, 11 May 2010 04:18:36 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20100510153513.GJ29517@xxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <> <1273501247-27267-11-git-send-email-stefano.stabellini@xxxxxxxxxxxxx> <20100510153513.GJ29517@xxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Alpine 2.00 (DEB 1167 2008-08-23)
On Mon, 10 May 2010, Konrad Rzeszutek Wilk wrote:
> On Mon, May 10, 2010 at 03:20:46PM +0100, Stefano Stabellini wrote:
> > Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> > ---
> >  arch/x86/kernel/apic/io_apic.c |    2 ++
> >  1 files changed, 2 insertions(+), 0 deletions(-)
> > 
> > diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
> > index 96f6bba..976646f 100644
> > --- a/arch/x86/kernel/apic/io_apic.c
> > +++ b/arch/x86/kernel/apic/io_apic.c
> > @@ -1287,6 +1287,8 @@ void __setup_vector_irq(int cpu)
> >     /* Mark the inuse vectors */
> >     for_each_irq_desc(irq, desc) {
> >             cfg = desc->chip_data;
> > +           if (!cfg)
> > +                   continue;
> >             if (!cpumask_test_cpu(cpu, cfg->domain))
> >                     continue;
> >             vector = cfg->vector;
> 
> Most curious. This looks be fixed upstream:
> 
> http://lkml.org/lkml/2010/4/30/458
> 
> Do you know why the chip_data isn't set?
> 

I think is the VIRQ_TIMER handler that doesn't have any chip_data:

xen_setup_timer -> bind_virq_to_irqhandler -> find_unbound_irq -> 
dynamic_irq_init

here chip_data is set to NULL.
After that we call set_irq_chip_and_handler_name that set desc->chip but
not desc->chip_data.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>