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

Re: [Xen-devel] Hypervisor crash setting up GIC (arm32)



On Tue, 2014-04-22 at 18:26 +0100, Thomas Leonard wrote:
> On 22 April 2014 15:11, Thomas Leonard <talex5@xxxxxxxxx> wrote:
> > Hi guys,
> >
> > I've got a bit further and I'm now trying to get Mini-OS to handle
> > interrupts.  [...] my IRQ handler keeps being called (continuously)
> > with spurious interrupts (interrupt 1023). If anyone knows what might cause 
> > that, let me know!
> 
> For reference, the problem here was this code:
> 
>     gic_disable_interrupts(&gic);
>     gic_cpu_set_priority(&gic, 0xff);
>     gic_enable_interrupt(&gic, EVENTS_IRQ /* interrupt number */, 0x1
> /*cpu_set*/, 1 /*level_sensitive*/, 0 /* ppi */);
>     gic_enable_interrupt(&gic, VIRTUALTIMER_IRQ /* interrupt number
> */, 0x1 /*cpu_set*/, 1 /*level_sensitive*/, 1 /* ppi */);
>     gic_enable_interrupts(&gic);
> 
> As soon as EVENTS_IRQ was enabled in gic_enable_interrupt, the IRQ
> handler got called continuously with spurious interrupts and no
> progress could be made.

Stefano, weren't the Galois guys seeing something similar? You fixed it
somewhere in a pending series IIRC? 
> 
> The solution is to call gic_enable_interrupts *before* enabling the
> individual interrupts.
> 
> The patch is on my Mini-OS branch here:
> 
>   https://github.com/talex5/xen/tree/minios-arm-port
> 
> 



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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