Red Hat Bugzilla – Full Text Bug Listing
|Summary:||qemu test suite fails on ARM|
|Product:||[Fedora] Fedora||Reporter:||Peter Robinson <pbrobinson>|
|Component:||qemu||Assignee:||Fedora Virtualization Maintainers <virt-maint>|
|Status:||CLOSED CURRENTRELEASE||QA Contact:||Fedora Extras Quality Assurance <extras-qa>|
|Version:||17||CC:||amit.shah, berrange, cfergeau, dwmw2, ehabkost, itamar, knoel, pbonzini, scottt.tw, virt-maint|
|Fixed In Version:||qemu-1.0-17.fc17||Doc Type:||Bug Fix|
|Doc Text:||Story Points:||---|
|Last Closed:||2012-05-03 09:14:11 EDT||Type:||Bug|
|oVirt Team:||---||RHEL 7.3 requirements from Atomic Host:|
|Bug Depends On:|
Description Peter Robinson 2012-04-23 05:15:14 EDT
Release 6 has the following changes: * Mon Feb 13 2012 Daniel P. Berrange <email@example.com> - 2:1.0-6 - Add many more missing BRs for misc QEMU features - Enable running of test suite during build Ever since it's failed to build on ARM. It looks like there might be some x86 specific tests but as qemu emulates many different architectures it could well be that I'm just looking at that wrong. + for i in dummy qemu-i386 qemu-i486 qemu-alpha qemu-arm qemu-armeb qemu-mips qemu-mipsn32 qemu-mips64 qemu-mipsel qemu-mipsn32el qemu-mips64el qemu-m68k qemu-ppc qemu-sparc qemu-s390x qemu-sh4 qemu-sh4eb + test qemu-i486 = dummy + grep '/qemu-i486:$' /builddir/build/SOURCES/qemu.binfmt error: Bad exit status from /var/tmp/rpm-tmp.7oNCeN (%install) RPM build errors: Bad exit status from /var/tmp/rpm-tmp.7oNCeN (%install) Child return code was: 1 qemu-1.0-15.fc17 failed build: http://arm.koji.fedoraproject.org/taskinfo?taskID=753593
Comment 1 Daniel Berrange 2012-04-23 05:27:12 EDT
I don't see how that quoted changeset can cause the failure shown in koji, since the code that's failing is completely unrelated. I think the problem is rather caused by this commit a96ffe838d1b3a665eb26baf561f122ba1dbb040 Author: Paolo Bonzini <firstname.lastname@example.org> Date: Mon Apr 2 12:21:38 2012 +0200 update qemu.binfmt from upstream The grep rule is looking for a match at the end of the line, but the i486 is onyl at the start of the line: $ grep '/qemu-i386:$' qemu.binfmt :qemu-i386:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-i386: :qemu-i486:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x06\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-i386: $ grep '/qemu-i486:$' qemu.binfmt $ echo $? 1
Comment 2 Peter Robinson 2012-04-23 05:31:28 EDT
I'm not a qemu expert so you're likely right hence the bug report :)
Comment 3 Paolo Bonzini 2012-04-23 05:46:11 EDT
Is the ARM builder configured differently in some respect? Like it executes install scriptlets with "set -e" and koji.fedoraproject.org does not? I fixed this in 1.0-17.fc17, but it would be great if you could find a minimal reproducer and a root cause, so I'm not closing the bug yet. (The component should probably be changed though).
Comment 4 Peter Robinson 2012-04-23 05:53:05 EDT
No, it should execute everything the same way on all platforms. The only difference should be 1) compiler options and flags that are platform specific 2) any missing packages on ARM (there's not that many). In general the experience in koji should be identical.
Comment 5 Paolo Bonzini 2012-04-23 06:07:25 EDT
Doh, the obvious difference is that qemu-i386 binfmt support is only added on non-x86 architectures.
Comment 6 Fedora Update System 2012-04-23 06:30:13 EDT
qemu-1.0-17.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/qemu-1.0-17.fc17
Comment 7 Peter Robinson 2012-04-23 10:11:28 EDT
Still failing with release 17 http://arm.koji.fedoraproject.org/taskinfo?taskID=755292
Comment 8 Daniel Berrange 2012-04-23 10:15:35 EDT
Ok, but this is a completely different bug now: + make check ./check-qfloat Running suite(s): QFloat test-suite 100%: Checks: 2, Failures: 0, Errors: 0 ./check-qjson Running suite(s): QJSON test-suite 100%: Checks: 21, Failures: 0, Errors: 0 ./test-coroutine /basic/lifecycle: make: *** [run-check-test-coroutine] Aborted error: Bad exit status from /var/tmp/rpm-tmp.tXrFn6 (%check) There's a chance this test suite is flawed, but my money is on QEMU's coroutine impl being broken on Arm. I don't have easy access to any Arm hardware, so can you do a manual build of QEMU and then run 'test-coroutine' under GDB and capture a full stack trace
Comment 9 Paolo Bonzini 2012-04-23 11:56:05 EDT
These commits are needed: commit fe91bfa8a26832cc07a6b74b8decfb687499caee coroutine: adding configure option for sigaltstack coroutine backend commit 519175a2fdfd3766f99bc29f0b199e23d57a3dd2 coroutine: adding configure choose mechanism for coroutine backend commit 3194c8ceeba06c3b54621ea7afd6879bc50c2d1d coroutine: adding sigaltstack method (.c source) Plus you need to configure with --with-coroutine=sigaltstack (only needed on ARM only, but if build passes we can do it for x86 too, the performance penalty is small).
Comment 10 Fedora Update System 2012-04-23 23:16:54 EDT
Package qemu-1.0-17.fc17: * should fix your issue, * was pushed to the Fedora 17 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing qemu-1.0-17.fc17' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2012-6457/qemu-1.0-17.fc17 then log in and leave karma (feedback).
Comment 11 Fedora Update System 2012-05-02 00:47:53 EDT
qemu-1.0-17.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.
Comment 12 Peter Robinson 2012-05-02 02:56:22 EDT
This still isn't fixed in that qemu is still fails to build on ARM
Comment 13 Peter Robinson 2012-05-03 09:14:11 EDT
It built later on, not sure what changed.