From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#56025: 29.0.50; em-extpipe-test-2 times out on EMBA and Cygwin Date: Fri, 24 Jun 2022 09:53:11 -0700 Message-ID: <96e47ba7-efaa-b6df-dd98-60f09068e68c@gmail.com> References: <8e21db9c-0100-998e-f280-81304e7ff61a@cornell.edu> <87mtecl82o.fsf@athena.silentflame.com> <40d9e52f-2041-b341-ff77-546ca7792791@cornell.edu> <87k09elrf8.fsf@athena.silentflame.com> <1de33903-4c55-e043-3754-726f7044f2d0@cornell.edu> <7e7daa2f-dbbc-cd0a-4958-2a2932b17837@gmail.com> <8974408d-91cd-aebd-7a5b-596a57bd640e@cornell.edu> <17d41105-b006-f9ad-af0b-ece84a7f5248@gmail.com> <040b3a36-459b-a94d-f879-7f45aac50bda@cornell.edu> <83sfnud26o.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------CE238D5099019832316E8211" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="27040"; mail-complaints-to="usenet@ciao.gmane.io" Cc: larsi@gnus.org, 56025@debbugs.gnu.org, spwhitton@email.arizona.edu To: Eli Zaretskii , Ken Brown Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Jun 24 18:54:35 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o4mZm-0006se-5I for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 24 Jun 2022 18:54:34 +0200 Original-Received: from localhost ([::1]:40244 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o4mZk-0007mL-N0 for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 24 Jun 2022 12:54:32 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59600) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o4mZG-0007iy-AH for bug-gnu-emacs@gnu.org; Fri, 24 Jun 2022 12:54:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:49455) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o4mZG-00042U-1B for bug-gnu-emacs@gnu.org; Fri, 24 Jun 2022 12:54:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o4mZG-0003cv-0l for bug-gnu-emacs@gnu.org; Fri, 24 Jun 2022 12:54:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 24 Jun 2022 16:54:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56025 X-GNU-PR-Package: emacs Original-Received: via spool by 56025-submit@debbugs.gnu.org id=B56025.165608960113884 (code B ref 56025); Fri, 24 Jun 2022 16:54:01 +0000 Original-Received: (at 56025) by debbugs.gnu.org; 24 Jun 2022 16:53:21 +0000 Original-Received: from localhost ([127.0.0.1]:43352 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o4mYa-0003bs-Hi for submit@debbugs.gnu.org; Fri, 24 Jun 2022 12:53:20 -0400 Original-Received: from mail-pg1-f174.google.com ([209.85.215.174]:38733) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o4mYY-0003bX-2C for 56025@debbugs.gnu.org; Fri, 24 Jun 2022 12:53:19 -0400 Original-Received: by mail-pg1-f174.google.com with SMTP id e63so2936624pgc.5 for <56025@debbugs.gnu.org>; Fri, 24 Jun 2022 09:53:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:mime-version :in-reply-to:content-language; bh=X22cDCGUpUfD3EDKYOwtR1w7jCRCphk/qcjwBPYLOhc=; b=QERtl4VoD+wjNBHzXoaVZRnO6h49cM0GSHNVpPQ4M5HVoZaRpSjJwdRAl81l4mfEUm OhD1t2sGk8YDgoG5vndRqXdmULc2VsTsWMa44t50lt9hF6n4kif1tDaWh3YP2bAUEllP 7pd9rEIN9JeeGfgQS6Cdujz5Nq/TFxSmLaqJU4rQChEkrrgl0LM0XvYXIjQ+mueZeGEC y1bROyBlmxyZwCe4XrkWDhKRzT+v1ao9+2fP6sERNDUE26BdnZnjqnfajE22/WaJztCN D5pu6mKa3PVNDvEuc+ntB2UnEddcHnoVB9GMPwv2pgNXf0iG3XRlAOeshUJK22yiu3e1 4Q/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :mime-version:in-reply-to:content-language; bh=X22cDCGUpUfD3EDKYOwtR1w7jCRCphk/qcjwBPYLOhc=; b=R4ypZtglayLIoGaOJV1rnZBB1PtSAW8Q4ixHQlX0G9mEHF9+QIH38XArOHV/nuaqh6 Tuc6p26W9GvIYKSR94gbPJ3SVxbd0Xrg+osKzsn/6U0PUJjP9YXMLq42uBMvMO9wGQrH y6kKe0KjM5Kz3aHzLKkbK8pZbpR5nOLH/VUotdW1wm6n/Mctv/4eqUhkdU+wpJMtMFD8 Fy789vx5YOmsIG2mw9MvSaH6Ex1VHG2TODWUAcRdUwJAZC+46YDeeD56L/oX4AuEAdy/ riY8QHThCaKVF0IqBYh0TtOYWFfF3hWp5Vh6Vl2nUvLhTT9PyEYGHaCVD+/3y/4kxjFh rBnw== X-Gm-Message-State: AJIora/wPd3fihnGXJDjGpa63E5QnQMRrNPB3f4PnE4kiITdt5tqPxS3 iBTryhZ8U5oXLRuyH1y9Ouo= X-Google-Smtp-Source: AGRyM1sBzK1alg9m4m6QUycu0SD4Lc41NST3kUsebT/lVkweXuIWB/mp+MRbQGSYX28fw1ZuGPiJjQ== X-Received: by 2002:a63:724a:0:b0:40c:76b7:3688 with SMTP id c10-20020a63724a000000b0040c76b73688mr12506922pgn.621.1656089592021; Fri, 24 Jun 2022 09:53:12 -0700 (PDT) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id u4-20020a170903124400b0016a16e16c7fsm2035318plh.248.2022.06.24.09.53.10 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 24 Jun 2022 09:53:10 -0700 (PDT) In-Reply-To: <83sfnud26o.fsf@gnu.org> Content-Language: en-US X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:235203 Archived-At: This is a multi-part message in MIME format. --------------CE238D5099019832316E8211 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 6/23/2022 9:40 PM, Sean Whitton wrote: > I'm a bit queasy about an unbounded loop here. Why not just try three > times? Or, better, try twice, and a third time only if we're on a > platform where we know it's needed. How about the attached patch? I didn't check for specific platforms to enable the "third EOF" behavior, since a) it's hard to say for sure which platforms might have this issue (especially since Cygwin will be fixing it), and b) this lets us avoid worrying about Tramp compatibility. > Many thanks for the investigative work. Agreed, this turned out to be a much subtler problem than I had initially suspected. Thanks! On 6/23/2022 11:07 PM, Eli Zaretskii wrote: > Please add there comments explaining why this is done, or at least > point to relevant messages in this bug's discussion (NOT just to the > bug number, as the discussion is long and it will be hard to > understand what part of it is relevant). Such "tricky" code should > always have comments explaining it. I added a comment explaining this to the best of my knowledge. There's one additional caveat I didn't mention there though, since it's only somewhat related. I believe this was mentioned earlier in the thread, but when Eshell creates a pipe, it routes both stdout and stderr to the next process's stdin (there's no way to control this behavior yet). When closing the handles from the initial process, it then calls `eshell-close-target' twice: once for stdout and once for stderr. Thus, with this patch, we'll call `process-send-eof' up to six times. I'm not sure this is really a problem in practice today, but it might come up if Eshell gains the ability to redirect stdout and stderr separately. --------------CE238D5099019832316E8211 Content-Type: text/plain; charset=UTF-8; name="0001-When-closing-an-Eshell-process-target-send-EOF-three.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-When-closing-an-Eshell-process-target-send-EOF-three.pa"; filename*1="tch" RnJvbSBhNWY4ZGM4YWY2ZDE5OWJlOGUzYjA5ODAzODM1ZWZhOWQ3MGI3NmE2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IEZyaSwgMjQgSnVuIDIwMjIgMDk6MTQ6MzggLTA3MDAKU3ViamVjdDogW1BB VENIXSBXaGVuIGNsb3NpbmcgYW4gRXNoZWxsIHByb2Nlc3MgdGFyZ2V0LCBzZW5kIEVPRiB0 aHJlZSB0aW1lcwoKKiBsaXNwL2VzaGVsbC9lc2gtaW8uZWwgKGVzaGVsbC1jbG9zZS10YXJn ZXQpOiBTZW5kIEVPRiAzIHRpbWVzLgoKKiB0ZXN0L2xpc3AvZXNoZWxsL2VtLWV4dHBpcGUt dGVzdHMuZWwgKGVtLWV4dHBpcGUtdGVzdHMtLWRlZnRlc3QpOgpSZS1lbmFibGUgdGhlc2Ug dGVzdHMgb24gRU1CQS4KClRoaXMgcGF0Y2ggaXMgYWRhcHRlZCBieSBvbmUgZnJvbSBLZW4g QnJvd24sIHdobyB1bmNvdmVyZWQgdGhlIHJlYXNvbgpmb3IgdGhpcyBidWcgKGJ1ZyM1NjAy NSkuCi0tLQogbGlzcC9lc2hlbGwvZXNoLWlvLmVsICAgICAgICAgICAgICAgIHwgMTUgKysr KysrKysrKysrKy0tCiB0ZXN0L2xpc3AvZXNoZWxsL2VtLWV4dHBpcGUtdGVzdHMuZWwgfCAg MSAtCiAyIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvbGlzcC9lc2hlbGwvZXNoLWlvLmVsIGIvbGlzcC9lc2hlbGwvZXNo LWlvLmVsCmluZGV4IDM2NDRjMWExOGIuLjJkMjUxODZkZTcgMTAwNjQ0Ci0tLSBhL2xpc3Av ZXNoZWxsL2VzaC1pby5lbAorKysgYi9saXNwL2VzaGVsbC9lc2gtaW8uZWwKQEAgLTI3Niw4 ICsyNzYsMTkgQEAgZXNoZWxsLWNsb3NlLXRhcmdldAogICAgOzsgSWYgd2UncmUgcmVkaXJl Y3RpbmcgdG8gYSBwcm9jZXNzICh2aWEgYSBwaXBlLCBvciBwcm9jZXNzCiAgICA7OyByZWRp cmVjdGlvbiksIHNlbmQgaXQgRU9GIHNvIHRoYXQgaXQga25vd3Mgd2UncmUgZmluaXNoZWQu CiAgICAoKGVzaGVsbC1wcm9jZXNzcCB0YXJnZXQpCi0gICAgKGlmIChlcSAocHJvY2Vzcy1z dGF0dXMgdGFyZ2V0KSAncnVuKQotCShwcm9jZXNzLXNlbmQtZW9mIHRhcmdldCkpKQorICAg IDs7IEFjY29yZGluZyB0byB0aGUgUE9TSVggc3RhbmRhcmRzLCBzZW5kaW5nIEVPRiBjYXVz ZXMgYWxsIGJ5dGVzCisgICAgOzsgd2FpdGluZyB0byBiZSByZWFkIHRvIGJlIHNlbnQgdG8g dGhlIHByb2Nlc3MgaW1tZWRpYXRlbHkuCisgICAgOzsgVGh1cywgaWYgdGhlcmUgYXJlIGFu eSBieXRlcyB3YWl0aW5nLCB3ZSBuZWVkIHRvIHNlbmQgRU9GCisgICAgOzsgdHdpY2U6IG9u Y2UgdG8gZmx1c2ggdGhlIGJ1ZmZlciwgYW5kIGEgc2Vjb25kIHRpbWUgdG8gY2F1c2UgdGhl CisgICAgOzsgbmV4dCByZWFkKCkgdG8gcmV0dXJuIGEgc2l6ZSBvZiAwLiAgSG93ZXZlciwg c29tZSBwbGF0Zm9ybXMKKyAgICA7OyAoZS5nLiBTb2xhcmlzKSBhY3R1YWxseSByZXF1aXJl IGEgKnRoaXJkKiBFT0YuICBTaW5jZSBzZW5kaW5nCisgICAgOzsgZXh0cmEgRU9GcyB3aGls ZSB0aGUgcHJvY2VzcyBpcyBydW5uaW5nIHNob3VsZG4ndCBicmVhaworICAgIDs7IGFueXRo aW5nLCB3ZSdsbCBqdXN0IHNlbmQgdGhlIG1heGltdW0gd2UnZCBldmVyIG5lZWQuICBTZWUK KyAgICA7OyBidWcjNTYwMjUgZm9yIGZ1cnRoZXIgZGV0YWlscy4KKyAgICAobGV0ICgoaSAw KSkKKyAgICAgICh3aGlsZSAoYW5kICg8PSAoY2wtaW5jZiBpKSAzKQorICAgICAgICAgICAg ICAgICAgKGVxIChwcm9jZXNzLXN0YXR1cyB0YXJnZXQpICdydW4pKQorICAgICAgICAocHJv Y2Vzcy1zZW5kLWVvZiB0YXJnZXQpKSkpCiAKICAgIDs7IEEgcGxhaW4gZnVuY3Rpb24gcmVk aXJlY3Rpb24gbmVlZHMgbm8gYWRkaXRpb25hbCBhcmd1bWVudHMKICAgIDs7IHBhc3NlZC4K ZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9lc2hlbGwvZW0tZXh0cGlwZS10ZXN0cy5lbCBiL3Rl c3QvbGlzcC9lc2hlbGwvZW0tZXh0cGlwZS10ZXN0cy5lbAppbmRleCAzYjg0ZDc2M2FjLi4y OWY1ZGMwNTUxIDEwMDY0NAotLS0gYS90ZXN0L2xpc3AvZXNoZWxsL2VtLWV4dHBpcGUtdGVz dHMuZWwKKysrIGIvdGVzdC9saXNwL2VzaGVsbC9lbS1leHRwaXBlLXRlc3RzLmVsCkBAIC03 MSw3ICs3MSw2IEBAIGVtLWV4dHBpcGUtdGVzdHMtLWRlZnRlc3QKICAgICAgICAoc2tpcC11 bmxlc3Mgc2hlbGwtZmlsZS1uYW1lKQogICAgICAgIChza2lwLXVubGVzcyBzaGVsbC1jb21t YW5kLXN3aXRjaCkKICAgICAgICAoc2tpcC11bmxlc3MgKGV4ZWN1dGFibGUtZmluZCBzaGVs bC1maWxlLW5hbWUpKQotICAgICAgIChza2lwLXVubGVzcyAobm90IChnZXRlbnYgIkVNQUNT X0VNQkFfQ0kiKSkpCiAgICAgICAgKGxldCAoKGlucHV0ICxpbnB1dCkpCiAgICAgICAgICAo d2l0aC10ZW1wLWVzaGVsbCAsQGJvZHkpKSkpKQogCi0tIAoyLjI1LjEKCg== --------------CE238D5099019832316E8211--