Bug 889700

Summary: [abrt] qemu-system-arm-1.2.2-1.fc18: cpu_abort: Process /usr/bin/qemu-system-arm was killed by signal 6 (SIGABRT)
Product: [Fedora] Fedora Reporter: Michael S. <misc>
Component: qemuAssignee: Fedora Virtualization Maintainers <virt-maint>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 18CC: amit.shah, berrange, cfergeau, crobinso, dwmw2, itamar, pbonzini, rjones, scottt.tw, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:921957c2e03f5dbd2492ece5677243b99c28a641
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-09-09 14:02:00 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: backtrace
none
File: cgroup
none
File: core_backtrace
none
File: dso_list
none
File: environ
none
File: limits
none
File: maps
none
File: open_fds
none
File: proc_pid_status
none
File: smolt_data
none
File: var_log_messages none

Description Michael S. 2012-12-22 18:24:19 UTC
Description of problem:
I tried to salvage a arm system ( a freerunner ) by running the system with qemu, using ./boot/uImage-GTA02.bin as kernel ( the kernel is the one from debian ported on the freerunner )

Version-Release number of selected component:
qemu-system-arm-1.2.2-1.fc18

Additional info:
backtrace_rating: 4
cmdline:        qemu-system-arm -kernel ./boot/uImage-GTA02.bin /dev/mmcblk0p1
crash_function: cpu_abort
executable:     /usr/bin/qemu-system-arm
kernel:         3.6.11-3.fc18.x86_64
remote_result:  NOTFOUND
uid:            0

Truncated backtrace:
Thread no. 1 (8 frames)
 #2 cpu_abort at /usr/src/debug/qemu-kvm-1.2.0/exec.c:1772
 #3 get_page_addr_code at /usr/src/debug/qemu-kvm-1.2.0/cputlb.c:336
 #4 tb_find_slow at /usr/src/debug/qemu-kvm-1.2.0/cpu-exec.c:96
 #5 tb_find_fast at /usr/src/debug/qemu-kvm-1.2.0/cpu-exec.c:152
 #6 cpu_arm_exec at /usr/src/debug/qemu-kvm-1.2.0/cpu-exec.c:569
 #7 tcg_cpu_exec at /usr/src/debug/qemu-kvm-1.2.0/cpus.c:1113
 #8 tcg_exec_all at /usr/src/debug/qemu-kvm-1.2.0/cpus.c:1145
 #9 qemu_tcg_cpu_thread_fn at /usr/src/debug/qemu-kvm-1.2.0/cpus.c:840

Comment 1 Michael S. 2012-12-22 18:24:24 UTC
Created attachment 667756 [details]
File: backtrace

Comment 2 Michael S. 2012-12-22 18:24:26 UTC
Created attachment 667757 [details]
File: cgroup

Comment 3 Michael S. 2012-12-22 18:24:28 UTC
Created attachment 667758 [details]
File: core_backtrace

Comment 4 Michael S. 2012-12-22 18:24:30 UTC
Created attachment 667759 [details]
File: dso_list

Comment 5 Michael S. 2012-12-22 18:24:32 UTC
Created attachment 667760 [details]
File: environ

Comment 6 Michael S. 2012-12-22 18:24:34 UTC
Created attachment 667761 [details]
File: limits

Comment 7 Michael S. 2012-12-22 18:24:36 UTC
Created attachment 667762 [details]
File: maps

Comment 8 Michael S. 2012-12-22 18:24:38 UTC
Created attachment 667763 [details]
File: open_fds

Comment 9 Michael S. 2012-12-22 18:24:40 UTC
Created attachment 667764 [details]
File: proc_pid_status

Comment 10 Michael S. 2012-12-22 18:24:42 UTC
Created attachment 667765 [details]
File: smolt_data

Comment 11 Michael S. 2012-12-22 18:24:44 UTC
Created attachment 667766 [details]
File: var_log_messages

Comment 12 Cole Robinson 2013-04-01 12:46:38 UTC
Was the crash a oneoff or is it reproducible?
Can you provide a link to that kernel?

At least googling "qemu freerunner" seems to indicate that a custom qemu is needed to even run it:

http://wiki.openmoko.org/wiki/Openmoko_under_QEMU

So not sure if this should 'just work'

Comment 13 Michael S. 2013-04-01 15:11:43 UTC
It is reproductible. And yep, I know that not everything will work on qemu with the freerunner, but I just wanted to try. 

The issue is not that it doesn't work, more that it does make qemu coredump instead of showing a error message.

The kernel can be found on http://pkg-fso.alioth.debian.org/debian/pool/main/l/linux-2.6-qtmoko/linux-image-2.6.37-qtmoko-gta02_20110412.git425779c72-1_armel.deb 

just open with ar x, and it is in data.tar.gz 

I just checked and I have a coredump with qemu-system-arm-1.2.2-6.fc18.x86_64 

/tmp $ qemu-system-arm -kernel ./boot/uImage.bin-2.6.37-qtmoko 

qemu: fatal: Trying to execute code outside RAM or ROM at 0x30008000
R00=00000000 R01=00000113 R02=00000100 R03=00000000
R04=00000000 R05=00000000 R06=00000000 R07=00000000
R08=00000000 R09=00000000 R10=00000000 R11=00000000
R12=00000000 R13=00000000 R14=00000000 R15=30008000
PSR=400001d3 -Z-- A svc32
zsh: abort (core dumped)  qemu-system-arm -kernel ./boot/uImage.bin-2.6.37-qtmoko

Comment 14 Cole Robinson 2013-09-09 14:02:00 UTC
Yeah qemu-system-arm error reporting is pretty bad: passing it the wrong series of options, too much or too little ram, specifying incorrect machine type can make it crash in various ways. Upstream knows about it, but in many cases the fix isn't simple and they have spent their time on other work. For traditional arm board virtualization it likely won't ever improve unless someone else steps up to do the work.

If you want to follow up, you can file a bug upstream, but it will likely just linger for a very long time (which is why I'm not opening this upstream :) )