Bug 172389
| Summary: | 'make check' fails on PPC build machine | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Enrico Scholz <rh-bugzilla> | ||||||
| Component: | util-vserver | Assignee: | Enrico Scholz <rh-bugzilla> | ||||||
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
| Severity: | medium | Docs Contact: | |||||||
| Priority: | medium | ||||||||
| Version: | rawhide | CC: | byte, extras-qa, kevin | ||||||
| Target Milestone: | --- | ||||||||
| Target Release: | --- | ||||||||
| Hardware: | powerpc | ||||||||
| OS: | Linux | ||||||||
| URL: | http://buildsys.fedoraproject.org/logs/fedora-development-extras/415-util-vserver-0.30.209-3.fc5/ppc/build.log | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2007-04-30 12:11:35 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: | |||||||||
| Bug Depends On: | 176788 | ||||||||
| Bug Blocks: | 179260 | ||||||||
| Attachments: |
|
||||||||
Created attachment 120693 [details]
Working ('good') program (from the Mandriva toolchain)
Created attachment 120696 [details]
Broken ('bad') test program
... forget the comment about the 'lis' + 'stw' commands; I looked into the
wrong binary ('personality')...
For completeness (I do not know, how long the buildlogs are kept) the
visible problem:
| + gdb --batch --command=/builddir/build/SOURCES/personality.gdb ./lib/testsuite/cflags
| Using host libthread_db library "/lib/libthread_db.so.1".
| ['start' resp. 'b main']
| Breakpoint 1 at 0x10000124: file lib/testsuite/cflags.c, line 75.
|
| ['start' resp. 'run']
| Program terminated with signal SIGKILL, Killed.
| The program no longer exists.
| /builddir/build/SOURCES/personality.gdb:1: Error in sourced command file:
| You can't do that without a process to debug.
| + /usr/bin/make check
| ...
| /usr/bin/make check-TESTS
| make[3]: Entering directory `/builddir/build/BUILD/util-vserver-0.30.209'
| /bin/sh: line 1: 13088 Killed ensc_use_expensive_tests="no" ensc_test_debug="no" srctestsuitedir=./src/testsuite libinternaltestsuitedir=./lib_internal/testsuite ${dir}$tst
| FAIL: lib/testsuite/cflags
| /bin/sh: line 1: 13093 Killed ensc_use_expensive_tests="no" ensc_test_debug="no" srctestsuitedir=./src/testsuite libinternaltestsuitedir=./lib_internal/testsuite ${dir}$tst
| FAIL: lib/testsuite/personality
| PASS: lib/testsuite/fmt
| PASS: lib/testsuite/parselimit
FC-4 build machine (peach), reports:
net.lo -MD -MP -MF lib/.deps/lib_libvserver_la-ncaps_list-net.Tpo -c lib/ncaps_list-net.c -fPIC -DPIC
-o lib/.libs/lib_libvserver_la-ncaps_list-net.o
lib/ncaps-net.c:33:2: warning: #warning is a GCC extension
lib/ncaps-net.c:33:2: warning: #warning Add the 'ncap' values here
lib/ncaps-net.c:34: warning: ISO C forbids empty initializer braces
lib/ncaps-net.c:32: error: zero or negative size array 'VALUES'
make[3]: *** [lib/lib_libvserver_la-ncaps-net.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
gcc -DHAVE_CONFIG_H -I. -I. -I. -I ./lib -I ./ensc_wrappers -D_GNU_SOURCE -D_REENTRANT -
DNDEBUG -DNDEBUG -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -m32 -fsigned-char -
std=c99 -Wall -pedantic -W -MT lib/lib_libvserver_la-nflags-net.lo -MD -MP -MF lib/.deps/
lib_libvserver_la-nflags-net.Tpo -c lib/nflags-net.c -fPIC -DPIC -o lib/.libs/lib_libvserver_la-nflags-
net.o
lib/nflags-net.c:33:2: warning: #warning is a GCC extension
lib/nflags-net.c:33:2: warning: #warning Add the 'nflags' values here
lib/nflags-net.c:34: warning: ISO C forbids empty initializer braces
lib/nflags-net.c:32: error: zero or negative size array 'VALUES'
make[3]: *** [lib/lib_libvserver_la-nflags-net.lo] Error 1
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/byte/util-vserver/FC-4/util-vserver-0.30.206'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/byte/util-vserver/FC-4/util-vserver-0.30.206'
error: Bad exit status from /home/byte/rpm/tmp/rpm-tmp.49720 (%build)
RPM build errors:
Bad exit status from /home/byte/rpm/tmp/rpm-tmp.49720 (%build)
make: *** [ppc] Error 1
Is this another error?
If I run a make check on the package contents in FC-4, it exits w/o error.
comment #4 is due to another error (dunno, why it happens with the ppc compiler only but not with the i386 one). The 'make check' errors are caused by a kernel bug in the ELF loader. Your 'cflags-bad' test program seems to work fine on current kernels. Please retest. (In reply to comment #0) > Because I do not have a machine were I can debug this, I will add an 'ExcludeArch: ppc'. Just mail me a SSH public key. Is this what is blocking a build of this package in devel to fix the broken
upgrade path?
util-vserver
FE5 > FE7 (0:0.30.212-1.fc5 > 0:0.30.211-1.fc6)
FE6 > FE7 (0:0.30.212-3.fc6 > 0:0.30.211-1.fc6)
I just did a mock build here on my ppc test box and it worked fine.
Could you try pushing another build out to fix the E-V-R issue?
|
Description of problem: The 'cflags' and 'personality' checks are failing on the PPC build machine. I have only limited ways to debug this issue but it seems, that: * the error happens, before main() will be reached; because the checks are linked statically, bugs in external libraries can be excluded * the bug happens on some machines only; I know, that it fails on the PPC build machine and on a laptop. But the programs are runnign fine in 'qemu' and on pjone's machine Some observations: * the programs are getting a SIGKILL signal without any kernel message * the same programs, compiled with another toolchain (afaik, a Mandriva one) are working fine on the laptop mentioned above * the checks are running fine on i386 and x86_64 * afair, the same problem happened for util-vserver 0.30.208 but after submitting it again, it was built. This does not seem to apply to 0.30.209 which was submitted 5-6 times already. * 'gdb' does not help ('b main; run' gets a SIGKILL before the breakpoint is reached), 'strace' will not help because exactly 2 syscalls will be called (execv + exit) * 'eu-elflint' does not report any errors * the '_start' function of the working 'cflags' and the broken 'cflags' programs are nearly identical. Only difference is | 100000b8: 3d c0 10 01 lis r14,4097 | 100000bc: 91 2e 70 00 stw r9,28672(r14) | ... | 100000d8: 3d c0 10 01 lis r14,4097 | 100000dc: 90 ae 71 00 stw r5,28928(r14) | 10017000 V __libc_stack_end in the bad one a | 100000ac: 3d c0 10 02 lis r14,4098 | 100000b0: 91 2e ac 00 stw r9,-21504(r14) | ... | 100000cc: 3d c0 10 02 lis r14,4098 | 100000d0: 90 ae ad 00 stw r5,-21248(r14) | 1001ac00 V __libc_stack_end in the good one which were both created by | lis 14,__libc_stack_end@ha | stw 9,__libc_stack_end@l(14) | ... | lis 14,environ@ha | stw 5,environ@l(14) The bad file looks ok, but I can not explain the good one. There, the __libc_stack_end@ha should be 0x1001 as in the bad one also, but it is 0x1002. But I am not very familar with PPC assembler... Because I do not have a machine were I can debug this, I will add an 'ExcludeArch: ppc'. Version-Release number of selected component (if applicable): 0.30.208 + 0.30.209 How reproducible: 100% (???)