On Thu, Jan 03, 2019 at 10:52:48AM +0100, Guilhem Bonnefille wrote: > One of my users reported a strange problem: a simple HTTPS clone did > not work with Git 1.8.3.1 on RedHat 7. > I did many tests and I was not able to understand why his clone don't > work while I'm able to do it on other similar host. > > Nevertheless, we did more investigations. One of them: a raw strace. > I discovered two strange behaviours: > - fetch-pack closes its standard input and standard output and then > tries to print the references on standard input and finaly dies. > - git-remote-https does not react to fetch-pack death and continue > polling an empty set of FD. > > [...] > > 2769 poll(NULL, 0, 1000) = 0 (Timeout) We actually don't use poll() very much in Git. And poking around the v1.8.3.1 source, I do not see any places where remote-https would call poll(), and none outside of "git help" and "git credential-cache-daemon" that would ever provide a timeout like "1000". I wonder if this poll is actually being run by libcurl. Is it possible to get a backtrace of the looping process with gdb? I'd also point out that v1.8.3.1 is over 5 years old, and there have been quite a few http-related fixes over the years. There is a good chance that if this is a Git bug, it has long since been fixed. Is it possible to reproduce with a more modern version of Git? -Peff