qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] arm: vexpress SMP broken?


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] arm: vexpress SMP broken?
Date: Tue, 2 Sep 2014 09:44:27 +0100
User-agent: Mutt/1.5.23 (2014-03-12)

On Tue, Sep 02, 2014 at 05:12:26PM +1000, Peter Crosthwaite wrote:
> Hi All,
> 
> I'm having trouble getting SMP to work on the vexpress platform. Looks
> like a regression.
> 
> Following these instructions using latest QEMU:
> 
> http://wiki.ecg.rice.edu/doku.php?id=xzl:tutorial:arm_qemu
> 
> section "Try ARM Linux prebuilt image on QEMU" with addition of "-smp
> 2" argument, it fails to probe secondary CPUs:
> 
> ./qemu-build/arm-softmmu/qemu-system-arm -kernel ../tmp/uImage -M
> vexpress-a9 -cpu cortex-a9 -serial mon:stdio -m 1024 -initrd ./initrd
> -append 'root=/dev/mmcblk0p2 rw mem=1024M raid=noautodetect
> console=ttyAMA0,38400n8 rootwait vmalloc=256MB devtmpfs.mount=0' -sd
> vexpress-a9-nano.img -nographic -smp 2
> Uncompressing Linux... done, booting the kernel.
> [    0.000000] Booting Linux on physical CPU 0
> ...
> [    0.510327] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
> [    0.512100] Calibrating local timer... 99.40MHz.
> [    0.565227] hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver,
> 1 counters available
> [    1.090777] CPU1: Booted secondary processor
> [    8.655956] CPU1: failed to come online
> [    8.680134] Brought up 1 CPUs
> [    8.680394] SMP: Total of 1 processors activated (609.07 BogoMIPS).
> 
> A bisection points at:
> 
> commit 6d327171551a12b937c5718073b9848d0274c74d
> Author: Alex Bligh <address@hidden>
> Date:   Wed Aug 21 16:02:59 2013 +0100
> 
>     aio / timers: Remove alarm timers
> 
>     Remove alarm timers from qemu-timers.c now we use g_poll / ppoll
>     instead.
> 
>     Signed-off-by: Alex Bligh <address@hidden>
>     Signed-off-by: Stefan Hajnoczi <address@hidden>
> 
> Using the parent to this commit (latest good revision =
> 54904d2a9165bd34dee0f076826b308be2498fe0) gives:
> 
> [    0.719852] CPU1: Booted secondary processor
> [    0.859186] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
> [    0.899732] CPU1: Unknown IPI message 0x1
> [    0.922516] Brought up 2 CPUs
> [    0.922768] SMP: Total of 2 processors activated (1209.54 BogoMIPS).
> 
> This a know issue or anyone have any insights?

No but it does seem something is broken with timers.  The "CPU1: Booted
secondary processor" message comes from the second CPU.  The first CPU is
waiting for it to come online.  The timeout code is probably misbehaving.

Stefan

Attachment: pgpK0RPnAzJ9y.pgp
Description: PGP signature


reply via email to

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