[libvirt] [PATCH] tests: Fix the build failure on s390

Osier Yang jyang at redhat.com
Mon Feb 10 14:37:52 UTC 2014


On 10/02/14 22:31, Osier Yang wrote:
> On 10/02/14 21:48, Jiri Denemark wrote:
>> On Mon, Feb 10, 2014 at 21:35:18 +0800, Osier Yang wrote:
>>> The build works fine on other architectures with commit 0b4f76fc5, but
>>> for s390:
>>>
>>> TEST: virscsitest
>>>   1) test1  ... OK
>>>   2) test2  ... libvirt:  error : SCSI device '1:0:0:0': could not 
>>> access
>>>   /builddir/build/BUILD/libvirt-1.1.1/tests/virscsidata/sg8: No such 
>>> file
>>>   or directory
>>> FAILED
>>>
>>> It's caused by the "patch" on the s390 system either doesn't create
>>> the "empty files", or removed them after the patch was applied. Anyway,
>>> this patch is to fix it by simply adding useless numbers to the 2
>>> test input files.
>> This is pretty strange. AFAIK no patch binary creates empty files
>> although git does that. If the build failed just because of that, it
>> should have failed on other archs too.
>
> It's depended on the version of *patch*, for example, the attached
> patch creates two files, file "aaa" is not empty, "bbb" is empty:
>
> % cat aaa
> Hello, World!
>
> % cat bbb
>
> *On Fedora 19:*
>
> % patch -p1 < 0001-Funny-empty-files.patch
> patching file aaa
>
> % ls aaa bbb
> ls: cannot access bbb: No such file or directory
> aaa
>
> % patch --version | head -1
> patch 2.6.1
>
> *On RHEL7.0:*
>
> % patch -p1 < 0001-Funny-empty-files.patch
> patching file aaa
> patching file bbb
>
> % ls aaa bbb
> aaa  bbb
>
> % patch --version | head -1
> GNU patch 2.7.1
>
> Note that on Fedora 19, the output of the patch command only says
> "patching file aaa", for the empty file "bbb", nothing was happened, this
> is what exactly I saw in the build.log from your scratch build (the 
> failed
> one, sorry for that, btw).
>

We have other empty empty files too (the test input files, the only ones 
which
are empty in the source, except ChangeLog and AUTHORS):

% find tests -type f -empty
tests/fchostdata/fc_host/host4/vport_delete
tests/fchostdata/fc_host/host4/vport_create
tests/fchostdata/fc_host/host5/vport_delete
tests/fchostdata/fc_host/host5/vport_create
tests/qemuxml2argvdata/qemuxml2argv-pseries-vio-address-clash.args
tests/xencapsdata/xen-ppc64.cpuinfo
tests/qemuhelpdata/qemu-kvm-0.12.3-device
tests/qemuhelpdata/qemu-0.12.1-device

But since all of above are not created by the *.patch, instead, they are 
in the
tarball (libvirt-$version.tar.gz), so the problem was hidden

Osier




More information about the libvir-list mailing list