qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] SPARC not booting SMP Linux kernel


From: Blue Swirl
Subject: Re: [Qemu-devel] SPARC not booting SMP Linux kernel
Date: Tue, 27 Apr 2010 21:23:43 +0300

On 4/27/10, 陈宇飞 <address@hidden> wrote:
> Actually this has been test before.
>
>  http://lists.gnu.org/archive/html/qemu-devel/2006-08/msg00512.html

That was before I added SMP support to OpenBIOS.

>  I've tested Debian 3.1 (with Linux 2.4.27.3) and Debian 4.0 (with
>  Linux 2.6.18.6), on both qemu 0.10.6 and 0.12.3, emulating machine is
>  set to SS-20.
>
>  1. non-smp kernel successfully boots with both -smp 1 or -smp 2.
>  2. smp kernel can only boot with -smp 1. (The 2.6 kernel is cross
>  compiled by gcc 4.2.4 since no binary package is available)
>
>  Some investigation with qemu's debug message and Linux kernel dump
>  (the 2.6 kernel) shows that
>
>  1. When the boot cpu tries to start cpu 1, cpu 1 calls
>  local_irq_enable. After that, cpu 1 get's lot's of level 14 interrupt.
>  2. Printing out the executed TBs' pc values shows that kernel
>  interrupt handler is executed.
>  3. Qemu's do_interrupt debug message shows that cpu 1 always get level
>  14 interrupt at the same pc, which is the nop instruction just after
>  the "mov %g1, %psr" instruction.
>
>  I guess that the interrupt is not cleared even after the execution of
>  the interrupt handler. I've found debian installation report which
>  boots smp linux kernel, so I thinks this problem is caused by qemu?
>
>  I'm tring to fix this problem but I'm not familiar with sparc
>  architecture, is there any clue?

This sounds awfully familiar to the problems Solaris had with
interrupts. Does the problem still exist with git HEAD version of
QEMU?




reply via email to

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