qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] Re: sparc32 do not clear interrupts when masking


From: Blue Swirl
Subject: [Qemu-devel] Re: sparc32 do not clear interrupts when masking
Date: Sat, 16 Jan 2010 08:16:21 +0000

On Fri, Jan 15, 2010 at 10:37 PM, Artyom Tarasenko
<address@hidden> wrote:
> Don't clear interrupts on disabling, because
> * Sun4M_SystemArchitecture_edited2.pdf doesn't describe
>  that masking or un-masking IRQ shall clear pending ones.
>
> * Field tests also show that SPARCstation-20 doesn't
>  clear them.

Awesome work!

> * The patch makes Solaris 2.5.1/2.6 boot ~1500 times
>  faster (~20 seconds instead of ~8 hours)

Unfortunately there is some problem with the patch (or more likely
there is some other bug that this uncovers), because all my Linux test
now panic. NetBSD and OpenBSD are unaffected.

For example, sparc-test:
eth0: LANCE 52:54:00:12:34:56
esp0: no command in esp_handle()
Kernel panic - not syncing: esp_handle: current_SC == penguin within interrupt!
 <0>Press L1-A to return to the boot prom

The bug may be in ESP interrupt handling (or in the interrupt chain
between ESP, DMA controller and interrupt controller) as the panic
always happens in ESP probe.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]