[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
coreutils-8.4: strace induced test failure
From: |
Bruno Haible |
Subject: |
coreutils-8.4: strace induced test failure |
Date: |
Tue, 23 Feb 2010 23:55:23 +0100 |
User-agent: |
KMail/1.9.9 |
Hi,
Trying to install coreutils 8.4 on a x86_64 Linux/glibc system, I get a test
failure.
Relevant parts of test-suite.log:
=============================================
GNU coreutils 8.4: tests/test-suite.log
=============================================
1 of 370 tests failed. (46 tests were not run).
FAIL: ls/stat-free-symlinks (exit: 1)
=====================================
...
+ strace -qe stat ls -F --color=always x link-to-x
...
+ compare out exp
+ diff -u out exp
--- out 2010-02-23 23:26:44.000000000 +0100
+++ exp 2010-02-23 23:26:44.000000000 +0100
@@ -1,3 +1,3 @@
[0m[01;35mlink-to-x[0m@
[01;32mx[0m*
-[m[ Process PID=22612 runs in 32 bit mode. ]
+[m
\ No newline at end of file
+ fail=1
+ Exit 1
+ set +e
+ exit 1
+ exit 1
+ remove_tmp_
+ __st=1
+ cleanup_
+ :
+ cd /home/bruno/data/build/coreutils-8.4/tests
+ chmod -R u+rwx
/home/bruno/data/build/coreutils-8.4/tests/cu-stat-free-symlinks.vtWekPYmKd
+ rm -rf
/home/bruno/data/build/coreutils-8.4/tests/cu-stat-free-symlinks.vtWekPYmKd
+ exit 1
I had configured coreutils like this (native 32-bit mode build on a 64-bit
system):
$ ./configure --host=i686-pc-linux-gnu --prefix=/arch/x86-linux/gnu \
CC="gcc -m32 -march=i586" CXX="g++ -m32 -march=i586" LDFLAGS="-m32" \
CPPFLAGS=-Wall
$ which strace
/usr/bin/strace
The function in require_strace_ in tests/test-lib.sh does
strace -qe stat echo
and tests the return value.
$ strace -qe stat src/echo
[ Process PID=31238 runs in 32 bit mode. ]
$ echo $?
0
But this 'strace' program does not fully work on 32-bit mode executables:
1) It always emits this "Process PID=xxxxx runs in 32 bit mode." message.
2) It does not support some system calls: 'write' and 'fstat64' appear
supported,
but 'stat' is not:
$ strace -qe stat src/ls
[ Process PID=31310 runs in 32 bit mode. ]
ABOUT-NLS ChangeLog-2005 COPYING m4 po
aclocal.m4 ChangeLog-2006 dist-check.mk maint.mk README
AUTHORS ChangeLog-2007 doc Makefile src
bootstrap ChangeLog-2008 gl Makefile.am tests
bootstrap.conf config.log gnulib-tests Makefile.in THANKS
build-aux config.status GNUmakefile man
THANKS-to-translators
cfg.mk configure INSTALL NEWS THANKStt.in
ChangeLog configure.ac lib old TODO
$ $ strace -qe write src/ls
[ Process PID=31312 runs in 32 bit mode. ]
write(1, "ABOUT-NLS\tChangeLog-2005\tCOPYING"..., 50ABOUT-NLS
ChangeLog-2005 COPYING m4 po
) = 50
write(1, "aclocal.m4\tChangeLog-2006\tdist-c"..., 61aclocal.m4
ChangeLog-2006 dist-check.mk maint.mk README
) = 61
write(1, "AUTHORS\t\tChangeLog-2007\tdoc\t "..., 52AUTHORS
ChangeLog-2007 doc Makefile src
) = 52
write(1, "bootstrap\tChangeLog-2008\tgl\t "..., 54bootstrap
ChangeLog-2008 gl Makefile.am tests
) = 54
write(1, "bootstrap.conf\tconfig.log\tgnulib"..., 61bootstrap.conf
config.log gnulib-tests Makefile.in THANKS
) = 61
write(1, "build-aux\tconfig.status\tGNUmakef"..., 69build-aux
config.status GNUmakefile man THANKS-to-translators
) = 69
write(1, "cfg.mk\t\tconfigure\tINSTALL "..., 54cfg.mk
configure INSTALL NEWS THANKStt.in
) = 54
write(1, "ChangeLog\tconfigure.ac\tlib\t "..., 47ChangeLog configure.ac
lib old TODO
) = 47
$ strace -qe fstat64 src/ls
[ Process PID=31320 runs in 32 bit mode. ]
fstat64(0x3, 0xffed9b18) = 0
fstat64(0x3, 0xffed9b84) = 0
fstat64(0x3, 0xffed9b68) = 0
fstat64(0x3, 0xffed9ac0) = 0
fstat64(0x3, 0xffed9c60) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9e4c) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9f80) = 0
fstat64(0x3, 0xffed9dbc) = 0
fstat64(0x1, 0xffed790c) = 0
ABOUT-NLS ChangeLog-2005 COPYING m4 po
aclocal.m4 ChangeLog-2006 dist-check.mk maint.mk README
AUTHORS ChangeLog-2007 doc Makefile src
bootstrap ChangeLog-2008 gl Makefile.am tests
bootstrap.conf config.log gnulib-tests Makefile.in THANKS
build-aux config.status GNUmakefile man
THANKS-to-translators
cfg.mk configure INSTALL NEWS THANKStt.in
ChangeLog configure.ac lib old TODO
Bruno
- coreutils-8.4: strace induced test failure,
Bruno Haible <=