Re: rcs configure hang

Paul Eggert <[email protected]> Thu, 5 Nov 2020 13:36:43 -0800
Newsgroups gmane.comp.version-control.rcs.bugs,gmane.comp.lib.gnulib.bugs
Organization UCLA Computer Science Department
Message-ID <[email protected]>
On 11/5/20 1:18 PM, Kelly Wang (kellythw) wrote:
> With the conftest.c you provided, strace still hang.
> Check for how many calls for chdir("confdir3"), it only has 110 times, then hang after mkdir("confdir3", 0700 ...
> Is there any directory limitation that can make on a server?

Wow, that's a more-serious kernel (or filesystem) bug than I thought: the mkdir 
system call is hanging and does not appear to be interruptible via SIGALRM.

When the program hangs, how do you terminate it? Do you use Control-C from a 
terminal? If so, what happens if you instead use 'kill'? Something like this:

rm -fr conftest3
gcc conftest.c
strace -o tr ./a.out &
sleep 1
kill -s INT $(ps -o pid= -C a.out)

That last line should send the SIGINT signal to the a.out command; does this 
cause a.out to exit? (You can look at 'tr' to see.) If it exits, perhaps we can 
modify conftest3 to do the same thing to itself when it is running on a buggy 
kernel.

Also, what happens if you do the same recipe as above, but use 'ALRM' rather 
than 'INT'? Again, look at the end of 'tr'.