SYS_FUNC macro fix for musl

Szabolcs Nagy nsz at port70.net
Wed Dec 16 01:45:45 UTC 2015


* Dmitry V. Levin <ldv at altlinux.org> [2015-12-16 03:33:03 +0300]:
> On Tue, Dec 15, 2015 at 10:56:49PM +0100, Szabolcs Nagy wrote:
> > attached the test logs too
> 
> Looks like all tests related to %Ld/%Lu failed.
> Could you re-run them on v4.10-577-ge67c8e4, please?
> 

i forgot to mention one more issue:
the aio.c test needs to include time.h
for struct timespec

with that fix i get 4 failures:

- ioctl because musl checks if stdout is interactive

- mmsg because of
http://git.musl-libc.org/cgit/musl/commit/?id=acb7e049b8c70b9e6ad57e8601373f9c991a0da4

- sigreturn because RT_2 is used internally by musl:
http://git.musl-libc.org/cgit/musl/tree/src/internal/pthread_impl.h#n101

- settimeofday because musl does not pass the tz arg

-------------- next part --------------
========================================================
   strace 4.10.0.574-00d8-dirty: tests/test-suite.log
========================================================

# TOTAL: 107
# PASS:  80
# SKIP:  23
# XFAIL: 0
# FAIL:  4
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

SKIP: _newselect
================

_newselect.test: skipped test: ./_newselect exited with code 77
SKIP _newselect.test (exit status: 77)

SKIP: fcntl64
=============

fcntl64.test: skipped test: ./fcntl64 exited with code 77
SKIP fcntl64.test (exit status: 77)

SKIP: file_handle
=================

file_handle.test: skipped test: ./file_handle exited with code 77
SKIP file_handle.test (exit status: 77)

SKIP: fstat64
=============

fstat64.test: skipped test: ./fstat64 exited with code 77
SKIP fstat64.test (exit status: 77)

SKIP: fstatat64
===============

fstatat64.test: skipped test: ./fstatat64 exited with code 77
SKIP fstatat64.test (exit status: 77)

SKIP: ftruncate64
=================

ftruncate64.test: skipped test: ./ftruncate64 exited with code 77
SKIP ftruncate64.test (exit status: 77)

FAIL: ioctl
===========

--- ioctl.test.tmp.out
+++ ioctl.test.tmp
@@ -1,4 +1,5 @@
 ioctl(-1, TCGETS, 0x7ffd4dd35e00) = -1 EBADF (Bad file descriptor)
+ioctl(1, TIOCGWINSZ, 0x7ffd4dd35a48) = -1 ENOTTY (Not a tty)
 ioctl(-1, MMTIMER_GETRES, 0x7ffd4dd35df8) = -1 EBADF (Bad file descriptor)
 ioctl(-1, VIDIOC_ENUMINPUT, 0) = -1 EBADF (Bad file descriptor)
 ioctl(-1, HIDIOCGRDESCSIZE or HIDIOCGVERSION, 0x7ffd4dd35df8) = -1 EBADF (Bad file descriptor)
ioctl.test: failed test: ../strace -a16 -e ioctl ./ioctl output mismatch
FAIL ioctl.test (exit status: 1)

SKIP: llseek
============

llseek.test: skipped test: ./llseek exited with code 77
SKIP llseek.test (exit status: 77)

SKIP: lstat64
=============

lstat64.test: skipped test: ./lstat64 exited with code 77
SKIP lstat64.test (exit status: 77)

SKIP: membarrier
================

membarrier.test: skipped test: ./membarrier exited with code 77
SKIP membarrier.test (exit status: 77)

SKIP: mlock2
============

mlock2.test: skipped test: ./mlock2 exited with code 77
SKIP mlock2.test (exit status: 77)

FAIL: mmsg
==========

--- ./mmsg.expected
+++ mmsg.test.tmp
@@ -1,12 +1,3 @@
-sendmmsg(1, {{{msg_name(0)=NULL, msg_iov(2)=[{"one", 3}, {"two", 3}], msg_controllen=0, msg_flags=0}, 6}, {{msg_name(0)=NULL, msg_iov(1)=[{"three", 5}], msg_controllen=0, msg_flags=0}, 5}}, 2, 0) = 2
- = 2 buffers in vector 0
- * 3 bytes in buffer 0
- | 00000  6f 6e 65                                          one              |
- * 3 bytes in buffer 1
- | 00000  74 77 6f                                          two              |
- = 1 buffers in vector 1
- * 5 bytes in buffer 0
- | 00000  74 68 72 65 65                                    three            |
 recvmmsg(0, {{{msg_name(0)=NULL, msg_iov(2)=[{"one", 3}, {"two", 3}], msg_controllen=0, msg_flags=0}, 6}, {{msg_name(0)=NULL, msg_iov(1)=[{"three", 5}], msg_controllen=0, msg_flags=0}, 5}}, 2, 0, NULL) = 2 (left NULL)
  = 2 buffers in vector 0
  * 3 bytes in buffer 0
