On 1/1/08, Aurelien Jarno <[EMAIL PROTECTED]> wrote: > On Sat, Dec 29, 2007 at 08:09:57PM +0000, Blue Swirl wrote: > > CVSROOT: /cvsroot/qemu > > Module name: qemu > > Changes by: Blue Swirl <blueswir1> 07/12/29 20:09:57 > > > > Modified files: > > hw : slavio_intctl.c slavio_timer.c sun4m.c > > > > Log message: > > Fix CPU timer interrupts > > > > CVSWeb URLs: > > http://cvs.savannah.gnu.org/viewcvs/qemu/hw/slavio_intctl.c?cvsroot=qemu&r1=1.26&r2=1.27 > > http://cvs.savannah.gnu.org/viewcvs/qemu/hw/slavio_timer.c?cvsroot=qemu&r1=1.26&r2=1.27 > > http://cvs.savannah.gnu.org/viewcvs/qemu/hw/sun4m.c?cvsroot=qemu&r1=1.76&r2=1.77 > > > > Unfortunately this commit has broken SS-5 running Linux:
Thanks for the report, I can reproduce the bug. What a strange error! The following patch hides the problem, but it also un-fixes the CPU timer. I have to think of a better solution. diff -u -r1.28 slavio_intctl.c --- hw/slavio_intctl.c 1 Jan 2008 17:06:38 -0000 1.28 +++ hw/slavio_intctl.c 1 Jan 2008 19:52:22 -0000 @@ -257,7 +257,7 @@ if (pending & (1 << j)) pil_pending |= 1 << s->intbit_to_level[j]; } - pil_pending |= s->intreg_pending[i] & CPU_HARDIRQ_MASK; + //pil_pending |= s->intreg_pending[i] & CPU_HARDIRQ_MASK; } pil_pending |= (s->intreg_pending[i] & CPU_SOFTIRQ_MASK) >> 16;