Bug 1369820 - compat arch tests not being run
Summary: compat arch tests not being run
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Developer Toolset
Classification: Red Hat
Component: strace
Version: DTS 5.0 RHEL 7
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: beta1
: 6.0
Assignee: DJ Delorie
QA Contact: Martin Cermak
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-08-24 13:26 UTC by Martin Cermak
Modified: 2016-11-15 10:15 UTC (History)
1 user (show)

Fixed In Version: devtoolset-6-strace-4.12-3.el{6,7}
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-11-15 10:15:38 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:2743 0 normal SHIPPED_LIVE new packages: devtoolset-6-strace 2016-11-15 14:54:49 UTC

Description Martin Cermak 2016-08-24 13:26:45 UTC
For x86_64 and ppc64 the devtoolset-6-strace (both el6, and el7) alpha tests-m32 fail to build and thus to run, as the following rhel-7.2 x86_64 log snippet shows:

=======
 7.2 S x86_64 [-] make check
[ ... stuff deleted ... ]
============================================================================
Testsuite summary for strace 4.12
============================================================================
# TOTAL: 278
# PASS:  227
# SKIP:  51
# XFAIL: 0
# FAIL:  0
# XPASS: 0
# ERROR: 0
============================================================================
make[5]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12/tests'
make[4]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12/tests'
make[3]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12/tests'
make[2]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12/tests'
Making check in tests-m32
make[2]: Entering directory `/root/rpmbuild/BUILD/strace-4.12/tests-m32'
make  check-am
make[3]: Entering directory `/root/rpmbuild/BUILD/strace-4.12/tests-m32'
make  libtests.a _newselect access acct adjtimex aio alarm attach-f-p attach-p-cmd-cmd attach-p-cmd-p bpf brk btrfs caps chmod chown chown32 chroot clock_adjtime clock_nanosleep clock_xettime copy_file_range count-f creat dup dup2 dup3 epoll_create epoll_create1 epoll_ctl epoll_pwait epoll_wait eventfd execve execve-v execveat execveat-v faccessat fanotify_mark fchdir fchmod fchmodat fchown fchown32 fchownat fcntl fcntl64 fdatasync file_handle file_ioctl filter-unavailable flock fork-f fstat fstat64 fstatat64 fstatfs fstatfs64 fsync ftruncate ftruncate64 futimesat get_mempolicy getcwd getdents getdents64 getegid getegid32 geteuid geteuid32 getgid getgid32 getgroups getgroups32 getpgrp getrandom getresgid getresgid32 getresuid getresuid32 getrusage getsid getuid getuid32 getxxid inet-cmsg ioctl ioctl_block ioctl_evdev ioctl_evdev-v ioctl_mtd ioctl_rtc ioctl_rtc-v ioctl_uffdio ioctl_v4l2 ioperm iopl ip_mreq ipc_msg ipc_msgbuf ipc_sem ipc_shm kill ksysent lchown lchown32 link linkat llseek lseek lstat lstat64 mbind membarrier memfd_create migrate_pages mincore mkdir mkdirat mknod mknodat mlock mlock2 mlockall mmap mmap64 mmsg mount move_pages mq munlockall nanosleep net-accept-connect net-icmp_filter net-y-unix net-yy-inet net-yy-netlink net-yy-unix netlink_inet_diag netlink_netlink_diag netlink_unix_diag newfstatat nsyscalls old_mmap oldselect open openat pause pc personality pipe poll ppoll prctl-seccomp-filter-v prctl-seccomp-strict pread64-pwrite64 preadv preadv-pwritev preadv2-pwritev2 pselect6 ptrace pwritev read-write readdir readlink readlinkat readv reboot recvmsg remap_file_pages rename renameat renameat2 restart_syscall rmdir rt_sigpending rt_sigprocmask rt_sigqueueinfo rt_sigsuspend rt_sigtimedwait rt_tgsigqueueinfo sched_get_priority_mxx sched_rr_get_interval sched_xetaffinity sched_xetattr sched_xetparam sched_xetscheduler sched_yield scm_rights seccomp-filter seccomp-filter-v seccomp-strict select semop sendfile sendfile64 set_mempolicy set_ptracer_any setdomainname setfsgid setfsgid32 setfsuid setfsuid32 setgid setgid32 setgroups setgroups32 sethostname setregid setregid32 setresgid setresgid32 setresuid setresuid32 setreuid setreuid32 setuid setuid32 shmxt sigaction sigaltstack signalfd sigreturn sleep splice stack-fcall stat stat64 statfs statfs64 swap symlink symlinkat sync sync_file_range sync_file_range2 sysinfo syslog tee time timer_create timer_xettime timerfd_xettime times times-fail truncate truncate64 uio umask umount umount2 umovestr umovestr2 umovestr3 uname unix-pair-send-recv unlink unlinkat userfaultfd utime utimensat utimes vfork-f vhangup vmsplice wait xattr xet_robust_list xetitimer xetpgid xetpriority xettimeofday
make[4]: Entering directory `/root/rpmbuild/BUILD/strace-4.12/tests-m32'
make[4]: `libtests.a' is up to date.
gcc -Wall -Wwrite-strings -Wsign-compare -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic -m32 -Wl,-z,relro  -o _newselect _newselect.o libtests.a 
/usr/bin/ld: i386:x86-64 architecture of input file `_newselect.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `libtests.a(libtests_a-error_msg.o)' is incompatible with i386 output
/usr/bin/ld: _newselect.o: file class ELFCLASS64 incompatible with ELFCLASS32
/usr/bin/ld: final link failed: File in wrong format
collect2: error: ld returned 1 exit status
make[4]: *** [_newselect] Error 1
make[4]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12/tests-m32'
make[3]: *** [check-am] Error 2
make[3]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12/tests-m32'
make[2]: *** [check] Error 2
make[2]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12/tests-m32'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/root/rpmbuild/BUILD/strace-4.12'
make: *** [check] Error 2
 7.2 S x86_64 [-] 
=======

Similar behaviour on ppc64.  Interesting thing is, that on s390x, which also has the compat arch (-m31), the test driver doesn't even attempt to run the compat arch tests.

Interesting thing in the above log snippet is, that the CFLAGS have both -m32 and -m64 switches (at the same time). Good news is that upstream strace-4.13 seems to have this fixed.

Comment 4 errata-xmlrpc 2016-11-15 10:15:38 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2743.html


Note You need to log in before you can comment on or make changes to this bug.