Bug 667668

Summary: qemuxml2argvtest fails during build on s390
Product: [Fedora] Fedora Reporter: Dan Horák <dan>
Component: libvirtAssignee: Jiri Denemark <jdenemar>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: aquini, berrange, clalance, crobinso, dhorak, itamar, jforbes, veillard, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: s390x   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-22 04:47:06 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Attachments:
Description Flags
whole build log with VIR_TEST_DEBUG set for tests none

Description Dan Horák 2011-01-06 07:17:44 EST
build of libvirt-0.8.7-1.fc15 on s390(x) fails due failing qemuxml2argvtest

TEST: qemuxml2argvtest
      ........................................ 40 
      ........................................ 80 
      .............................!.!!!!!     116 FAIL


http://s390.koji.fedoraproject.org/koji/taskinfo?taskID=276285

I will provide more details later.
Comment 1 Daniel Berrange 2011-01-06 07:25:22 EST
If you can get into the build root, then the best info to provide is


  cd $LIBVIRTDIR/tests/
  VIR_TEST_DEBUG=1 ./qemuxml2argvtest
Comment 2 Dan Horák 2011-01-06 08:24:34 EST
Created attachment 472049 [details]
whole build log with VIR_TEST_DEBUG set for tests
Comment 3 Dan Horák 2011-01-06 08:26:22 EST
I can also provide provide access to a s390x Fedora box.
Comment 4 Daniel Berrange 2011-01-06 08:42:44 EST
Here's the relevant data:

105) QEMU XML-2-ARGV restore-v2                                        ... OK
106) QEMU XML-2-ARGV migrate                                           ... OK
107) QEMU XML-2-ARGV qemu-ns                                           ... OK
108) QEMU XML-2-ARGV smp                                               ... OK
109) QEMU XML-2-ARGV cpu-topology1                                     ... OK
110) QEMU XML-2-ARGV cpu-topology2                                     ... libvir: QEMU error : unsupported configuration: CPU specification not supported by hypervisor
FAILED
111) QEMU XML-2-ARGV cpu-topology3                                     ... OK
112) QEMU XML-2-ARGV cpu-minimum1                                      ... libvir: QEMU error : unsupported configuration: CPU specification not supported by hypervisor
FAILED
113) QEMU XML-2-ARGV cpu-minimum2                                      ... libvir: QEMU error : unsupported configuration: CPU specification not supported by hypervisor
FAILED
114) QEMU XML-2-ARGV cpu-exact1                                        ... libvir: QEMU error : unsupported configuration: CPU specification not supported by hypervisor
FAILED
115) QEMU XML-2-ARGV cpu-exact2                                        ... libvir: QEMU error : unsupported configuration: CPU specification not supported by hypervisor
FAILED
116) QEMU XML-2-ARGV cpu-strict1                                       ... libvir: QEMU error : unsupported configuration: CPU specification not supported by hypervisor
FAILED
FAIL: qemuxml2argvtest
TEST: qemuxml2xmltest

So it seems the test case has got some architecture dependant data in it, that needs to be better handled on non-x86
Comment 5 Jiri Denemark 2011-01-10 06:03:55 EST
Strange, RHEL package builds just fine even on 390. Also this error is only raised if either no host CPU model could be detected or qemu binary did not return a list of supported CPU models. But we fake both in the test suite.
Comment 6 Dan Horák 2011-01-12 09:40:32 EST
(In reply to comment #5)
> Strange, RHEL package builds just fine even on 390. Also this error is only
> raised if either no host CPU model could be detected or qemu binary did not
> return a list of supported CPU models. But we fake both in the test suite.

The RHEL package has QEMU support disabled on s390(x), but in Fedora there are all backends besides Xen enabled by default.
Comment 7 Jiri Denemark 2011-02-22 04:47:06 EST
This was fixed upstream by v0.8.7-255-gaa3b2e4 and v0.8.7-256-g453d05d:

commit aa3b2e40f551e8cfdf668e3eb1138b9eae09ae48
Author: Jiri Denemark <jdenemar@redhat.com>
Date:   Tue Feb 15 15:24:39 2011 +0100

    tests: Fake host capabilities properly
    
    Since we fake host CPU we should also fake host arch instead of taking
    the real architecture tests are running on.

commit 453d05dab9ccdd866b2691586d5e7d592856a839
Author: Jiri Denemark <jdenemar@redhat.com>
Date:   Tue Feb 15 15:23:17 2011 +0100

    qemu: Fix command line generation with faked host CPU
    
    The code expected that host CPU architecture matches the architecture on
    which libvirt runs. This is normally true but not in tests, where host
    CPU is faked to produce consistent results.