git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] CYGWIN: Use a TCP socket for pipe()

From
Torsten Bögershausen <tboegi@web.de>
Date
Jul 2, 2013, 14:57 UTC
Message-ID
<51D2EA51.5000807@web.de>
In-Reply-To
<7vwqpbi4ws.fsf@alter.siamese.dyndns.org>
On 2013-07-01 00.56, Junio C Hamano wrote:
Show 10 quoted lines
> Torsten Bögershausen <tboegi@web.de> writes:
> 
>> I testet "rj/cygwin-remove-cheating-lstat" with the "socket pipe" on top:
>> no hanging.
>>
>> Then I run "rj/cygwin-remove-cheating-lstat" without "socket pipe",
>> (or in other words git.git/pu):
>> No hanging.
> 
> So an immediate conclusion is that we can forget about this patch?
Yes
Show 13 quoted lines
> 
>> So at the moment I don't have any problems to report for cygwin, which is good.
>>
>> And it looks as if "rj/cygwin-remove-cheating-lstat" prevents the "hanging",
>> so there is another +1 to keep it and move it into next.
> 
> Ramsay started a "mark places we call lstat() when we do not really
> need fully correct lstat" topic, and I think it may be a sane
> direction to go, as long as the helper function's semantic is
> clearly defined.
> 
> It would be worth seeing where it leads us, before ripping that
> "cheating and incomplete lstat out, I think.

I currently run the test suite on it, based on next. Got one hanging, but of a different kind: git was running fetch, but the corresponding git-upload-pack.exe was not in the task list of the windows explorer, but it was in ps under cygwin.

diff --git a/run-command.c b/run-command.c
index aece872..ee588eb 100644
--- a/run-command.c
+++ b/run-command.c
@@ -226,6 +226,9 @@ static inline void set_cloexec(int fd)
                fcntl(fd, F_SETFD, flags | FD_CLOEXEC);
 }
 
+#if defined(__CYGWIN__)
+#define wait_or_whine(p, a) (p)
+#else
 static int wait_or_whine(pid_t pid, const char *argv0)
 {
        int status, code = -1;
@@ -268,6 +271,7 @@ static int wait_or_whine(pid_t pid, const char *argv0)
        errno = failed_errno;
        return code;
 }
+#endif

(And I needed to remove the credential helper tests)

More info later
/Torsten
Previous: Junio C Hamano
Message 6 of 6 in “CYGWIN: Use a TCP socket for pipe()”
  1. CYGWIN: Use a TCP socket for pipe()Torsten Bögershausen, Jun 27, 2013
  2. Junio C HamanoJun 27, 2013
  3. Mark LevedahlJun 28, 2013
  4. Torsten BögershausenJun 30, 2013
  5. Junio C HamanoJun 30, 2013
  6. Torsten BögershausenJul 2, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.