Re: glob on glibc systems

2018-03-14 Thread Bruno Haible
Details on this one: > > glob.o > > Replacement required because of > checking for GNU glob interface version 1... no This is because /usr/include/gnu-versions.h now defines _GNU_GLOB_INTERFACE_VERSION to 2, following this commit in glibc: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=c

Re: gnulib on glibc systems - replacement modules

2018-03-14 Thread Bruno Haible
Richard W.M. Jones wrote: > > "Verify that Gnulib has built no replacement/workaround code > > (gllib/*.o files)" > > $ (cd gllib; ls -1 $(${GNULIB_CHECKOUT}/posix-modules | sed -e 's|-posix$||' > | sort -u | grep -v 'nonblocking' | sed -e 's|$|.o|') 2>/dev/null ) > math.o > sys_socket.o > unist

Re: Testing gnulib on riscv64 - replacement modules

2018-03-14 Thread Richard W.M. Jones
On Wed, Mar 14, 2018 at 10:24:27PM +0100, Bruno Haible wrote: > FAIL: test-expf > FAIL: test-fmod > FAIL: test-hypot > FAIL: test-sqrt > FAIL: test-sqrtf > > Various floating-point issues, possibly due to the soft-float emulation. > > FAIL: test-strtod > > This one could be more worrisome. I now

Re: Testing gnulib on riscv64 - replacement modules

2018-03-14 Thread Bruno Haible
Hi Rich, > Attached are the results of the test suite. With your disk image, the newest qemu and the floating-point fix that you pointed to, I get 0 test failures. All tests passed! > I also have core dumps from all the failing tests You got: FAIL: test-nonblocking-pipe.sh FAIL: test-nonblocki

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Paul Eggert
On 03/14/2018 10:52 AM, Bruno Haible wrote: This is an interesting, creative idea. However, because few people use this 'dup2 as a kind of atomic close' workaround, I fear that it might lead us into the proximity of OS bugs. Hardly anyone has tested how dup2 works in the presence of signals and t

Re: Testing on riscv64

2018-03-14 Thread Bruno Haible
Hi Rich, > On Wed, Mar 14, 2018 at 12:09:40PM +0100, Bruno Haible wrote: > > -append "console=ttyS0 ro root=/dev/vda init=/init" \ > > Oh I see, the problem is the init=... > > See https://fedorapeople.org/groups/risc-v/disk-images/readme.txt for > the latest and correct instructions. Thank

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Bruno Haible
Hi Eric, > >> I think we'll need to fall back to a #if based on platforms. > > > > If I'm reading the POSIX bug correctly, HPUX is the only system where > > fds are left open on EINTR. Early Solaris is definitely in this camp as well. > > Seems like a reasonable enough #if when > > coupled wi

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Eric Blake
On 03/14/2018 12:30 PM, Eric Blake wrote: On 03/14/2018 12:09 PM, Bruno Haible wrote: Here's what POSIX has to say: http://austingroupbugs.net/view.php?id=529#c1200 Glad to see that this has been addressed in POSIX. I think we'll need to fall back to a #if based on platforms. If I'm re

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Eric Blake
On 03/14/2018 12:09 PM, Bruno Haible wrote: Here's what POSIX has to say: http://austingroupbugs.net/view.php?id=529#c1200 Glad to see that this has been addressed in POSIX. I think we'll need to fall back to a #if based on platforms. If I'm reading the POSIX bug correctly, HPUX is the

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Bruno Haible
Hi Eric, > > just stumbled upon nonintr_close() in spawn-pipe.c which has this loop: > > > >do > > retval = close (fd); > >while (retval < 0 && errno == EINTR); > > > > > > Regarding the man page of libc, this shouldn't be done on certain > > systems. E.g. it says the Linux kernel

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Tim Rühsen
On 03/14/2018 04:19 PM, Eric Blake wrote: > On 03/14/2018 10:13 AM, Eric Blake wrote: >> On 03/14/2018 10:04 AM, Tim Rühsen wrote: >>> Hi, >>> >>> >>> just stumbled upon nonintr_close() in spawn-pipe.c which has this loop: >>> >>>    do >>> retval = close (fd); >>>    while (retval < 0 && errn

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Eric Blake
On 03/14/2018 10:13 AM, Eric Blake wrote: On 03/14/2018 10:04 AM, Tim Rühsen wrote: Hi, just stumbled upon nonintr_close() in spawn-pipe.c which has this loop:    do retval = close (fd);    while (retval < 0 && errno == EINTR); Regarding the man page of libc, this shouldn't be done on

Re: Retrying close() after error on Linux !?

2018-03-14 Thread Eric Blake
On 03/14/2018 10:04 AM, Tim Rühsen wrote: Hi, just stumbled upon nonintr_close() in spawn-pipe.c which has this loop: do retval = close (fd); while (retval < 0 && errno == EINTR); Regarding the man page of libc, this shouldn't be done on certain systems. E.g. it says the Linux ker

Retrying close() after error on Linux !?

2018-03-14 Thread Tim Rühsen
Hi, just stumbled upon nonintr_close() in spawn-pipe.c which has this loop: do retval = close (fd); while (retval < 0 && errno == EINTR); Regarding the man page of libc, this shouldn't be done on certain systems. E.g. it says the Linux kernel closes the file descriptor even on EINTR. W

Re: Testing on riscv64

2018-03-14 Thread Richard W.M. Jones
On Wed, Mar 14, 2018 at 12:09:40PM +0100, Bruno Haible wrote: > -append "console=ttyS0 ro root=/dev/vda init=/init" \ Oh I see, the problem is the init=... See https://fedorapeople.org/groups/risc-v/disk-images/readme.txt for the latest and correct instructions. I tried qemu from upstream no

Re: Testing on riscv64

2018-03-14 Thread Richard W.M. Jones
On Wed, Mar 14, 2018 at 12:09:40PM +0100, Bruno Haible wrote: > Hi Richard, > > > Platform: riscv64-unknown-linux-gnu > > gnulib @ db0b059ae4f489d0c83b785b259eb965a181d0d0 (yesterday) > > Prompted by your mail, I'm trying to run a Linux/riscv64 machine in a qemu > VM, in order to look at the gnul

Re: Testing on riscv64

2018-03-14 Thread Bruno Haible
Hi Richard, > Platform: riscv64-unknown-linux-gnu > gnulib @ db0b059ae4f489d0c83b785b259eb965a181d0d0 (yesterday) Prompted by your mail, I'm trying to run a Linux/riscv64 machine in a qemu VM, in order to look at the gnulib problems and port GNU libffcall and other software. According to [1], I'm