mmsg.test: failed test: ../strace -e trace=recvmmsg,sendmmsg -e read=0 -e write=1 ./mmsg output mismatch
FAIL mmsg.test (exit status: 1)

SKIP: mq
========

mq.test: skipped test: ./mq exited with code 77
SKIP mq.test (exit status: 77)

SKIP: oldselect
===============

oldselect.test: skipped test: ./oldselect exited with code 77
SKIP oldselect.test (exit status: 77)

SKIP: readdir
=============

readdir.test: skipped test: ./readdir exited with code 77
SKIP readdir.test (exit status: 77)

SKIP: sendfile64
================

sendfile64.test: skipped test: ./sendfile64 ./sendfile64 exited with code 77
SKIP sendfile64.test (exit status: 77)

FAIL: sigreturn
===============

Failed patterns of expected output:
rt_sigprocmask\(SIG_SETMASK, \[(USR2 CHLD|CHLD USR2) RT_2 RT_3 RT_4 RT_26 RT_27\], NULL, [[:digit:]]+\) += 0|osf_sigprocmask\(SIG_SETMASK, \[(USR2 CHLD|CHLD USR2) RT_2 RT_3 RT_4 RT_26 RT_27\]\) += 0 +\(old mask \[[^]]*\]\)
(rt_)?sigreturn\((\{mask=\[(USR2 CHLD|CHLD USR2) RT_2 RT_3 RT_4 RT_26 RT_27\]\})?\) += 0
Actual output:
rt_sigprocmask(SIG_SETMASK, [USR2 CHLD RT_3 RT_4 RT_26 RT_27], NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RT_1 RT_2], NULL, 8) = 0
rt_sigaction(SIGUSR1, {0x7f77721909c0, [], SA_RESTORER|SA_RESTART, 0x7f7771f4be0b}, {SIG_DFL, [], 0}, 8) = 0
rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1 RT_2], [USR2 CHLD RT_3 RT_4 RT_26 RT_27], 8) = 0
tkill(10989, SIGUSR1)                   = 0
rt_sigprocmask(SIG_SETMASK, [USR2 CHLD RT_3 RT_4 RT_26 RT_27], NULL, 8) = 0
--- SIGUSR1 {si_signo=SIGUSR1, si_code=SI_TKILL, si_pid=10989, si_uid=1001} ---
rt_sigreturn({mask=[USR2 CHLD RT_3 RT_4 RT_26 RT_27]}) = 0
+++ exited with 0 +++
sigreturn.test: failed test: ../strace -esignal ./sigreturn output mismatch
FAIL sigreturn.test (exit status: 1)

SKIP: stat64
============

stat64.test: skipped test: ./stat64 exited with code 77
SKIP stat64.test (exit status: 77)

SKIP: timer_create
==================

timer_create.test: skipped test: ./timer_create exited with code 77
SKIP timer_create.test (exit status: 77)

SKIP: truncate64
================

truncate64.test: skipped test: ./truncate64 exited with code 77
SKIP truncate64.test (exit status: 77)

SKIP: uid16
===========

uid16.test: skipped test: ./uid16 exited with code 77
SKIP uid16.test (exit status: 77)

SKIP: uid32
===========

uid32.test: skipped test: ./uid32 exited with code 77
SKIP uid32.test (exit status: 77)

SKIP: umount
============

umount.test: skipped test: ./umount exited with code 77
SKIP umount.test (exit status: 77)

SKIP: userfaultfd
=================

userfaultfd.test: skipped test: ./userfaultfd exited with code 77
SKIP userfaultfd.test (exit status: 77)

SKIP: utime
===========

utime.test: skipped test: test executable does not use utime syscall
SKIP utime.test (exit status: 77)

FAIL: xettimeofday
==================

--- xettimeofday.test.tmp.out
+++ xettimeofday.test.tmp
@@ -1,4 +1,4 @@
 gettimeofday({1450229326, 228253}, NULL) = 0
 gettimeofday({1450229326, 228338}, {tz_minuteswest=0, tz_dsttime=0}) = 0
-settimeofday({-1, 1000000000}, {tz_minuteswest=0, tz_dsttime=0}) = -1 EINVAL (Invalid argument)
+settimeofday({-1, 1000000000}, NULL) = -1 EINVAL (Invalid argument)
 +++ exited with 0 +++
xettimeofday.test: failed test: ../strace -a20 -e trace=gettimeofday,settimeofday ./xettimeofday output mismatch
FAIL xettimeofday.test (exit status: 1)

SKIP: strace-k
==============

strace-k.test: skipped test: strace -k is not available
SKIP strace-k.test (exit status: 77)



More information about the Strace-devel mailing list