|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Hypervisor crash setting up GIC (arm32)
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.
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
--
Dr Thomas Leonard http://0install.net/
GPG: 9242 9807 C985 3C07 44A6 8B9A AE07 8280 59A5 3CC1
GPG: DA98 25AE CAD0 8975 7CDA BD8E 0713 3F96 CA74 D8BA
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |