On Mon, Nov 09, 2009 at 11:22:13AM +0100, Petr Salinger wrote: > Package: kfreebsd-8 > > I tried to rebuild current eglibc under kfreebsd-8, > there are some problems with *at functions. Under kfreebsd-7 > we use some userspace emulation, under kfreebsd-8 we directly use > *at syscalls. > > The new failed tests are: > > io/tst-renameat.out > io/tst-faccessat.out > io/tst-symlinkat.out > io/tst-linkat.out > io/tst-readlinkat.out > io/tst-mkdirat.out > io/tst-mknodat.out > > It needs further investigation before we could > make 8.x kernel the default one. >
I tracked down the problem to the AT_* #define that are different between GNU/Linux and GNU/Hurd on one side and GNU/kFreeBSD on the other side. I have committed a patch to glibc-bsd to move those definitions to bits/fcntl.h. The same has to be done on upstream glibc, which impact quite a lot of files. Before actually doing it, I do wonder if we shouldn't instead translate the values in our *at functions, which should also solve the problem of already built binaries using the old value. What do you think? The patch fixes all failures except: - io/tst-renameat.out: the test verifies error with wrong arguments, and the FreeBSD kernel does not check the errors in the same order when there are two or more errors, so and error is returned, but not the one expected by the tests. I think we can live with that. - io/tst-mknodat.out: it's not possible to use mknod outside of /dev on GNU/kFreeBSD, this is not specific to the *at syscall. -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurel...@aurel32.net http://www.aurel32.net -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org