On Linux/HPPA (32-bit kernel) 2 tests fail: FAIL: misc/timeout-parameters FAIL: tail-2/follow-name
FAIL: misc/timeout-parameters (exit: 1) ======================================= ++ initial_cwd_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests ++ fail=0 +++ testdir_prefix_ +++ printf gt ++ pfx_=gt +++ mktempd_ /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests gt-timeout-parameters.XXXX +++ case $# in +++ destdir_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests +++ template_=gt-timeout-parameters.XXXX +++ MAX_TRIES_=4 +++ case $destdir_ in +++ case $template_ in ++++ unset TMPDIR ++++ mktemp -d -t -p /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests gt-timeout-parameters.XXXX +++ d=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x +++ case $d in +++ test -d /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x ++++ ls -dgo /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x ++++ tr S - +++ perms='drwx------ 2 6 Oct 8 11:23 /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x' +++ case $perms in +++ test 0 = 0 +++ echo /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x +++ return ++ test_dir_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x ++ cd /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x ++ gl_init_sh_nl_=' ' ++ IFS=' ' ++ for sig_ in 1 2 3 13 15 +++ expr 1 + 128 ++ eval 'trap '\''Exit 129'\'' 1' +++ trap 'Exit 129' 1 ++ for sig_ in 1 2 3 13 15 +++ expr 2 + 128 ++ eval 'trap '\''Exit 130'\'' 2' +++ trap 'Exit 130' 2 ++ for sig_ in 1 2 3 13 15 +++ expr 3 + 128 ++ eval 'trap '\''Exit 131'\'' 3' +++ trap 'Exit 131' 3 ++ for sig_ in 1 2 3 13 15 +++ expr 13 + 128 ++ eval 'trap '\''Exit 141'\'' 13' +++ trap 'Exit 141' 13 ++ for sig_ in 1 2 3 13 15 +++ expr 15 + 128 ++ eval 'trap '\''Exit 143'\'' 15' +++ trap 'Exit 143' 15 ++ trap remove_tmp_ 0 + path_prepend_ ../src + test 1 '!=' 0 + path_dir_=../src + case $path_dir_ in ++ cd /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/../src ++ echo /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src + abs_path_dir_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src + case $abs_path_dir_ in + PATH=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src:/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games + create_exe_shims_ /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src + case $EXEEXT in + return 0 + shift + test 0 '!=' 0 + export PATH + print_ver_ timeout + test yes = yes + local i + for i in '$*' + env timeout --version timeout (GNU coreutils) 8.13.29-43a9 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Padraig Brady. + getlimits_ ++ getlimits + eval CHAR_MAX=127 CHAR_OFLOW=128 CHAR_MIN=-128 CHAR_UFLOW=-129 SCHAR_MAX=127 SCHAR_OFLOW=128 SCHAR_MIN=-128 SCHAR_UFLOW=-129 UCHAR_MAX=255 UCHAR_OFLOW=256 SHRT_MAX=32767 SHRT_OFLOW=32768 SHRT_MIN=-32768 SHRT_UFLOW=-32769 INT_MAX=2147483647 INT_OFLOW=2147483648 INT_MIN=-2147483648 INT_UFLOW=-2147483649 UINT_MAX=4294967295 UINT_OFLOW=4294967296 LONG_MAX=2147483647 LONG_OFLOW=2147483648 LONG_MIN=-2147483648 LONG_UFLOW=-2147483649 ULONG_MAX=4294967295 ULONG_OFLOW=4294967296 SIZE_MAX=4294967295 SIZE_OFLOW=4294967296 SSIZE_MAX=2147483647 SSIZE_OFLOW=2147483648 SSIZE_MIN=-2147483648 SSIZE_UFLOW=-2147483649 TIME_T_MAX=2147483647 TIME_T_OFLOW=2147483648 TIME_T_MIN=-2147483648 TIME_T_UFLOW=-2147483649 UID_T_MAX=4294967295 UID_T_OFLOW=4294967296 GID_T_MAX=4294967295 GID_T_OFLOW=4294967296 PID_T_MAX=2147483647 PID_T_OFLOW=2147483648 PID_T_MIN=-2147483648 PID_T_UFLOW=-2147483649 OFF_T_MAX=9223372036854775807 OFF_T_OFLOW=9223372036854775808 OFF_T_MIN=-9223372036854775808 OFF_T_UFLOW=-9223372036854775809 INTMAX_MAX=9223372036854775807 INTMAX_OFLOW=9223372036854775808 INTMAX_MIN=-9223372036854775808 INTMAX_UFLOW=-9223372036854775809 UINTMAX_MAX=18446744073709551615 UINTMAX_OFLOW=18446744073709551616 FLT_MIN=1.175494e-38 FLT_MAX=3.402823e+38 DBL_MIN=2.225074e-308 DBL_MAX=1.797693e+308 LDBL_MIN=2.225074e-308 LDBL_MAX=1.797693e+308 ++ CHAR_MAX=127 ++ CHAR_OFLOW=128 ++ CHAR_MIN=-128 ++ CHAR_UFLOW=-129 ++ SCHAR_MAX=127 ++ SCHAR_OFLOW=128 ++ SCHAR_MIN=-128 ++ SCHAR_UFLOW=-129 ++ UCHAR_MAX=255 ++ UCHAR_OFLOW=256 ++ SHRT_MAX=32767 ++ SHRT_OFLOW=32768 ++ SHRT_MIN=-32768 ++ SHRT_UFLOW=-32769 ++ INT_MAX=2147483647 ++ INT_OFLOW=2147483648 ++ INT_MIN=-2147483648 ++ INT_UFLOW=-2147483649 ++ UINT_MAX=4294967295 ++ UINT_OFLOW=4294967296 ++ LONG_MAX=2147483647 ++ LONG_OFLOW=2147483648 ++ LONG_MIN=-2147483648 ++ LONG_UFLOW=-2147483649 ++ ULONG_MAX=4294967295 ++ ULONG_OFLOW=4294967296 ++ SIZE_MAX=4294967295 ++ SIZE_OFLOW=4294967296 ++ SSIZE_MAX=2147483647 ++ SSIZE_OFLOW=2147483648 ++ SSIZE_MIN=-2147483648 ++ SSIZE_UFLOW=-2147483649 ++ TIME_T_MAX=2147483647 ++ TIME_T_OFLOW=2147483648 ++ TIME_T_MIN=-2147483648 ++ TIME_T_UFLOW=-2147483649 ++ UID_T_MAX=4294967295 ++ UID_T_OFLOW=4294967296 ++ GID_T_MAX=4294967295 ++ GID_T_OFLOW=4294967296 ++ PID_T_MAX=2147483647 ++ PID_T_OFLOW=2147483648 ++ PID_T_MIN=-2147483648 ++ PID_T_UFLOW=-2147483649 ++ OFF_T_MAX=9223372036854775807 ++ OFF_T_OFLOW=9223372036854775808 ++ OFF_T_MIN=-9223372036854775808 ++ OFF_T_UFLOW=-9223372036854775809 ++ INTMAX_MAX=9223372036854775807 ++ INTMAX_OFLOW=9223372036854775808 ++ INTMAX_MIN=-9223372036854775808 ++ INTMAX_UFLOW=-9223372036854775809 ++ UINTMAX_MAX=18446744073709551615 ++ UINTMAX_OFLOW=18446744073709551616 ++ FLT_MIN=1.175494e-38 ++ FLT_MAX=3.402823e+38 ++ DBL_MIN=2.225074e-308 ++ DBL_MAX=1.797693e+308 ++ LDBL_MIN=2.225074e-308 ++ LDBL_MAX=1.797693e+308 + test 2147483647 + timeout invalid sleep 0 timeout: invalid time interval `invalid' Try `timeout --help' for more information. + test 125 = 125 + timeout --kill-after=invalid 1 sleep 0 timeout: invalid time interval `invalid' Try `timeout --help' for more information. + test 125 = 125 + timeout 42D sleep 0 timeout: invalid time interval `42D' Try `timeout --help' for more information. + test 125 = 125 + timeout 4294967296 sleep 0 + test 124 = 0 + fail=1 ++ expr 4294967295 / 86400 + 1 + timeout 49711d sleep 0 + test 124 = 0 + fail=1 + timeout 999999999999999999999999999999999999999999999999999999999999d sleep 0 + test 124 = 0 + fail=1 + timeout 2.34 sleep 0 + test 0 = 0 + timeout 2.34e+5d sleep 0 + test 124 = 0 + fail=1 + timeout .999999999 sleep 0 + timeout --signal=invalid 1 sleep 0 timeout: invalid: invalid signal Try `timeout --help' for more information. + test 125 = 125 + timeout 10 . timeout: failed to run command `.': Permission denied + test 126 = 126 + timeout 10 no_such timeout: failed to run command `no_such': No such file or directory + test 127 = 127 + Exit 1 + set +e + exit 1 + exit 1 + remove_tmp_ + __st=1 + cleanup_ + : + cd /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests + chmod -R u+rwx /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x + rm -rf /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-timeout-parameters.CY4x + exit 1 Indeed the command $ ../src/timeout 4294967296 sleep 0 fails with exit code 124, like $ ../src/timeout 4294967295 sleep 0 The limit between success and failure is around 829000000, but not at a fixed threshold. I got $ ./timeout 829404130 sleep 0; echo $? 0 $ ./timeout 829404140 sleep 0; echo $? 124 but now (a couple of minutes later) I get $ ./timeout 829404130 sleep 0; echo $? 124 $ ./timeout 829404120 sleep 0; echo $? 124 $ ./timeout 829403950 sleep 0; echo $? 0 $ ./timeout 829403960 sleep 0; echo $? 124 The limit appears to be the number of seconds between 2038-01-19 and now. You see? Apparently a time_t that overflowed into a negative number. FAIL: tail-2/follow-name (exit: 1) ================================== ++ initial_cwd_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests ++ fail=0 +++ testdir_prefix_ +++ printf gt ++ pfx_=gt +++ mktempd_ /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests gt-follow-name.XXXX +++ case $# in +++ destdir_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests +++ template_=gt-follow-name.XXXX +++ MAX_TRIES_=4 +++ case $destdir_ in +++ case $template_ in ++++ unset TMPDIR ++++ mktemp -d -t -p /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests gt-follow-name.XXXX +++ d=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV +++ case $d in +++ test -d /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV ++++ ls -dgo /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV ++++ tr S - +++ perms='drwx------ 2 6 Oct 8 11:27 /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV' +++ case $perms in +++ test 0 = 0 +++ echo /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV +++ return ++ test_dir_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV ++ cd /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV ++ gl_init_sh_nl_=' ' ++ IFS=' ' ++ for sig_ in 1 2 3 13 15 +++ expr 1 + 128 ++ eval 'trap '\''Exit 129'\'' 1' +++ trap 'Exit 129' 1 ++ for sig_ in 1 2 3 13 15 +++ expr 2 + 128 ++ eval 'trap '\''Exit 130'\'' 2' +++ trap 'Exit 130' 2 ++ for sig_ in 1 2 3 13 15 +++ expr 3 + 128 ++ eval 'trap '\''Exit 131'\'' 3' +++ trap 'Exit 131' 3 ++ for sig_ in 1 2 3 13 15 +++ expr 13 + 128 ++ eval 'trap '\''Exit 141'\'' 13' +++ trap 'Exit 141' 13 ++ for sig_ in 1 2 3 13 15 +++ expr 15 + 128 ++ eval 'trap '\''Exit 143'\'' 15' +++ trap 'Exit 143' 15 ++ trap remove_tmp_ 0 + path_prepend_ ../src + test 1 '!=' 0 + path_dir_=../src + case $path_dir_ in ++ cd /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/../src ++ echo /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src + abs_path_dir_=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src + case $abs_path_dir_ in + PATH=/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src:/home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games + create_exe_shims_ /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/src + case $EXEEXT in + return 0 + shift + test 0 '!=' 0 + export PATH + print_ver_ tail + test yes = yes + local i + for i in '$*' + env tail --version tail (GNU coreutils) 8.13.29-43a9 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Paul Rubin, David MacKenzie, Ian Lance Taylor, and Jim Meyering. + cat + timeout 10 tail --follow=name no-such + test 1 = 1 + compare err exp + diff -u err exp --- err 2011-10-08 11:27:41.274248717 +0200 +++ exp 2011-10-08 11:27:41.244249023 +0200 @@ -1,3 +1,2 @@ tail: cannot open `no-such' for reading: No such file or directory -tail: inotify cannot be used, reverting to polling: Function not implemented tail: no files remaining + fail=1 + Exit 1 + set +e + exit 1 + exit 1 + remove_tmp_ + __st=1 + cleanup_ + : + cd /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests + chmod -R u+rwx /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV + rm -rf /home/haible/multibuild-1313/linuxhppa/coreutils-8.13.29-43a9/tests/gt-follow-name.y7MV + exit 1 Here the error message "tail: inotify cannot be used, reverting to polling: Function not implemented" is clear. $ nm tail|grep inotify 000204ea b disable_inotify U inotify_add_watch@@GLIBC_2.4 U inotify_init@@GLIBC_2.4 U inotify_rm_watch@@GLIBC_2.4 000128a8 t tail_forever_inotify Libc has the inotify call, but it apparently returns ENOSYS. Strace gives more details: $ strace ./tail --follow=name no-such ... open("no-such", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) write(2, "./tail: "..., 8./tail: ) = 8 write(2, "cannot open `no-such' for reading"..., 33cannot open `no-such' for reading) = 33 write(2, ": No such file or directory"..., 27: No such file or directory) = 27 write(2, "\n"..., 1 ) = 1 inotify_init() = -1 ENOSYS (Function not implemented) write(2, "./tail: "..., 8./tail: ) = 8 write(2, "inotify cannot be used, reverting"..., 44inotify cannot be used, reverting to polling) = 44 write(2, ": Function not implemented"..., 26: Function not implemented) = 26 write(2, "\n"..., 1 ) = 1 open("no-such", O_RDONLY|O_NONBLOCK|O_LARGEFILE) = -1 ENOENT (No such file or directory) write(2, "./tail: "..., 8./tail: ) = 8 write(2, "no files remaining"..., 18no files remaining) = 18 write(2, "\n"..., 1 ) = 1 close(1) = 0 close(2) = 0 exit_group(1) = ? Bruno -- In memoriam Engin Ceber <http://en.wikipedia.org/wiki/Engin_Ceber>