Versatile PB segfaults on start

Bug #731093 reported by Michael Hope
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro QEMU
Fix Released
Low
Unassigned

Bug Description

Starting qemu-linaro 2011.03 with -M versatilepb causes qemu to die with a segfault:

michaelh@crucis:~/linaro/qemu/qemu-linaro$ ./arm-softmmu/qemu-system-arm -M versatilepb -kernel ../vexpress/pkgs/boot/vmlinuz-2.6.38-1000-linaro-vexpress -sd ../vexpress.img -append "root=b302 console=ttyAMA0" -vnc :1
Segmentation fault

(Note the mismatch between kernel and model here - it happens with real versatile kernels as well).

The segfault occurs at hw/versatilepb.c:256 when calling:
    sysbus_create_varargs("pl181", 0x1000b000, sic[23], sic[2], NULL);

and seems to be because you can't have two pl181 instances.

I haven't verified this upstream.

Revision history for this message
Loïc Minier (lool) wrote :

-M versatilepb selects emulation of very old ARM Versatile PB, supported by linux/arch/arm/mach-versatile; vmlinuz-2.6.38-1000-linaro-vexpress supports linux/arch/arm/mach-vexpress which is RealView Versatile Express, the latest publicly available board from ARM. (Versatile is ARMv5 CPU.)

You want -M vexpress-a9 instead.

Of course you could argue that QEMU should never segfault, but I guess that if this is the equivalent of running an armv7 kernel on armv5 hardware which might have a different memory map altogether, then this could brick the hardware in real life, so it might not be too important to handle this gracefully.

Revision history for this message
Peter Maydell (pmaydell) wrote :

Yes, but it happens regardless of what actual kernel you hand it, and even if you don't hand it an -sd image; that is, versatilepb is completely broken. Oops.

Revision history for this message
Peter Maydell (pmaydell) wrote :

Bah. I want to target this to 2011.03-1 milestone but launchpad won't let me because it's already been released.

Changed in qemu-linaro:
status: New → Fix Released
milestone: none → 2011.03-1
Revision history for this message
Loïc Minier (lool) wrote :

You seem to have succeeded in targetting this to 2011.03-1?

Revision history for this message
Michael Hope (michaelh1) wrote :

Sorry, my description was poor. I meant to say that running qemu with -M versatilepb <anything> segfaults. It happened that my commandline history had a vexpress kernel in it.

Revision history for this message
Peter Maydell (pmaydell) wrote :

This bug was fixed in upstream qemu by Aurelien on Sunday:
http://git.qemu.org/qemu.git/commit/?id=0d2e91c17829729812bf5d22d20dd0f5d2554ec2

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.