GNU bug report logs - #60534
28.2; Forbidden reentrant call of Tramp

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Georgi Danov <georgi.danov@HIDDEN>; merged with #49954; dated Tue, 3 Jan 2023 23:57:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 28 Jan 2026 12:15:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 28 07:15:47 2026
Received: from localhost ([127.0.0.1]:47981 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vl4SY-0001qW-PD
	for submit <at> debbugs.gnu.org; Wed, 28 Jan 2026 07:15:47 -0500
Received: from mout.gmx.net ([212.227.17.22]:43049)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1vl4ST-0001q5-Qv
 for 60534 <at> debbugs.gnu.org; Wed, 28 Jan 2026 07:15:44 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1769602535; x=1770207335; i=michael.albinus@HIDDEN;
 bh=rJ35ido/dElQFzYwkjpIQH1cO2w3gfR2FbB3+jME4sM=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=gArZuQB2PjUJsT0uDomhY0fYlXU5nXEP/3uZcnS2dUQZWGbc4rUETCHDRtTt2r8Q
 mioUI+FOavNO67rpyV6fCnOpDmmJZSZBK4z+C43N2ysLmCmvSu8YHEIbyPEF8lR7i
 ki7QZOTRQIDeLJ1+TLH82HSWJunkw9d25D2GUz1H3uIXtCCJzsRAHkw6aIDdxfWf7
 HUHuEZ+Qbm3DHylXUl87VwG/CWjXaZOVEv2NWpMGEu0WfKu2PLF1Y+HsLrrtUo3FM
 wF2hNhrxvzR4xC6gX62pqyyWn/Wneb+Lztf4yxopdhHoIIFBf84CuW26Wrk5pBjV9
 KWJguryfIRftqb6Pqw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.12]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MoO6C-1w4fgl1tvM-00kT2H; Wed, 28
 Jan 2026 13:15:35 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s48a4xyx9nh.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <87347rupqa.fsf@HIDDEN> <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
 <87tswku1d6.fsf@HIDDEN> <s48wm1ekrsc.fsf@HIDDEN>
 <s48pl7597ct.fsf@HIDDEN> <s48ldht7z1n.fsf@HIDDEN>
 <878qdnxppg.fsf@HIDDEN> <s48ecnaib3m.fsf@HIDDEN>
 <s48a4xyx9nh.fsf@HIDDEN>
Date: Wed, 28 Jan 2026 13:15:34 +0100
Message-ID: <87ldhiszkp.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:cZKG9FK0stkhxUiP33oafYbzXjk6lA2LJYR+XzvQKAfPcoY/F3y
 99x/o+J+KqTi/Bd3e+STvxgTjQutIXG3UzriJh0j6mlz7mXWx1qngj/DOtmpt/hwGWJQ0vo
 XMf9UE63R4rJH2gF0ZZ20Ii7sKgSWSNdfgmCTKJh9VxnpOlocryXFm+z1WR+7cun8fZ1edA
 VxPHGCHAHTrLodqWZF2Eg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:HUI7cowTUwI=;p7FQZi7IyKI8LYpOkyGlHmB8yOZ
 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
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

>> Hi Michael,

Hi James,

>> I think we got off on the wrong foot... :-) That patch was only meant
>> to
>> check the idea. Here's a better (but still proto-) version, also for
>> anyone interested to test if this technique is any good (so that I
>> might
>> be forewarned if proceeding with detailing is not worth it):

OK.

>> But I think an explanation of how it works AISI would suffice to
>> easily
>> reject it and stop my bothering:
>>
>> Tramp handlers won't recursively call themselves, but a filter borne
>> of
>> the async process's accept-...-output might. In which case it leads to
>> Forbidden if the _shell_ is already running something else. In this
>> patch, a shell is never left open: it's always reused to reattach
>> (renew) the async process, and every handler call is a new connection
>> which detaches the current (first) running async process. Also, the
>> custom sentinel, which runs on general waiting, is what does the
>> reattachment. ControlMaster causes the newly spawned ssh process to
>> wait
>> until the earlier one has exited - after detaching.
>>
>> IOW, ssh ControlMaster handles concurrency locally and dtach remotely.

I still have hard time to understand how dtach can solve the problem. In
my understanding, it isn't an asynchronous process itself which causes
the problem. It is rather what is done in the process-fileter or
process-sentinel. If there is a call of a primitive file operation, like
file-attributes or directory-files, this file operation will be handled
in the main Tramp connection process (like *tramp/ssh hostname*), and
not in the async process. Same for primitive file operation in Emacs
main. These asynchronous, parallel operations in the same Tramp main
connection do the hassle, because they interfer each other.

Same for timers, or special event handlers.

>> (I will surely look into the tests)

As illustration, I have added a new test to tramp-tests.el (pushed to
the repositories). You can call it like

--8<---------------cut here---------------start------------->8---
# env REMOTE_TEMPORARY_FILE_DIRECTORY=3D'/dtach::/tmp' make -C test tramp-t=
ests SELECTOR=3Dtramp-test45-force-remote-file-error
make: Entering directory '/home/albinus/src/tramp/test'
/usr/local/bin/emacs -Q -batch -L /home/albinus/src/tramp/test/../lisp -L /=
home/albinus/src/tramp/test -l tramp  -l tramp-tests	 \
--eval '(ert-run-tests-batch-and-exit (quote tramp-test45-force-remote-file=
-error))'=20
Running 1 tests (2026-01-28 13:09:46+0100, selector =E2=80=98tramp-test45-f=
orce-remote-file-error=E2=80=99)
timer /dtach::/tmp
filter /dtach:gandalf:
error in process filter: Forbidden reentrant call of Tramp
make: [Makefile:49: tramp-tests] Error 255 (ignored)
make: Leaving directory '/home/albinus/src/tramp/test'
--8<---------------cut here---------------end--------------->8---

It uses a process-filter for tests, because the problem happens more often =
here
than in process-sentinel. If we could run this test w/o an error, we
would have it.

> Sorry, the eglot part doesn't work yet. Will send in an updated patch...
>
> (Let that not come in the way of airing opinions)

Sure, let's discuss the approach. Although I have hard times to
understand, w/o running a test with full Tramp traces.

(I'm also a little bit concerned that you need to patch also other
packages, like jsonrpc. They should run w/o Tramp specific functions.)

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 28 Jan 2026 11:24:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 28 06:24:38 2026
Received: from localhost ([127.0.0.1]:47907 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vl3f3-000726-1L
	for submit <at> debbugs.gnu.org; Wed, 28 Jan 2026 06:24:38 -0500
Received: from mout.gmx.net ([212.227.17.20]:40643)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vl3ex-00071Q-B7
 for 60534 <at> debbugs.gnu.org; Wed, 28 Jan 2026 06:24:34 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1769599465; x=1770204265; i=jimjoe@HIDDEN;
 bh=4MOzsaq/Q0GfpeDb8coULTmrGdJkBZ1RFADuGD0ap/w=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=tgmnTqfDuG1vhGuuI/kG2x28Lk6JuGDlx/OWWFEwr5yNZcztc9a5Y/douJyY1aWA
 BtAN3iK9mplkN0zoFJPqsREwMGUWAgT0/zfRcbu8zWK6Z7VLiVDuxybeLq4lAKxEd
 TrM37rAXX+po4bxt0rcAf7PRHkPtPOZ/dcRoc93L/mqfoJnzJcFlDqrAe7XdxqCbN
 1zVsJMHhqUo/ykwX72MuytupFUTeoCbEiEHjaTiu0652fKUZ8iFxZbIGg/7WhUYct
 Y481QZsEdLoNgSN4mGETDwXQL1OlZLPGhd0nF+8oPATxWrp0V/ubSmyaWfWiFHRIP
 sh39N0TPhXjebdANQA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.26.44]) by mail.gmx.net (mrgmx104
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MYeR1-1vGPoa3xJ5-00Xojj; Wed, 28
 Jan 2026 12:24:24 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s48ecnaib3m.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
 <87tswku1d6.fsf@HIDDEN> <s48wm1ekrsc.fsf@HIDDEN>
 <s48pl7597ct.fsf@HIDDEN> <s48ldht7z1n.fsf@HIDDEN>
 <878qdnxppg.fsf@HIDDEN> <s48ecnaib3m.fsf@HIDDEN>
Date: Wed, 28 Jan 2026 16:54:18 +0530
Message-ID: <s48a4xyx9nh.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:7agjIpWrYQFfyeYgyQw38iEA+8UEOGvWSEfN2GyGmcpT+JTro3Y
 zX8DzUu13D9VqAmeZdGp8HtpZ6AcYICLjtyaf6fTfUYyksLz6CXzwkzQSMBlSTvJ4R779J4
 kWkeDN2reYAb2zWGUX4YCTjVDeYVyhIZnrHVq/ENGXXzELcI4t9eHOJUSft/oC2fCgqosib
 e/kPsiHj1YJOwlJrm2vtw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:FSz7GFIz0Lw=;m5O/2CJuGU9h+R9aELkKQr0v8MP
 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
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <> writes:

> Michael Albinus <> writes:
>
>> James Thomas <> writes:
>>
>> Hi James,
>>
>>>>>>>> This is just a POC (as the littered FIXMEs testify) only to
>>>>>>>> check
>>>>>>>> feasibility - any flaw? And more of a fix for bug#61350 than
>>>>>>>> this,
>>>>>>>> so
>>>>>>>> bear with me for the test:
>>>>>>>>
>>>>>>>> - M-x cd /dtach:<server having dtach>: RET
>>>>>>>> - M-: (start-file-process "test" "test" "./test.sh") ([1] or
>>>>>>>> maybe
>>>>>>>> another long-running process)
>>>>>>>> - C-x C-j
>>>>>>>>
>>>>>>>> With /ssh: it would block, but this works, with no visible
>>>>>>>> defects
>>>>>>>> in
>>>>>>>> the async process, AFAICT.
>>>>>>>>
>>>>>>>> So I guess my question is: Does something like this - fully
>>>>>>>> fleshed
>>>>>>>> out - have a chance?
>>
>> Thanks for this. I've played a little bit with.
>>
>> First, it doesn't pass the Tramp tests. Try
>>
>> # env REMOTE_TEMPORARY_FILE_DIRECTORY=/dtach::/tmp make -C test
>> tramp-tests.log
>>
>> Several tests have failed. Pls fix this so that I have a chance to
>> check
>> the code (and the timing) better.
>>
>> Some general remarks:
>>
>> - You have added a new Tramp method "dtach", bound to the Tramp
>> method
>>   "ssh". I believe this isn't sufficient, all Tramp methods which
>> are
>>   based on "ssh" mechanism shall be covered. This includes sll
>> methods
>>   with offer connection sharing, like "scp", "scpx", "rsync",
>> "sshx",
>>   "plink", "plinkx", "pscp", "psftp". Even better would be to
>> support
>>   *all* methods of the tramp-sh backend, but there might be
>> technical
>>   restrictions as you said.
>>
>>   Would it be possible to refrain from using a new method, and to
>>   control using dtach by additional method parameters and/or global
>>   settings?
>>
>> - Your approach modifies process sentinels (and it proposes to do so
>> also
>>   for process filters). What about other reasons for the forbidden
>> Tramp
>>   reentrant call? Timers, special events like D-Bus or file
>>   notifications, you name it.
>>
>> Comments on the code:
>>
>>> +;; FIXME: Instead, couldn't it simply be local to the shell
>>> process
>>> buffer (but is it guaranteed t.e. if starting with direct-async)?
>>> Or
>>> turn into registry for unique ControlMaster sockets. Has for its
>>> value the running async proc.
>>> +(defvar tramp-to-dtach nil)
>>> +(defvar tramp-just-dtached nil)
>>
>> Try to use process properties (or ephemeral connection properties)
>> via
>> tramp{-set|-get}-connection-property.
>>
>>> + ;; Copy of ssh. Separate so that one may run processes normally
>>> as
>>> well, alongside.
>>> + (add-to-list 'tramp-methods
>>> + `("dtach"
>>> + (tramp-login-program "ssh")
>>> + (tramp-login-args (("-l" "%u") ("-p" "%p")
>>> + ;; FIXME: Work into the auto-detection instead.
>>> + ("-o" "ControlPath=dtach-ControlPath-%%r@%%h:%%p")
>>> + ("-o" "ControlMaster=auto")
>>> + ("-o" "ControlPersist=yes")
>>
>> Why your own values? Wouldn't ("%c") be sufficient? Yes, Control*
>> settings could be disabled, but you could ignore
>> tramp-use-connection-share in tramp-ssh-or-plink-options when you
>> detect
>> a dtach-based connection.
>>
>>> - (when sentinel
>>> - (set-process-sentinel p sentinel))
>>> + (when (or sentinel dtachp)
>>> + (set-process-sentinel
>>> + p (if dtachp
>>> + ;; So there ought to be no waits (sit-for
>>> + ;; etc.) that might trigger this, in
>>> + ;; tramp itself.
>>> + (lambda (proc event)
>>> + ;; TODO: Detect termination using tramp-just-dtached.
>>> + (if (and (eq proc tramp-to-dtach)
>>> + (string= event "finished\n"))
>>> + ;; FIXME: Check if too soon.
>>> + (with-current-buffer (process-buffer proc)
>>> + ;; Renew.
>>> + (tramp-sh-handle-make-process
>>> + ;; Applications may use the same name eventhough the object
>>> changes.
>>> + :name (process-name proc)
>>> + :buffer (process-buffer proc)
>>> + :command
>>> + '("sh" "-c" "cat /tmp/buf; dtach -a /tmp/fozzle; > /tmp/buf")
>>> + :filter (process-filter proc))
>>> + (setq tramp-just-dtached nil))
>>> + (funcall (or sentinel #'internal-default-process-sentinel)
>>> + proc event)))
>>> + sentinel)))
>>
>> Does it mean you ignore sentinel in the dtach case?
>>
>>> + (catch 'uname-changed`
>>
>> Superfluous grave accent.
>>
>> Best regards, Michael.
>
> Hi Michael,
>
> I think we got off on the wrong foot... :-) That patch was only meant
> to
> check the idea. Here's a better (but still proto-) version, also for
> anyone interested to test if this technique is any good (so that I
> might
> be forewarned if proceeding with detailing is not worth it):
>
>
>
> (The 'interface' part is just a proposal) Btw it will also need:
>
> (advice-add 'jsonrpc--process :filter-return
> #'possibly-dtached-process)
> (setq tramp-use-connection-share 'dtach)
>
> C-x C-f /ssh:<server with dtach & lsp>:~/path/to/file.c RET
> M-x eglot RET
>
> But I think an explanation of how it works AISI would suffice to
> easily
> reject it and stop my bothering:
>
> Tramp handlers won't recursively call themselves, but a filter borne
> of
> the async process's accept-...-output might. In which case it leads to
> Forbidden if the _shell_ is already running something else. In this
> patch, a shell is never left open: it's always reused to reattach
> (renew) the async process, and every handler call is a new connection
> which detaches the current (first) running async process. Also, the
> custom sentinel, which runs on general waiting, is what does the
> reattachment. ControlMaster causes the newly spawned ssh process to
> wait
> until the earlier one has exited - after detaching.
>
> IOW, ssh ControlMaster handles concurrency locally and dtach remotely.
>
> (I will surely look into the tests)
>
>> Superfluous grave accent.
>
> I imagine you using this anyway... ;-)
>
> WDYT?

Sorry, the eglot part doesn't work yet. Will send in an updated patch...

(Let that not come in the way of airing opinions)

--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 28 Jan 2026 05:02:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 28 00:02:23 2026
Received: from localhost ([127.0.0.1]:44699 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vkxh8-0007hg-4B
	for submit <at> debbugs.gnu.org; Wed, 28 Jan 2026 00:02:22 -0500
Received: from mout.gmx.net ([212.227.17.20]:42667)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vkxh4-0007hR-94
 for 60534 <at> debbugs.gnu.org; Wed, 28 Jan 2026 00:02:19 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1769576531; x=1770181331; i=jimjoe@HIDDEN;
 bh=W11EeowsoNiXWb0aOmk7PEh8mwPrRHTeo11gHzGEeyU=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=gmIb9sM0GcJdfj8BwJKdw7Ia05ByUpZU0Bzs6XGeo7ORVxT9ECawvF2eEv2jk2DE
 /xIgG9yeXdwvL+DfQBGy4HiIbn0uIGEpOOWf6At2YRLF3RBGJF+5cEYAUdhyduVe3
 24cOr8uSLAVYQjdvS2mNW6F1rEOVnUp1LGZ7fuoLszmfbx7Z1b1y8IhF9Trb18iCs
 2p33xrCteEzfKGybOkRD+rUNrQPfMvTB//hqnXtORlWNQO1amho07KXyea7/DCZaM
 1rNx5VoLKA59yAMGd+0Sy29kLtxpJzj0n8sKO5BEBjRS+FYJNO8tzYv1YuAVH2q2x
 an0XYfX3yxepbHf9jQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.104.176.162]) by mail.gmx.net (mrgmx105
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MTzfG-1vLDc02zlS-00VO1j; Wed, 28
 Jan 2026 06:02:11 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <878qdnxppg.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
 <87tswku1d6.fsf@HIDDEN> <s48wm1ekrsc.fsf@HIDDEN>
 <s48pl7597ct.fsf@HIDDEN> <s48ldht7z1n.fsf@HIDDEN>
 <878qdnxppg.fsf@HIDDEN>
Date: Wed, 28 Jan 2026 10:32:05 +0530
Message-ID: <s48ecnaib3m.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Provags-ID: V03:K1:JWBDEgaWlwzBdNZupQYPEn1B/IvmApRweMMymvj5O/vF7m8yRtT
 SvazxIG8sCfWwg/Fzf8PgNRvm6TtJLrhS4iqniPqhVXCsPhCMYcJ0LNry63eNjGRD4CgVK+
 tQ6S+VwDTeh/si5l5Kfq4YdbiNwQ2P1VnK5jT1f+cxPphiSWVU17wS2wQRQRat0EvznzWrY
 yCrqtJrQz2vNZwcxrKtIg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:xx2bzIlVXtk=;wjPMLM/Oqk9Qx/UW3z1islOOSxu
 jEgpIgzDLZggsOGGah4DUt0RHgjM5imXhvcQTe1h19Bhyzdl+jXSi6nwv3kXcVK/AN7CXtiD0
 cxGen69NcujtT4YFJUWKrmiLJWBvkgTaahWF5Vh+POScEjKPGAiZuUMu7nsLSHIGPQEztXaGZ
 MNvOb+v0MT+W6AmFsym8LYIseOJvW8MT21xJRmiQAw37sBFLFeD4XAqPP7PJcDEPPFV22mI0e
 mJLbJHxTIm1Wvobb3Q5BGHbyF9xHytCHMp1Utt7fLWG9kcJ+qMC+9uvGdQ+JP5KNeX8whl5XG
 e41uFV/rpo4AsF5lQEFVXe21PGn22TRJrEc0Mt+blE3B6+VvR4CrTsOcnyYdza+3K9NoSwTPX
 HGGBvQ2SK2tb3d+XT3p1qDgDmSRMTZQ+riCRRT0YBqrbr8Vw72PDF0x6ocqpKcVKt7eZiwd6p
 BK6ncHiVbgVQKlz2NokmXzIHdWj9bMdHsITO/07Dqv2XjFO9bve4Ngs67wheJEWMP+ZO+W2bi
 LU880yJgBncAC9bEqLAJ3ckAS6K5yXKozxA33zs9z/nWDhnCpw0MvcQPE6lrZioYbfJ47fWWS
 V3Wqb+EpX27FmJb4w8siAhspJ0selyzjckMlTmY1l6p3km6gI0PEoXI0YM23X7QlEP/T/PI6q
 sDHAV8qxBvE/AzARWxwdsATFxeLxRYXVvAynWpdRN15WN0B0qYm73V1Sxtz9UJyvgivbKoo+U
 9aQOwJ5M16JRw3zUKsTGBp2oD9ZyQdHR4ajeujXaeXBef3rlOAmhffkfPqAOkRVGFeKVb1Kpk
 G+nXyERm5qDG9YqVglV2Xwu5T3NGhWfDixZ60vjuDPLkJzJsg2FuEcOGpmMZMiqkWWfr8ihGT
 r5NMkWoXx2aXIjQWh950wR8A58eaBR9zqcWMUzknPJ3TI7RXq4z7Zf4UFXgtV39tQKx74Sizq
 Gar7Hbw+QY7x4oz+ogBdnbvtawFRQfqG3NDF3/BL3ksUtGPwEaXlsyJXEk5OHCNq4cMx1496n
 oAiLabsOUVBfJrxQAPBMTPF/utJsIy14VK4/fvtrmNZZkUC7PHo7XZYG9YwFTlWMzYu2uOhL0
 DV8fXr6O+kSEA6jnmjlj2HL7ysnlP+ieGUkMFxS4NdKqzCUIByb7IbvPxlFcBJyFMYkdV3AtI
 ZRzizGXBbpoIjfQ9PFI80zkxUFpR5xRcFdhKHQErcatKufp2rAnXKm+gNoJYAGqtfs7WB6/+T
 IpD2gYThcnHHbst0ub4xtuWdS7XQsrQe0comoQeSTrxJFdsRJyrU8QyBvEkialeOK3/KmXl7N
 armAgnqXIjpTKd5H3uixXpkrnXPw66jmZ0cjBhZr5vQHiDy7ziwpMTBH28TEWBh/JIKZFMkUC
 vhXdCdYgiU/V5MufOOM8JUmN6BsslGz7BpRP/ici2fdb4IgppIOmrZw2OiGM/eZycfBgxsFbw
 9t2TyNRwkOJoMhR0TOLdtJdDzMt7n4eTm2wzDskhiBzvx9JieUjbHdDeCZ242GHBc81hjtzQc
 UbdXtQY0eva4sJL90utwRLMGqYYwh9LfjbnRGFHpw86cff5tNU7ehFqqzAOn00yjU7S4OQ4O/
 d/hPga0Fci9S+2vTs5m/BGUQHBWE+kdLRhGeB8XNxdS+wVfrGRSVDuwRlJWmtyS5/isaWlCTj
 Pkef1KUe7f6Mjo6PuQyV8t1qtLC0Ew6e2qwnmWFF8w7GFk6hnVeNZxmSED66atRFClY3c7N1s
 X0oGrIwVTvhWFDt6ZqUOgYK3+pDllZZcFruNKZrWqK0iK9VjiagYYMVH0dr5n/7goSkYkDy7l
 OTFhxcyCZPVl14zo7GaQIs3gOXpiKbmKUwTaTC6EhlXCSjYytkaqRdzVkTIXLlHXE+4vKeWaq
 VrVIz2EboD2n/AavuKGRF8XtzRkBRp3PjXNq41gstagCGCe6uZsdgcCbR8Vwg6IyaDdU8whsp
 ogAF+ULbS0UpSNIpmTxYKkGqRpxLVHIv+F43XEbf+UbW+EzHG+cGCBDUphLM7YqyGUCH60MXn
 5zsvAUupvEJLMIkPh2yYaUJu1tIfNqrD+x124/KwUgBWxSMWai3Lv/T8i6/QLz+VDhUDH6Kon
 PprhqLgBc1i3k3rAW8C2xG+nxVieyt8YlqzNO3khRWsrrewp+lnYNsLSQ8aleO4Yd6fm1u1fx
 ckdRAOdr7ndmEJdQKhJ4RPMU2Zkt1C9CbKuSRV9ihZo7q3XSY+bs4zYOiNPFd8CotE/XBGJmO
 ACjsnp5om2Pt0diJhJDo7bmcFdOahvajKBMmSuwcOlnwzkcu69rlbIgJIJbs8h/LFYuuZjHdv
 LnWcuLRhRhtPzDJsgCy8Bt1Vt9xiAAHDQIqQHL5H3CA/VY7jgb0O94WkdufP90072uX+GedH7
 N9MecnlzzAcUxjVZVOEkOTrPqCgxH1H/Zk+z1iO+JYzvkdy4Fqz0XJLUquWXntubTTvhnyL3C
 3d8MkX/WQuyLt/sVYan3Z6DRS2gDFhlM9dLTvV48+dvdD/i6Mdgy/VFA0e42YLm1dWVu1Jpdg
 CMHoyzUFd3K3K9catRpQYo/9CEZL++//Bu1WLFtm3TTwsKNwTOqtA7dAttM8PCwPkWm0ECMnX
 J+kVcS2vRJFfN6taXWA+ftCM872/7r9VqJ0DPysd3MAZDa6udNG9i/nJ90lLe4Z+rChxO0iny
 NgF7UJo7Jz0d9u5ImF3DHeZldRtbIJfjS1z5aJiG414Z7G80cr1zQRpqMlJTbo3x4u/9GH6l2
 Xz9CjKo7m3qU4uHQHCmTprA4hG7gaCTGbM790O0slAX/2QQl+kAz/03bUDr5bXJVxdKw1qnjo
 1dwefW/iVVk57uZP4tw73AWexMzq8Zglca9NcIjo491x4NCEDVzsucZi0U79sn7xabFFqceda
 no+58vlKe2QhSzdLN8XC1wfkkDgcK6guG7Wz6ovDgW/TaME7lJHSVzocXJNpGRtoMyOzVsGx5
 m0L/Jk4Ywx0y4r1lWE7+mNttOLjc5I44vR+rnhiYnCHswl8gPqERrfhAP3z6dQqYjYGmvCno0
 m44vTX/zWSikmpcOUMNxxyD5NkaODhmWFAL6QVkKIK/Mv23kehHLay4pYoNlWeTLhJZcoB0gv
 0FcpbZWYHF/sSXItaZfnu4htugr/qReh4xC1w2XtSOfmCRgIP87CQsl4FhgjoCExvyjnhLlxc
 +ZjkflcXmr3/itNQJ/tYHLtHeXcAobTjWO35qLXGe5+Jl1DC0BT/byhqOWCFL8WEVildjOqmL
 /KM4LqlQHOoAXa7BEiKKRcLyZEfrCnyWD9EqCS9dskyoMMhS80M/X4b5Dc/x8lBSLtqLQhiBW
 4FIMnLOOXKER3n0cfA2dyQ3Ag11ux5MqvjFM9nRJTkdwTzROzKB7MRJaSZUZiLv4v0e6m6FXV
 qG5o16nPzet+IZ/jXLeEF6glK++93tgkWEFgfRzS+W/yvPmnCrYxHOk1iHSfwvrPqAZ99tH+B
 lNKeVzXRfqSITr/WnX6DtzLOtXrgvFwV+HaUidwlRIcFJWajqUYla694w8h6S06LhhbclzjE2
 WHqKNUPnrZ0kfP8xehkB1Q8Rrj5Qv6QnwJWqx90WXSZUG64SIybv252iWbOVLQ3pKjBe++Hzs
 RT7Gguid1aiGR7HslgprImDKaLrc+FcTz5Y7RuzAv8aqCLV3VN3VhgWuDp7FsE9IZq4N/7Xkw
 ggjPmd+iX0ohCQ/uNqCihOkCEGroY/tmABBUZnoFQNpWW+cKqPkmCX78c8O6Xldr8jI57eEss
 xifyc8evJCyZTRdXBMHPKF8pYBUKZbuVUOIjvjqE0BaQkPMsIQ309pcDZHC5ELXeo1E+7lITL
 abmxnvhnLpQ4kG7eaxnlaDF5fNZCbRo6CJw4izJ4zuVkODXogN0K9UC8OUvDs1G5t/aZmiBlQ
 RcDRZlSe4F5240hSSzPscDN02BatwZwzAa+omxm3pGiCj+jjXDrMNnCgFQEKIFjN1NzLwKir7
 E+byIWcIKyvsypSvnqHXLArGZlO+h3JdTj+27XcQ76yAGfAKnvCG0GDKj7zeE9/3bff67mtzl
 KhBlh3xqD5tfKMjOqOKnG6GxsXiHAwrVg0EP/2f4WKAxXASM7fi8XTWqyUkkyKFwhfgS+Q6Bz
 3O5yCl6uzva5/knk0AuSOoKEtzdwK9DxXCTuj3fJsAUiO55rm063qi7rTGJVghPJU/NNjhr0o
 HIZIXv6Z5tLK/v4F80ZdGHe+Lu2q9AWCqkCG5hJ+37e/KL9iwvrg+5/qmP/Vzwrt6Ubt2hQ9x
 63MOW2vEjboTkAo/QDCDasukMKt3SaCJqiYO2/HPt7jZFqgj1VNa5m/1vKPOFTcIHPvA2DoaD
 fcXi14gemtYSSPuAQ6JA3ODV8lKQgUiOUveHHe0kxV7sFuMqASgSvSjE0ykhGlMHpceYD4lIc
 GbpSHVKoCxHyZhRk4Z+IkLGF0T4uxG0mECefnCxsj6DRqn9hEg57adYSx3maiEA274a/ZO9fR
 j9Z03Kou20bnlTgQotWGd77ivr1kozC1m0fdM5jd6q1PyhAPTwlmPOgJCLv0MJk/LI4u4ohIy
 CnuxSSc0B0wrRoxFcMmswlgd10yqyYaQJjy9OhP0a2OZlxmXjgkgeO363DNqVAfCYe8v6b8+E
 CHJpisJJKFm6iW3WLNnMB05LinOzH/RLHePlLv1QocFk03Ph6o09CFisePhwUezGb4ar6ZlF7
 hIxFqB5hKeYPQWUdW1OouBiXIw9yMrMUjDV2G8kDzb4N7t6YxS8+xRaCWexYhZXuk7mUei9of
 iQohNf7hX0w5nForrexhWKKLoa2pZgqbgo2rK+BGL3BEwn9ETihxGQst9ZsNpwHDLG3TQTTOV
 cYrnsvOt3yXgMw+n13P0NULyI5NUQ+NO66yK2V/ann6zm2xNJZRTRsgPy/407p/CzeyJdFkUN
 rh9xiviUn809elgjSfFaXxFXXtctZ0oAcrimedkNCm86mDRnLS3Rf6QT2+xHcwvfaeE7/I0aV
 GnhcktuxFflWS3u9RrfGY9vO+3pxvjJn/t286o/i9m1c6wPJa06CFeK/j/O//lsIlG6mwhY8u
 9YWiKWoG17/CKAJpDqZcRraXYZWBZSiyQZ4lCB8sTkGxSaWkq7t9M3ZD/2wWHnLpWFlok5nja
 m43/kdBCSmCuFWaFVBmfROWCiON4MdAHwBaZWKuJzudQ2hgzFp/ALY/p0p8ihR0LC0osTqnGw
 4SvW7d5w+sXh/hIzuCHbe0rAbMxnBdZdD1tH8k1OWF1xesXhzYWl34Hiuo8chV6kLxC8VzUqw
 HKCB5PsWFNZZaGvemhJNIA1zuc3fkh5rChEAQLjQBSt6iOnkMfKHyIrP92CLmxGtE9WOx6NTP
 7jA6TZWXGh6icwp61YFh2Fgl8zT0HhIBCOvD+PyQJpU18B/sJCj7kskURgg2wcFpokQ2OfmUi
 F2XyzbbLa3sHSee6ZkDf/opQ==
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

Michael Albinus <> writes:

> James Thomas <> writes:
>
> Hi James,
>
>>>>>>> This is just a POC (as the littered FIXMEs testify) only to
>>>>>>> check
>>>>>>> feasibility - any flaw? And more of a fix for bug#61350 than
>>>>>>> this,
>>>>>>> so
>>>>>>> bear with me for the test:
>>>>>>>
>>>>>>> - M-x cd /dtach:<server having dtach>: RET
>>>>>>> - M-: (start-file-process "test" "test" "./test.sh") ([1] or
>>>>>>> maybe
>>>>>>> another long-running process)
>>>>>>> - C-x C-j
>>>>>>>
>>>>>>> With /ssh: it would block, but this works, with no visible
>>>>>>> defects
>>>>>>> in
>>>>>>> the async process, AFAICT.
>>>>>>>
>>>>>>> So I guess my question is: Does something like this - fully
>>>>>>> fleshed
>>>>>>> out - have a chance?
>
> Thanks for this. I've played a little bit with.
>
> First, it doesn't pass the Tramp tests. Try
>
> # env REMOTE_TEMPORARY_FILE_DIRECTORY=/dtach::/tmp make -C test tramp-tests.log
>
> Several tests have failed. Pls fix this so that I have a chance to
> check
> the code (and the timing) better.
>
> Some general remarks:
>
> - You have added a new Tramp method "dtach", bound to the Tramp method
>   "ssh". I believe this isn't sufficient, all Tramp methods which are
>   based on "ssh" mechanism shall be covered. This includes sll methods
>   with offer connection sharing, like "scp", "scpx", "rsync", "sshx",
>   "plink", "plinkx", "pscp", "psftp". Even better would be to support
>   *all* methods of the tramp-sh backend, but there might be technical
>   restrictions as you said.
>
>   Would it be possible to refrain from using a new method, and to
>   control using dtach by additional method parameters and/or global
>   settings?
>
> - Your approach modifies process sentinels (and it proposes to do so
> also
>   for process filters). What about other reasons for the forbidden
> Tramp
>   reentrant call? Timers, special events like D-Bus or file
>   notifications, you name it.
>
> Comments on the code:
>
>> +;; FIXME: Instead, couldn't it simply be local to the shell process
>> buffer (but is it guaranteed t.e. if starting with direct-async)? Or
>> turn into registry for unique ControlMaster sockets. Has for its
>> value the running async proc.
>> +(defvar tramp-to-dtach nil)
>> +(defvar tramp-just-dtached nil)
>
> Try to use process properties (or ephemeral connection properties) via
> tramp{-set|-get}-connection-property.
>
>> + ;; Copy of ssh. Separate so that one may run processes normally as
>> well, alongside.
>> + (add-to-list 'tramp-methods
>> +              `("dtach"
>> + (tramp-login-program "ssh")
>> + (tramp-login-args (("-l" "%u") ("-p" "%p")
>> + ;; FIXME: Work into the auto-detection instead.
>> + ("-o" "ControlPath=dtach-ControlPath-%%r@%%h:%%p")
>> + ("-o" "ControlMaster=auto")
>> + ("-o" "ControlPersist=yes")
>
> Why your own values? Wouldn't ("%c") be sufficient? Yes, Control*
> settings could be disabled, but you could ignore
> tramp-use-connection-share in tramp-ssh-or-plink-options when you
> detect
> a dtach-based connection.
>
>> - (when sentinel
>> - (set-process-sentinel p sentinel))
>> + (when (or sentinel dtachp)
>> + (set-process-sentinel
>> + p (if dtachp
>> + ;; So there ought to be no waits (sit-for
>> + ;; etc.) that might trigger this, in
>> + ;; tramp itself.
>> + (lambda (proc event)
>> + ;; TODO: Detect termination using tramp-just-dtached.
>> + (if (and (eq proc tramp-to-dtach)
>> + (string= event "finished\n"))
>> + ;; FIXME: Check if too soon.
>> + (with-current-buffer (process-buffer proc)
>> + ;; Renew.
>> + (tramp-sh-handle-make-process
>> + ;; Applications may use the same name eventhough the object
>> changes.
>> + :name (process-name proc)
>> + :buffer (process-buffer proc)
>> + :command
>> + '("sh" "-c" "cat /tmp/buf; dtach -a /tmp/fozzle; > /tmp/buf")
>> + :filter (process-filter proc))
>> + (setq tramp-just-dtached nil))
>> + (funcall (or sentinel #'internal-default-process-sentinel)
>> + proc event)))
>> + sentinel)))
>
> Does it mean you ignore sentinel in the dtach case?
>
>> + (catch 'uname-changed`
>
> Superfluous grave accent.
>
> Best regards, Michael.

Hi Michael,

I think we got off on the wrong foot... :-) That patch was only meant to
check the idea. Here's a better (but still proto-) version, also for
anyone interested to test if this technique is any good (so that I might
be forewarned if proceeding with detailing is not worth it):


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=better.patch
Content-Transfer-Encoding: quoted-printable

diff --git a/lisp/jsonrpc.el b/lisp/jsonrpc.el
index 6c969120926..001169f2c92 100644
=2D-- a/lisp/jsonrpc.el
+++ b/lisp/jsonrpc.el
@@ -547,7 +547,7 @@ initialize-instance
     (setf (jsonrpc--process conn) proc)
     (set-process-buffer proc (get-buffer-create (format " *%s output*" na=
me)))
     (set-process-filter proc #'jsonrpc--process-filter)
-    (set-process-sentinel proc #'jsonrpc--process-sentinel)
+    (set-process-sentinel-maybe-dtached proc #'jsonrpc--process-sentinel)
     (with-current-buffer (process-buffer proc)
       (buffer-disable-undo)
       (set-marker (process-mark proc) (point-min))
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 457c9cf6b0e..ff69e2b4a66 100644
=2D-- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -154,6 +154,10 @@ tramp-scp-force-scp-protocol
=20
 The string is used in `tramp-methods'.")
=20
+;; FIXME: Instead, couldn't it simply be local to the shell process buffe=
r (but is it guaranteed t.e. if starting with direct-async)? Or turn into =
registry for unique ControlMaster sockets. Has for its value the running a=
sync proc.
+(defvar tramp-to-dtach nil)
+(defvar tramp-just-dtached nil)
+
 (defcustom tramp-use-scp-direct-remote-copying nil
   "Whether to use direct copying between two remote hosts."
   :group 'tramp
@@ -3075,8 +3079,17 @@ tramp-sh-handle-make-process
 			(if heredoc
 			    (format "%s\n(\n%s\n) </dev/tty\n%s"
 				    program (car args) tramp-end-of-heredoc)
-			  (mapconcat #'tramp-shell-quote-argument
-				     (cons program args) " ")))))
+			  (let ((cmd (mapconcat #'tramp-shell-quote-argument
+				                (cons program args) " ")))
+                            ;; FIXME: Only one process accounted for.
+                            (when (and (eq tramp-use-connection-share 'dt=
ach) (not tramp-just-dtached))
+                              (setq cmd
+                                    (format
+                                     ;; FIXME: Generalize sh etc.
+                                     "dtach -c /tmp/fozzle sh -c \"%s > t=
ee /tmp/buf\"; > /tmp/buf"
+                                     ;; FIXME: Quote quotes.
+                                     cmd)))
+                            cmd)))))
 	     (tramp-process-connection-type
 	      (or (null program) tramp-process-connection-type))
 	     (bmp (and (buffer-live-p buffer) (buffer-modified-p buffer)))
@@ -3183,8 +3196,16 @@ tramp-sh-handle-make-process
 			     v 'file-error
 			     "pty association is not supported for `%s'" name))))
 		      ;; Set sentinel and filter.
-		      (when sentinel
-			(set-process-sentinel p sentinel))
+		      (when (or sentinel (eq tramp-use-connection-share 'dtach))
+			(set-process-sentinel
+                         p (if (eq tramp-use-connection-share 'dtach)
+                               (progn (process-put p 'dtach-sentinel
+                                                   (or sentinel #'interna=
l-default-process-sentinel))
+                                      ;; So there ought to be no waits
+                                      ;; (sit-for etc.) that might
+                                      ;; trigger this, in tramp itself.
+                                      #'tramp-dtached-process-sentinel)
+                             sentinel)))
 		      (when filter
 			(set-process-filter p filter))
 		      (process-put p 'remote-command orig-command)
@@ -4971,6 +4992,8 @@ tramp-ssh-or-plink-options
      (when (tramp-plink-option-exists-p vec "-legacy-stdio-prompts")
        " -legacy-stdio-prompts")))
=20
+   ((eq tramp-use-connection-share 'dtach)
+    "-o ControlPath=3Ddtach-ControlPath-%%r@%%h:%%p -o ControlMaster=3Dau=
to -o ControlPersist=3Dyes")
    ;; There is already a value to be used.
    ((and (eq tramp-use-connection-share t)
          (stringp tramp-ssh-controlmaster-options))
@@ -5210,6 +5233,11 @@ tramp-maybe-open-connection
       ;; New connection must be opened.
       (condition-case err
 	  (unless (process-live-p p)
+            (when
+                (and (eq tramp-use-connection-share 'dtach) tramp-to-dtac=
h
+                     (process-live-p tramp-to-dtach))
+              (process-send-string tramp-to-dtach "=1C")
+              (setq tramp-just-dtached t))
 	    (catch 'uname-changed
 	      ;; Start new process.
 	      (when (and p (processp p))
@@ -5355,6 +5383,7 @@ tramp-maybe-open-connection
=20
 		    ;; Send the command.
 		    (with-tramp-progress-reporter
+                        ;; (if (and (eq tramp-use-connection-share 'dtach=
) tramp-just-dtached) 4 3)
 			vec 3
 			(format "Opening connection%s for %s%s using %s"
 				(if (tramp-string-empty-or-nil-p process-name)
@@ -6140,6 +6169,53 @@ tramp-get-inline-coding
 	 (t
 	  (format "%s <%%s" coding)))))))
=20
+;;; 'dtach' method interface.
+
+(defun tramp-dtached-process-sentinel (proc event)
+  (if (and (eq proc tramp-to-dtach)
+           (string=3D event "finished\n")
+           ;; Reset, just in case it's termination.
+           (always (setq tramp-to-dtach nil))
+           tramp-just-dtached)
+      (let ((default-directory
+             (tramp-make-tramp-file-name
+              (process-get proc 'tramp-vector))))
+        (setq
+         tramp-to-dtach=20
+         ;; Renew.
+         (tramp-sh-handle-make-process
+          ;; Applications may use the same name eventhough the object
+          ;; changes.
+          :name (process-name proc)
+          :buffer (process-buffer proc)
+          :command
+          '("sh" "-c" "cat /tmp/buf; dtach -a /tmp/fozzle; > /tmp/buf")
+          :filter (process-filter proc)
+          :coding (process-coding-system proc)
+          :connection-type (process-type proc)
+          :noquery (process-query-on-exit-flag proc)))
+        (set-process-plist tramp-to-dtach (process-plist proc))
+        (setq tramp-just-dtached nil))
+    (funcall (process-get proc 'dtach-sentinel)
+             proc event)))
+
+(defun possibly-dtached-process (process)
+  "Returns the renewed PROCESS object (if any) in favour of it, if it's '=
dtach'-ed."
+  (get-process (process-name process)))
+
+(defun process-sentinel-maybe-dtached (process)
+  "Like 'process-sentinel' but also considers the custom sentinel of tram=
p's 'dtach' method."
+  (let ((sentinel (process-get process 'dtach-sentinel)))
+    (if sentinel
+        (and (not (eq sentinel #'internal-default-process-sentinel)) sent=
inel)
+      (process-sentinel process))))
+
+(defun set-process-sentinel-maybe-dtached (process sentinel)
+  "Like 'set-process-sentinel' but also considers the custom sentinel of =
tramp's 'dtach' method."
+  (if (process-get process 'dtach-sentinel)
+      (process-put p 'dtach-sentinel sentinel)
+    (set-process-sentinel process sentinel)))
+
 (add-hook 'tramp-unload-hook
 	  (lambda ()
 	    (unload-feature 'tramp-sh 'force)))

--=-=-=
Content-Type: text/plain


(The 'interface' part is just a proposal) Btw it will also need:

(advice-add 'jsonrpc--process :filter-return #'possibly-dtached-process)
(setq tramp-use-connection-share 'dtach)

C-x C-f /ssh:<server with dtach & lsp>:~/path/to/file.c RET
M-x eglot RET

But I think an explanation of how it works AISI would suffice to easily
reject it and stop my bothering:

Tramp handlers won't recursively call themselves, but a filter borne of
the async process's accept-...-output might. In which case it leads to
Forbidden if the _shell_ is already running something else. In this
patch, a shell is never left open: it's always reused to reattach
(renew) the async process, and every handler call is a new connection
which detaches the current (first) running async process. Also, the
custom sentinel, which runs on general waiting, is what does the
reattachment. ControlMaster causes the newly spawned ssh process to wait
until the earlier one has exited - after detaching.

IOW, ssh ControlMaster handles concurrency locally and dtach remotely.

(I will surely look into the tests)

> Superfluous grave accent.

I imagine you using this anyway... ;-)

WDYT?

--

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 24 Jan 2026 10:36:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 24 05:36:25 2026
Received: from localhost ([127.0.0.1]:52197 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vjb0D-0007lZ-8P
	for submit <at> debbugs.gnu.org; Sat, 24 Jan 2026 05:36:25 -0500
Received: from mout.gmx.net ([212.227.17.22]:33887)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1vjb06-0007ko-PD
 for 60534 <at> debbugs.gnu.org; Sat, 24 Jan 2026 05:36:20 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1769250972; x=1769855772; i=michael.albinus@HIDDEN;
 bh=i9dzaFUPzFtKYzDoaO2EGe5i0NRKfdSMr/CKu1f7eHg=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=U/YOstdTjMiBk56hwVoGLL0louBVB/nj1Jic4sF1LbvkzpbTq1pNceCoveW2SFZ9
 ctXp0oDUYjlSkVQDrtJZwOyEFtZbQP1IzTIe/3xZY0oqcgD5EBhdyDGBbpqv/BhZ4
 x0wGEoArzmO6tJtUg2cbNGshXLMNYM9stM+1IsatcpkxjDG7Y/aortDzlhLdg7dpJ
 AbIL0IHjGOjHNdvESniOPfALProuJESCHsEJUJ7tsvI2M7CxJQhuXg1mhbn8GUb7T
 b4rKmj3+OSbaUzkl0wnPLjsCWQ3QfXGBgiYhZALOaHzXHchU1t9XC07CrGZY24dU+
 ju80e57dRi/VAvPugA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.12]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MvsEx-1w0rGd1tOZ-00xGsj; Sat, 24
 Jan 2026 11:36:12 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s48ldht7z1n.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
 <87tswku1d6.fsf@HIDDEN> <s48wm1ekrsc.fsf@HIDDEN>
 <s48pl7597ct.fsf@HIDDEN> <s48ldht7z1n.fsf@HIDDEN>
Date: Sat, 24 Jan 2026 11:36:11 +0100
Message-ID: <878qdnxppg.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:+8Y7SwusPTAdkUVJlnDMizsckTV62xR9ZHkY65SlEfbq6X+BYVP
 LHPVPznBuzkVmMRkv9ElpWBRq9n2wVsJF7c0hp4N6oAZHDqZDrG0G9sVB7wloIOhjTpk+E2
 mYjgxMq+dOErzS4iJ2yzQXdVV8riKSt5D4oUFySF6zLCdsM5EPsGTMTQNIT05JlF/pHgUu5
 XEBm2+pBvxaVsw5b88qPw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:fcvH3YZUUlE=;F9DUmJZb96GSDFWH8PI/iVPZ+AB
 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
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

>>>>>> This is just a POC (as the littered FIXMEs testify) only to check
>>>>>> feasibility - any flaw? And more of a fix for bug#61350 than
>>>>>> this,
>>>>>> so
>>>>>> bear with me for the test:
>>>>>>
>>>>>> - M-x cd /dtach:<server having dtach>: RET
>>>>>> - M-: (start-file-process "test" "test" "./test.sh") ([1] or
>>>>>> maybe
>>>>>> another long-running process)
>>>>>> - C-x C-j
>>>>>>
>>>>>> With /ssh: it would block, but this works, with no visible
>>>>>> defects
>>>>>> in
>>>>>> the async process, AFAICT.
>>>>>>
>>>>>> So I guess my question is: Does something like this - fully
>>>>>> fleshed
>>>>>> out - have a chance?

Thanks for this. I've played a little bit with.

First, it doesn't pass the Tramp tests. Try

--8<---------------cut here---------------start------------->8---
# env REMOTE_TEMPORARY_FILE_DIRECTORY=/dtach::/tmp make -C test tramp-tests.log
--8<---------------cut here---------------end--------------->8---

Several tests have failed. Pls fix this so that I have a chance to check
the code (and the timing) better.

Some general remarks:

- You have added a new Tramp method "dtach", bound to the Tramp method
  "ssh". I believe this isn't sufficient, all Tramp methods which are
  based on "ssh" mechanism shall be covered. This includes sll methods
  with offer connection sharing, like "scp", "scpx", "rsync", "sshx",
  "plink", "plinkx", "pscp", "psftp". Even better would be to support
  *all* methods of the tramp-sh backend, but there might be technical
  restrictions as you said.

  Would it be possible to refrain from using a new method, and to
  control using dtach by additional method parameters and/or global
  settings?

- Your approach modifies process sentinels (and it proposes to do so also
  for process filters). What about other reasons for the forbidden Tramp
  reentrant call? Timers, special events like D-Bus or file
  notifications, you name it.

Comments on the code:

> +;; FIXME: Instead, couldn't it simply be local to the shell process buffer (but is it guaranteed t.e. if starting with direct-async)? Or turn into registry for unique ControlMaster sockets. Has for its value the running async proc.
> +(defvar tramp-to-dtach nil)
> +(defvar tramp-just-dtached nil)

Try to use process properties (or ephemeral connection properties) via
tramp{-set|-get}-connection-property.

> + ;; Copy of ssh. Separate so that one may run processes normally as well, alongside.
> + (add-to-list 'tramp-methods
> +              `("dtach"
> +                (tramp-login-program        "ssh")
> +                (tramp-login-args           (("-l" "%u") ("-p" "%p")
> +                                             ;; FIXME: Work into the auto-detection instead.
> +                                             ("-o" "ControlPath=dtach-ControlPath-%%r@%%h:%%p")
> +                                             ("-o" "ControlMaster=auto")
> +                                             ("-o" "ControlPersist=yes")

Why your own values? Wouldn't ("%c") be sufficient? Yes, Control*
settings could be disabled, but you could ignore
tramp-use-connection-share in tramp-ssh-or-plink-options when you detect
a dtach-based connection.

> -		      (when sentinel
> -			(set-process-sentinel p sentinel))
> +		      (when (or sentinel dtachp)
> +			(set-process-sentinel
> +                         p (if dtachp
> +                               ;; So there ought to be no waits (sit-for
> +                               ;; etc.) that might trigger this, in
> +                               ;; tramp itself.
> +                               (lambda (proc event)
> +                                 ;; TODO: Detect termination using tramp-just-dtached.
> +                                 (if (and (eq proc tramp-to-dtach)
> +                                          (string= event "finished\n"))
> +                                     ;; FIXME: Check if too soon.
> +                                     (with-current-buffer (process-buffer proc)
> +                                       ;; Renew.
> +                                       (tramp-sh-handle-make-process
> +                                        ;; Applications may use the same name eventhough the object changes.
> +                                        :name (process-name proc)
> +                                        :buffer (process-buffer proc)
> +                                        :command
> +                                        '("sh" "-c" "cat /tmp/buf; dtach -a /tmp/fozzle; > /tmp/buf")
> +                                        :filter (process-filter proc))
> +                                       (setq tramp-just-dtached nil))
> +                                   (funcall (or sentinel #'internal-default-process-sentinel)
> +                                            proc event)))
> +                             sentinel)))

Does it mean you ignore sentinel in the dtach case?

> +	    (catch 'uname-changed`

Superfluous grave accent.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 20 Jan 2026 03:17:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 19 22:17:58 2026
Received: from localhost ([127.0.0.1]:55766 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vi2Fi-0000NK-1C
	for submit <at> debbugs.gnu.org; Mon, 19 Jan 2026 22:17:58 -0500
Received: from mout.gmx.net ([212.227.15.15]:43361)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vi2Ff-0000N6-5g
 for 60534 <at> debbugs.gnu.org; Mon, 19 Jan 2026 22:17:56 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1768879068; x=1769483868; i=jimjoe@HIDDEN;
 bh=4lV/2PgozkvMlLg+oMvKgMEq049RBqBOul37REjrKF0=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=hfTn9dbv0EoG1gbkNQAkWAZxTFXpg2eHLTBMx7aaF04+fkJGqDEOdaB/6VXZLpjU
 h8Gs39py4/ayyc/6TnrD8xUnP1givl/MagiwUZsVD3UJUa9FTSb0GvjEHd16TOXQ/
 nsdk681qbIX/5jYF7hYiZ5wR+NchFhv2eiS74ws0S8tO2ziSlx2WNDQ7iZWy+ScGq
 YZHhsDTI2jYrL3yoCqfEaBWPqS34opoQIaDjYXzY+Ejh/1cm5LjAGDQyHSdI0alBx
 oiXA50S5S9Vbp1lWkPGS4dtZH0g5x1ITGLBk0ggMTunNzPwuDmQ08WYke3wlGI994
 cgGhPIS/0vzoPmNjHw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.28.113]) by mail.gmx.net (mrgmx005
 [212.227.17.184]) with ESMTPSA (Nemesis) id 1M5fMe-1vjfs02z50-001mfw; Tue, 20
 Jan 2026 04:17:48 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s48pl7597ct.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
 <87tswku1d6.fsf@HIDDEN> <s48wm1ekrsc.fsf@HIDDEN>
 <s48pl7597ct.fsf@HIDDEN>
Date: Tue, 20 Jan 2026 08:47:40 +0530
Message-ID: <s48ldht7z1n.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Provags-ID: V03:K1:xTxSQb63BCMjxDJVkH+DhlW9RE2PaKlkiCoKWNtgA3GrOgBISbb
 SnsDPPOUTZ0Yd0xSNWMo1lyny8/m/mSabCg9J6/3ujHZ9K24Ls6H3pUe/xmZchDcEMNSFVU
 o0GIdhWVcgsbdHxPoDkbE7t7PC/L5H4kQGKjZns1NP73Vy/B/7UnpF7swML+AihGgpkV6R3
 C5zcBfibK3+S/q1GjsJLA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:1SQ/VRRh45E=;ETY37wVdgtACwxPVqNwUYp3zTY1
 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
 yntrlZqhwXy
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

James Thomas <> writes:

> James Thomas <> writes:
>
>> Michael Albinus <> writes:
>>
>>> James Thomas <> writes:
>>>
>>> Hi James,
>>>
>>>>> This is just a POC (as the littered FIXMEs testify) only to check
>>>>> feasibility - any flaw? And more of a fix for bug#61350 than
>>>>> this,
>>>>> so
>>>>> bear with me for the test:
>>>>>
>>>>> - M-x cd /dtach:<server having dtach>: RET
>>>>> - M-: (start-file-process "test" "test" "./test.sh") ([1] or
>>>>> maybe
>>>>> another long-running process)
>>>>> - C-x C-j
>>>>>
>>>>> With /ssh: it would block, but this works, with no visible
>>>>> defects
>>>>> in
>>>>> the async process, AFAICT.
>>>>>
>>>>> So I guess my question is: Does something like this - fully
>>>>> fleshed
>>>>> out - have a chance?
>>>>
>>>> This has a few (seemingly not critical) mistakes. Let me send an
>>>> updated
>>>> one.
>>>
>>> No problem, take your time. I didn't start yet to analyze in
>>> detail.
>>>
>>> Perhaps this: while scanning the patch shortly, my first impulse
>>> was:
>>> why an own method? This restricts the approach to just the ssh
>>> method. Wouldn't it be better, to add it (controlled by method
>>> parameters, for example) to any method of tramp-sh.el?
>>
>> That was my intention as well, but I didn't want to complicate
>> things
>> for a POC.
>>
>>> My experience from zillions of Tramp regression tests is, that the
>>> problems happens more frequently for the sudo method but ssh.
>>
>> This won't work there because it very much _uses_ the ControlPersist
>> and
>> ControlMaster to achieve the async.
>>
>> But what I really wanted to know was what you think of the
>> approach. The
>> main problem with what I gave already is that it accidentally
>> layered
>> two dtach calls in the 'renewal'. But the test should still work.
>>
>> (That and the fact that I'm not sure of the extra efficiency eked
>> out
>> of
>> using eq for the common string comparison)
>>
>> But I think I'll send in a proper patch now anyway...
>
> (I might be called away, so) here's an updated POC:
>
>
>
> Test similarly.

Some cobwebs cleared:


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=tramp-test3.patch
Content-Transfer-Encoding: quoted-printable

diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 457c9cf6b0e..b1cdd1e89b6 100644
=2D-- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -154,6 +154,10 @@ tramp-scp-force-scp-protocol
=20
 The string is used in `tramp-methods'.")
=20
+;; FIXME: Instead, couldn't it simply be local to the shell process buffe=
r (but is it guaranteed t.e. if starting with direct-async)? Or turn into =
registry for unique ControlMaster sockets. Has for its value the running a=
sync proc.
+(defvar tramp-to-dtach nil)
+(defvar tramp-just-dtached nil)
+
 (defcustom tramp-use-scp-direct-remote-copying nil
   "Whether to use direct copying between two remote hosts."
   :group 'tramp
@@ -284,6 +288,24 @@ tramp-use-scp-direct-remote-copying
                 (tramp-remote-shell         ,tramp-default-remote-shell)
                 (tramp-remote-shell-login   ("-l"))
                 (tramp-remote-shell-args    ("-c"))))
+ ;; Copy of ssh. Separate so that one may run processes normally as well,=
 alongside.
+ (add-to-list 'tramp-methods
+              `("dtach"
+                (tramp-login-program        "ssh")
+                (tramp-login-args           (("-l" "%u") ("-p" "%p")
+                                             ;; FIXME: Work into the auto=
-detection instead.
+                                             ("-o" "ControlPath=3Ddtach-C=
ontrolPath-%%r@%%h:%%p")
+                                             ("-o" "ControlMaster=3Dauto"=
)
+                                             ("-o" "ControlPersist=3Dyes"=
)
+				             ("-e" "none")
+				             ("-o" ,(format "SetEnv=3D\"TERM=3D%s\""
+							    tramp-terminal-type))
+					     ("%h")))
+                (tramp-async-args           (("-q")))
+                (tramp-direct-async         ("-t" "-t"))
+                (tramp-remote-shell         ,tramp-default-remote-shell)
+                (tramp-remote-shell-login   ("-l"))
+                (tramp-remote-shell-args    ("-c"))))
  (add-to-list 'tramp-methods
               `("telnet"
                 (tramp-login-program        "telnet")
@@ -3059,6 +3081,7 @@ tramp-sh-handle-make-process
 			  (setq uenv (cons elt uenv))))))
 	     (env (setenv-internal
 		   env "INSIDE_EMACS" (tramp-inside-emacs) 'keep))
+             (dtachp (string=3D (tramp-file-name-method v) "dtach"))
 	     (command
 	      (when (stringp program)
 		(format "cd %s && %s exec %s %s env %s %s"
@@ -3075,8 +3098,16 @@ tramp-sh-handle-make-process
 			(if heredoc
 			    (format "%s\n(\n%s\n) </dev/tty\n%s"
 				    program (car args) tramp-end-of-heredoc)
-			  (mapconcat #'tramp-shell-quote-argument
-				     (cons program args) " ")))))
+			  (let ((cmd (mapconcat #'tramp-shell-quote-argument
+				                (cons program args) " ")))
+                            ;; FIXME: Only one process accounted for.
+                            (when (and dtachp (not tramp-just-dtached))
+                              (setq cmd
+                                    (format
+                                     ;; FIXME: Generalize sh etc.
+                                     "dtach -c /tmp/fozzle sh -c \"%s | t=
ee /tmp/buf\"; > /tmp/buf"
+                                     ;; FIXME: Quote quotes.
+                                     cmd))))))))
 	     (tramp-process-connection-type
 	      (or (null program) tramp-process-connection-type))
 	     (bmp (and (buffer-live-p buffer) (buffer-modified-p buffer)))
@@ -3183,9 +3214,32 @@ tramp-sh-handle-make-process
 			     v 'file-error
 			     "pty association is not supported for `%s'" name))))
 		      ;; Set sentinel and filter.
-		      (when sentinel
-			(set-process-sentinel p sentinel))
+		      (when (or sentinel dtachp)
+			(set-process-sentinel
+                         p (if dtachp
+                               ;; So there ought to be no waits (sit-for
+                               ;; etc.) that might trigger this, in
+                               ;; tramp itself.
+                               (lambda (proc event)
+                                 ;; TODO: Detect termination using tramp-=
just-dtached.
+                                 (if (and (eq proc tramp-to-dtach)
+                                          (string=3D event "finished\n"))
+                                     ;; FIXME: Check if too soon.
+                                     (with-current-buffer (process-buffer=
 proc)
+                                       ;; Renew.
+                                       (tramp-sh-handle-make-process
+                                        ;; Applications may use the same =
name eventhough the object changes.
+                                        :name (process-name proc)
+                                        :buffer (process-buffer proc)
+                                        :command
+                                        '("sh" "-c" "cat /tmp/buf; dtach =
-a /tmp/fozzle; > /tmp/buf")
+                                        :filter (process-filter proc))
+                                       (setq tramp-just-dtached nil))
+                                   (funcall (or sentinel #'internal-defau=
lt-process-sentinel)
+                                            proc event)))
+                             sentinel)))
 		      (when filter
+                        ;; FIXME: similar to sentinel. Have an interface =
such as :dtach-filter to make-process?
 			(set-process-filter p filter))
 		      (process-put p 'remote-command orig-command)
 		      ;; Set query flag and process marker for this
@@ -3209,6 +3263,7 @@ tramp-sh-handle-make-process
 			     (delete-process (get-buffer-process stderr)))
 			   (ignore-errors
 			     (delete-file remote-tmpstderr)))))
+                      (when dtachp (setq tramp-to-dtach p))
 		      ;; Return process.
 		      p)))
=20
@@ -5173,7 +5228,8 @@ tramp-maybe-open-connection
     (let ((p (tramp-get-connection-process vec))
 	  (process-name (tramp-get-connection-property vec " process-name"))
 	  (process-environment (copy-sequence process-environment))
-	  (pos (with-current-buffer (tramp-get-connection-buffer vec) (point))))
+	  (pos (with-current-buffer (tramp-get-connection-buffer vec) (point)))
+          (dtachp (string=3D (tramp-file-name-method vec) "dtach")))
=20
       ;; If Tramp opens the same connection within a short time frame,
       ;; there is a problem.  We shall signal this.
@@ -5210,7 +5266,12 @@ tramp-maybe-open-connection
       ;; New connection must be opened.
       (condition-case err
 	  (unless (process-live-p p)
-	    (catch 'uname-changed
+            (when
+                (and dtachp tramp-to-dtach)
+              ;; FIXME: Check if alive.
+              (process-send-string tramp-to-dtach "=1C")
+              (setq tramp-just-dtached t))
+	    (catch 'uname-changed`
 	      ;; Start new process.
 	      (when (and p (processp p))
 		(delete-process p))

--=-=-=
Content-Type: text/plain


>>>>> - M-: (start-file-process "test" "test" "./test.sh")

Btw 'M-& ./test.sh' is enough.

--

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 19 Jan 2026 11:21:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 19 06:21:17 2026
Received: from localhost ([127.0.0.1]:41329 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vhnJs-0003eg-Dd
	for submit <at> debbugs.gnu.org; Mon, 19 Jan 2026 06:21:17 -0500
Received: from mout.gmx.net ([212.227.15.19]:34307)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vhnJn-0003e7-8M
 for 60534 <at> debbugs.gnu.org; Mon, 19 Jan 2026 06:21:14 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1768821664; x=1769426464; i=jimjoe@HIDDEN;
 bh=g879R7nCw9Z5IyeHrU31bBb8kkXcARQ217vCmCQ4h4c=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=GZC+OKVsG2aZqMa+MLOBVXe4vsQ3R/W76twd1/qKMAaor45o3PiJB7eLHacDqJNu
 SvgzlDQK/h0QS2bpOouzIZUjmACSApqiL+WJXfNzgqDVdfGzpp9FMNbzMhJVhgpeX
 a74lcK22DsB9CEf+Be7KfjQaABSH3mGEmNy1toB16ZT8VpYdSBhGBurg87rG2/WE/
 VxPp7spOWqsXA6+u9E6H1I4N507g0dI/OqoYqI8c5xytXutZoaVfLlVKT2MQoSY1h
 dqLKIvP6H78RsMRn4YCLJZCkYlL6VhPq2BYE1J398u4/m57zZiM7Fv5jXS+YIMCqW
 2Xz4kh6oD+sBaiSQZw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.28.1]) by mail.gmx.net (mrgmx005
 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MQv8n-1vTGzw2xlP-00KfsO; Mon, 19
 Jan 2026 12:21:04 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s48wm1ekrsc.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
 <87tswku1d6.fsf@HIDDEN> <s48wm1ekrsc.fsf@HIDDEN>
Date: Mon, 19 Jan 2026 16:50:34 +0530
Message-ID: <s48pl7597ct.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Provags-ID: V03:K1:2FWEvlklsA9JGP7PTw5iNzQVKp3Vlqs5HAYsC1iyZy0HugLwn++
 kgAKenC/MCy0SrJcIAeoZz79ZzXdBJUdmqUcPft4HKcjkV2A4WMrtSEkF+13Lp9s/fhRZXm
 NeCewhBgFwflZqsINkua7mdSivG/xTLTSohrF1vPGtX6FyzCXAKP/PbUuJGsO53dtw/AT30
 ktinIfpGjMbhNAooNA4Eg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:ZJK/eF1hejw=;koYcGx2sxy3kKwa8QGvsqWuBsOA
 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
 v809r7CxVLc
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

James Thomas <> writes:

> Michael Albinus <> writes:
>
>> James Thomas <> writes:
>>
>> Hi James,
>>
>>>> This is just a POC (as the littered FIXMEs testify) only to check
>>>> feasibility - any flaw? And more of a fix for bug#61350 than this,
>>>> so
>>>> bear with me for the test:
>>>>
>>>> - M-x cd /dtach:<server having dtach>: RET
>>>> - M-: (start-file-process "test" "test" "./test.sh") ([1] or maybe
>>>> another long-running process)
>>>> - C-x C-j
>>>>
>>>> With /ssh: it would block, but this works, with no visible defects
>>>> in
>>>> the async process, AFAICT.
>>>>
>>>> So I guess my question is: Does something like this - fully
>>>> fleshed
>>>> out - have a chance?
>>>
>>> This has a few (seemingly not critical) mistakes. Let me send an
>>> updated
>>> one.
>>
>> No problem, take your time. I didn't start yet to analyze in detail.
>>
>> Perhaps this: while scanning the patch shortly, my first impulse
>> was:
>> why an own method? This restricts the approach to just the ssh
>> method. Wouldn't it be better, to add it (controlled by method
>> parameters, for example) to any method of tramp-sh.el?
>
> That was my intention as well, but I didn't want to complicate things
> for a POC.
>
>> My experience from zillions of Tramp regression tests is, that the
>> problems happens more frequently for the sudo method but ssh.
>
> This won't work there because it very much _uses_ the ControlPersist
> and
> ControlMaster to achieve the async.
>
> But what I really wanted to know was what you think of the
> approach. The
> main problem with what I gave already is that it accidentally layered
> two dtach calls in the 'renewal'. But the test should still work.
>
> (That and the fact that I'm not sure of the extra efficiency eked out
> of
> using eq for the common string comparison)
>
> But I think I'll send in a proper patch now anyway...

(I might be called away, so) here's an updated POC:


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=tramp-test2.patch
Content-Transfer-Encoding: quoted-printable

diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 457c9cf6b0e..dc5b225ada0 100644
=2D-- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -154,6 +154,10 @@ tramp-scp-force-scp-protocol
=20
 The string is used in `tramp-methods'.")
=20
+;; FIXME: Instead, couldn't it simply be local to the shell process buffe=
r (but is it guaranteed t.e. if starting with direct-async)? Or turn into =
registry for unique ControlMaster sockets. Has for its value the running a=
sync proc.
+(defvar tramp-to-dtach nil)
+(defvar tramp-just-dtached nil)
+
 (defcustom tramp-use-scp-direct-remote-copying nil
   "Whether to use direct copying between two remote hosts."
   :group 'tramp
@@ -284,6 +288,24 @@ tramp-use-scp-direct-remote-copying
                 (tramp-remote-shell         ,tramp-default-remote-shell)
                 (tramp-remote-shell-login   ("-l"))
                 (tramp-remote-shell-args    ("-c"))))
+ ;; Copy of ssh. Separate so that one may run processes normally as well,=
 alongside.
+ (add-to-list 'tramp-methods
+              `("dtach"
+                (tramp-login-program        "ssh")
+                (tramp-login-args           (("-l" "%u") ("-p" "%p")
+                                             ;; FIXME: Work into the auto=
-detection instead.
+                                             ("-o" "ControlPath=3Ddtach-C=
ontrolPath-%%r@%%h:%%p")
+                                             ("-o" "ControlMaster=3Dauto"=
)
+                                             ("-o" "ControlPersist=3Dyes"=
)
+				             ("-e" "none")
+				             ("-o" ,(format "SetEnv=3D\"TERM=3D%s\""
+							    tramp-terminal-type))
+					     ("%h")))
+                (tramp-async-args           (("-q")))
+                (tramp-direct-async         ("-t" "-t"))
+                (tramp-remote-shell         ,tramp-default-remote-shell)
+                (tramp-remote-shell-login   ("-l"))
+                (tramp-remote-shell-args    ("-c"))))
  (add-to-list 'tramp-methods
               `("telnet"
                 (tramp-login-program        "telnet")
@@ -3059,6 +3081,7 @@ tramp-sh-handle-make-process
 			  (setq uenv (cons elt uenv))))))
 	     (env (setenv-internal
 		   env "INSIDE_EMACS" (tramp-inside-emacs) 'keep))
+             (dtachp (string=3D (tramp-file-name-method v) "dtach"))
 	     (command
 	      (when (stringp program)
 		(format "cd %s && %s exec %s %s env %s %s"
@@ -3075,8 +3098,16 @@ tramp-sh-handle-make-process
 			(if heredoc
 			    (format "%s\n(\n%s\n) </dev/tty\n%s"
 				    program (car args) tramp-end-of-heredoc)
-			  (mapconcat #'tramp-shell-quote-argument
-				     (cons program args) " ")))))
+			  (let ((cmd (mapconcat #'tramp-shell-quote-argument
+				                (cons program args) " ")))
+                            ;; FIXME: Only one process accounted for.
+                            (when (and dtachp (not tramp-just-dtached))
+                              (setq cmd
+                                    (format
+                                     ;; FIXME: Generalize sh etc.
+                                     "dtach -c /tmp/fozzle sh -c \"%s | t=
ee /tmp/buf\"; > /tmp/buf"
+                                     ;; FIXME: Quote quotes.
+                                     cmd))))))))
 	     (tramp-process-connection-type
 	      (or (null program) tramp-process-connection-type))
 	     (bmp (and (buffer-live-p buffer) (buffer-modified-p buffer)))
@@ -3174,6 +3205,7 @@ tramp-sh-handle-make-process
 			(delete-region mark (point-max))
 			(narrow-to-region (point-max) (point-max))
 			;; Now do it.
+                        (message "Debug: %s" command)
 			(if command
 			    ;; Send the command.
 			    (tramp-send-command v command nil t) ; nooutput
@@ -3183,9 +3215,33 @@ tramp-sh-handle-make-process
 			     v 'file-error
 			     "pty association is not supported for `%s'" name))))
 		      ;; Set sentinel and filter.
-		      (when sentinel
-			(set-process-sentinel p sentinel))
+		      (when (or sentinel dtachp)
+			(set-process-sentinel
+                         p (if dtachp
+                               ;; So there ought to be no waits (sit-for
+                               ;; etc.) that might trigger this, in
+                               ;; tramp itself.
+                               (lambda (proc event)
+                                 (message "Debug: %s %s" proc event)
+                                 ;; TODO: Detect termination using tramp-=
just-dtached.
+                                 (if (and (eq proc tramp-to-dtach)
+                                          (string=3D event "finished\n"))
+                                     ;; FIXME: Check if too soon.
+                                     (with-current-buffer (process-buffer=
 proc)
+                                       ;; Renew.
+                                       (tramp-sh-handle-make-process
+                                        ;; Applications may use the same =
name eventhough the object changes.
+                                        :name (process-name proc)
+                                        :buffer (process-buffer proc)
+                                        :command
+                                        '("sh" "-c" "cat /tmp/buf; sh -c =
\"dtach -a /tmp/fozzle; > /tmp/buf\"")
+                                        :filter (process-filter proc))
+                                       (setq tramp-just-dtached nil))
+                                   (funcall (or sentinel #'internal-defau=
lt-process-sentinel)
+                                            proc event)))
+                             sentinel)))
 		      (when filter
+                        ;; FIXME: similar to sentinel. Have an interface =
such as :dtach-filter to make-process?
 			(set-process-filter p filter))
 		      (process-put p 'remote-command orig-command)
 		      ;; Set query flag and process marker for this
@@ -3209,6 +3265,7 @@ tramp-sh-handle-make-process
 			     (delete-process (get-buffer-process stderr)))
 			   (ignore-errors
 			     (delete-file remote-tmpstderr)))))
+                      (when dtachp (setq tramp-to-dtach p))
 		      ;; Return process.
 		      p)))
=20
@@ -5173,7 +5230,8 @@ tramp-maybe-open-connection
     (let ((p (tramp-get-connection-process vec))
 	  (process-name (tramp-get-connection-property vec " process-name"))
 	  (process-environment (copy-sequence process-environment))
-	  (pos (with-current-buffer (tramp-get-connection-buffer vec) (point))))
+	  (pos (with-current-buffer (tramp-get-connection-buffer vec) (point)))
+          (dtachp (string=3D (tramp-file-name-method vec) "dtach")))
=20
       ;; If Tramp opens the same connection within a short time frame,
       ;; there is a problem.  We shall signal this.
@@ -5210,7 +5268,12 @@ tramp-maybe-open-connection
       ;; New connection must be opened.
       (condition-case err
 	  (unless (process-live-p p)
-	    (catch 'uname-changed
+            (when
+                (and dtachp tramp-to-dtach)
+              ;; FIXME: Check if alive.
+              (process-send-string tramp-to-dtach "=1C")
+              (setq tramp-just-dtached t))
+	    (catch 'uname-changed`
 	      ;; Start new process.
 	      (when (and p (processp p))
 		(delete-process p))
@@ -5362,6 +5425,7 @@ tramp-maybe-open-connection
 				(if (tramp-string-empty-or-nil-p l-user)
 				    "" (concat l-user "@"))
 				(tramp-file-name-host-port hop) l-method)
+                      ;; FIXME: Also run the (single) dtached shell (or s=
tart it up, if -to-dtach is nil or dead), but is the saved overhead beyond=
 direct-async worth it?
 		      (tramp-send-command vec command t t)
 		      (tramp-process-actions
 		       p vec

--=-=-=
Content-Type: text/plain


Test similarly.

--


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 19 Jan 2026 07:04:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 19 02:04:27 2026
Received: from localhost ([127.0.0.1]:37253 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vhjJL-0006gP-IF
	for submit <at> debbugs.gnu.org; Mon, 19 Jan 2026 02:04:27 -0500
Received: from mout.gmx.net ([212.227.17.21]:60997)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vhjJI-0006g6-FI
 for 60534 <at> debbugs.gnu.org; Mon, 19 Jan 2026 02:04:25 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1768806258; x=1769411058; i=jimjoe@HIDDEN;
 bh=+z8A9b+2vpyrM9A8cc8dsV6/AxVRiYBMccPjh/HhbbY=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=QdevjBiOuqy0WuCjDF8CP3mXPumVNZs4Cqg9atrxuJZcfWTdKj1uC5gHkTsLM6uj
 BIIUbViiY4qScrhMDERFFVm11nUEhPmgUKO0p5lR33gN+/uMztlAimbYnixiegTyr
 8XLTDyl0W5UtbieklcZX3KAv8WBKkVCI76vKyzZDA9OkzcNWfDZCl4mSmQL1CJL+N
 pMsbZZOPGvrpzcBbZoBvVFHRWspeACz1U42k3L5N3d9+sPvyDAzuA82Vo0zD/TOO6
 SqD+05K5b6B/6kTFjuyrtxaTu2X3Zk3cg5YzTZCYwXA5O94ZrNbXl1wdJ18pZLKMh
 oIBN5Clt8bNqPFnZJA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.13.41]) by mail.gmx.net (mrgmx105
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MNt0C-1vSFkv04U4-00JVmE; Mon, 19
 Jan 2026 08:04:17 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <87tswku1d6.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
 <87tswku1d6.fsf@HIDDEN>
Date: Mon, 19 Jan 2026 12:33:47 +0530
Message-ID: <s48wm1ekrsc.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:atLsagipafpgXuVPcIbBlDnrLu32bdaGfDkCac7d1CzPv5w628P
 fwroDpDSPA5hetLyoQ24zVR/eIg9lANek7Agnq6AZnCx614dzadyR0mMeXx+uW5UlYj5UWy
 +rMWwl92dYMrDDBh4iLFLDvOIKnbO4ekYRLASoYEHpn8HY/pinYiVvOPrsqviIIErHSP0jw
 b6KH3oLSwH9L7gHjW3sFA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:cRW71H1R/Xw=;zXoERxia1js7qTyHoT1jwbhkusO
 i2QKuL0xnGAjHVcKGB0AwkrLXJUggkKiDzcAZ6gHajqrHvvih56ubuFcvMC0ic7xl/9nBna8c
 23Xrav52iC1fYtwN0TEDo4fJElcDQGXa0mHjTV6v3nRDNL/wweRU0z/DAMkfRH80CjIl6w0tt
 iH1ThVvFIPC2TS3LD+v9eXSojODiFW+3Flv4ZCo/2/qWWwl2fWSBjpnsAhYu+C+xFrB1nfeTz
 U7DFTZWvLAJm/rapm7tvl5vDSOn2RqyNdE5ilnQWOH1uxjdpiNBWF0B0EsP3OETH9QjdUd4ce
 7cXHIruQgkmXFCRvL1CPItDwn1VwvnHPkH1xdZhwpfLgH5exkGPJWq6l7ZIhrlAuD935V07jE
 AdqgzYlOm4gXYe/wR0QeGEFOCzfCU/SjJoXYwSxaHf88v1Dfem1La/J7uBkWpSBaokHH0bv+/
 /iIaIHsROjyDXLpXE4ukZtsR3ShSQt608kTdjFzQX36noIAqJUrQjm9W4y2hZZX1rWFHwPIxn
 Cg/z3GAszeF0x2Ff1CW+AI5jDMbyMv2czTDZI4WTvtHqE/nILNq5cXm5TjV/4xfqhkDwwsNPh
 MtfhYtx256JuRiFmZ87ffJXwXwwfJAK3/BO2w0wlpKWmBp/Z6E5lzY6uq+heJo2iTghFqHCD0
 s9vxuAikBkXG7XHOaNVHZOqI15aSyrET3e1sadL6McjEYCmj8Gd7VbNgKYXYhdb4FOWwxloTV
 ByU+XjQUA32guH8B5ijdJ11u8+gmWf2mgRU9RM+/SY5iW23n4iCOgl/x1qrXKadbccB7degCP
 L5MZ3jDc/tIRgmbL6f1qDqXbfnmIskIGgiRQoyX+wlwFPk66M/hTIa6JltxUvvIPUg0N0FXAt
 uwBLo0IJl134pWervb2Ei1sQxScNBcbDNY3kMcL7wH/FlumbYvXWfsGuTNpepdSgMorEP/am/
 /sXJa5b0OmfDOi7/fEiW4fvU9c0rI8Gyk1n4iF4WgAp9B9ZdpnMEepCh3n17spbnP7zG5IFGu
 +OFw7p2+CHmXlD8lH6R2Dbw8Ls/maol/IUYsVUU5WMZ6vEpcUZMXKs70ThHnLvptnYwD64DXl
 HP5kfsXxj3Mz4wqd23wNyuZonetqUWA+muWfoYev9IaKrflCPT+2+g0RoDavNGxwpI3Ohig6f
 WNT0DjO3vjcVJUB7kmVfXlCChGsz6IUvu7uDmfKitNH3tPv02cllsEtfSqJvh87I/cwtdWqnX
 zV4bSFmZES4kXluc975vEzZBX6ay5UExQeCK76HIsM/chqW+A8IDXo0OFIzu2BjGt4TBJyOlk
 jHMfaUS/jElg3HAMTVHoOdCL543MvhcKk+pqApdrsQGGvBomFcIorX9oOa+27VdBN1vDNU5UC
 uTgzFTPvVqteJ4w5qPOt4UJLqx0Fib+L8SocPkvRp4s2KiyU1qdQGBgo/Wc826nt4dX2gE1PH
 2EY3Gyg89LxplsLQagWbKrqenNlSuZUGO2yjsthcLTeH9r+4mpjiZPNbLhUquM2UdshCnV2ep
 DXtGIofw4LmMBc3R/1BTz44AkZkNuq0nj70uxoOwJhV5HOgEV0mkUUBq8gpmOSq1CO2mVyDJL
 be1o4Kr1gYvlI37Y28yDWRFJZXUeOzh5ZO/0Azn+xab6zRbMpOgkdLfggSuC4I4gNIVz1tbAl
 NggFtFIBR6d9KFhDkfCXxl0oacJCptGYB6JwJGWSODp5+dcCXbKJ402TzcRilNR7ofZjvhhAa
 RqsmlbmNKVYTSJT3WKDkyWHdlk5qNThYnKaGO9uYjkZY+Nnz2dDW58K2NmZlBYP5y97jSx/u5
 VOw266OKCYgmk6uA2U9/QJGBKmUlM2k1hnNrJupqwJAuCd2CWOuMfts5CHqxQUUnJCBrfesNB
 munTanWkPa7mzRKu2Snc6C5iPqoEmtct1fdNC89B3+jEH5AP42jzVVsETG8noOpAX6A81K64N
 ex+LcLRn3ViOY2f4Qb7QwEevxUwggGW5KoGg8tsgrttYII15seeQgPWCfmQJy0A2RRXboIHfi
 xn0glDbNGjoLgmHwyaKtrUkzQ7uhVCtobKD8lzg1s2NdXK2BhDJzW3NDixgLDl2k9wl/2MF4b
 hliM1IcXDtCcVrv1ersmGyRp4wGoDudh8oOEkYpdN8xWT9ajueK1xZTyf2tXcUOpH9sf0Hr9F
 AoC/hfwQ9/c++MjQn0irJ/HHMYRFDDaMAScjS6AHoigsbEL7Dve3oHXEySTrOYnyv/0SRWp9E
 ipmJD52lgzG5rEmt33Y0nEdE7GS57JaIS0Hd2LQ2kTiV5mxZdrKKVZVkNebG1p9PjHR0oriDQ
 gytXa4LaeHNcDsjz1hUphsVZ9HAtEsPbx2jg4qQwQN2MpfX2FLeEXAq0zE02VR6wBnP+bRnAp
 9KKYoxg3ato0GSfPKMWlyRiPtk2XGoumfJYGlupMYo5YQnCCl0M+LNZskE6/+3/mWwdeb/ipX
 mzh/76hlYTU3ooU5UID1qfMMau4TBIXzV6frRt05utSWswdpXSPziJSDGbh+29nomihUgo3OU
 AGPl8ojpFql2yPXd14DRKmGsXi8j+lua7+fSdmabWVmyNloG1h0pGjjty9K6jih4hjd3XH3Nr
 aHT/gtPCXJuCDJ2odl2jQi+3eVKX0j6QEEC0ooT9eMjxM4LIS+VORoYJlrDnjFKqbuF0yBujX
 cj9fsdS2c2X30W0cibpbBhsbIFtrBviDaPq2Rh3I96KKm8vun2NW8Kam5LeJ5siKDEWD9SF6V
 O72QgcFynbKl6BENKr9yzxd6zQrF4SZ5aWo6Pj1sQw7A1OYiUqpDMyDeO1BQfM0BCp8RzhWwI
 jW+XWdjntlPSvCjSdCFenl9tsP5Lr5R1IKZ1K21SGfwhPPnA0Ahghm5pjLMzEiJVBYg3p0yQa
 kMiXWiMsqaUAwPnRXNJkoZQtJHboiajEeqQNAdbktzk1oZkw5N8RKwur8+5HY8aj5l/JL4kSh
 vU3qORffsicF7PjO8jTmAjfxDgXE3HIhxy58b8rrrImQH66EKIlM6cLcCQtq+kkeE3aHkTLJH
 ssjX5x6B55nph+xexGUq0qgTwnUY6FWBFaZ0/qnanBSZGG8wc7EYoCL+e8V3YlQOWdO1FOug1
 RAmK+ioZD5JQveq0iLKzLOdMxv5SVQNb2dKZ71bOcoC9+DfhHJU46fCDQpvM0jDRDPPe0fMZ/
 u9ATU/ZHwAXgrBCBbBzgXdCgvJUcjqTi3M5iweQUv0iwyM8Sr0rQDo8/lxJ8x1Fo9aejig8It
 aXZjQ6uf2quGtXDXx7DpvCpJ6OQyfmwy+9KD7tLCZtrFs6osSsKVqXABSmtTevpfcrZYuaxMu
 g5qb1zpFkPWRLoh5NERoYX6OMmj2ZcmMHjtK+E8AGL4LeSpzPpTTAYoy2f8e7om9OSa0oNJHE
 RP+PpuoHaI3z8/wIw3E/k+eObhlS2LvYz9zrObgx9b3cZFXehyH5WVljoYC03urmAAezt0snA
 BY2r+jmAnEWlD74hjiFvr0lk6Y9WtbhjTves0ERaNez7zqyncW5Q90VM4mqn04tiKS3zqnK73
 FpF3WA9X8RMOrRS7nx/fpjuWAsCq9qGHjyLfXxT6h16xj83yASm119KR4BuP7wvfoB7fKbEFK
 JDulehHVMt1Q/sN/pWYfnQdy5ZSA+IhJOiiNGhegwX+2o+54SszmBy2PVxLqVLG8CcRw+mReY
 5vg1/y8s+gz23ZF7H9tY9lEU3rUUq/1+SWC+DkWBty3EJwpI+QAG6MxQ+pmpFP6dknOq6nRMI
 7Y8ifKx6v5ZOeYKZP5GF7BRTXWGpQs2933svKAz6IN5MTr0rN80rQ3LkXwYcDsrL66r1Qi4tw
 y2+q+Ftf8JLohLFAxWTKQ3c4JpzpdNzR7yuiZ2bn3opjWAP7ZsDl3iMw8sgkLYWzhDi3lWSCS
 HgK7DzDUlJqnAFlD0oKO2VM/rLUuCFkzh+HKDa385W9vFXzTKHk0EoXKOHnGe86tGtyz4Gufn
 tNypakSuR1HBIRz2eBL/Uxo3/w9+NEvLdFMI3ea073laEE8aVrrzdaaNusIxSReMh6TqUCaID
 y4gtJSgGNkYY25xF4/QfHHr2VGweENFb8rvCORS2ZF+zlHNmCXnWkm5vtxdr1LJNmgovIymwO
 J308vcXuNmv9WVex1cJsrRRAtNdkj2wRq506hycpRDykAXNvA/N6NCmHY3m288rfky/Weqcen
 PlHfEJiOqwJMqEJ4NEZYsmfa/676aSFb7aPzMIUtME+KzTYi2ni3iEXpA7EkH9StPXbmR2QKC
 sd6sW/PRDMv92tSgWeGU2bUllOIqdYhqjICONAF7eEgOjyUvSc4lyy/9aTRhinRMKlXIS1DPR
 43b5hIU6agJ6k4njkGEUXyL38/jNx1vYE6+uzZ9uQfrld4cHzteMZk6N7rd7HiNCtGoGX0knD
 4wZi113dxkO8VBgUX3mSGcwiaAjiw5utwsUKV5s/l1IjN8gNJA2n0fhFKYyfNcpruAfnV3uTb
 0skEjWlPunq8AzWaadqABKRxdpZJcOzqqBIfezWPgQhzLB+vE5qlWygLlt55BMj6Sw7+1h9f4
 1ojdS1YsrYGO0IcOiQbBnsx0dnzkvQXDYoq2bDud79HE+dQEHqdtrE17GKI51QpvmNUrJEhCQ
 RRa7+T33uPEaQL7vvG+xaAcae8FB3HT9KIeQCeOPYZn0S7nLYyud6ylzvfNMevdeMclF/CBqe
 XPixQX+v8Qb91NKXU9Up3WzvIhjN0/3scPl6V035hty6KoNAV/vN67bKgY1+mxR8gxqq39KJ+
 hN2fy4N8aM1KRuPkw6INz+CghdSXFR688EcvZng4F6e2h99YGGmPdNZgSAJIus9zP15QxnYIS
 XXXYwqY5cvyBBv1cA3V/uhwAj6pBbg2OgCUldHBmD1D9Fw83UDwn2H6iJ3gXp/ZXrohgkdIjL
 hWuZTmtTo9gs09N8pHM834vSycji0vdg7iSjnw3vHbBP79Lz021hqLND9nn18SJGwFE61t7yZ
 XvoEylxaqCbtbuAY6EPUJRq2CaHufkWVcdo60twH1e6YNW6QF/LfDKDrY8YCThVWpUqoldDnc
 1plIjGBDiyqGPmVaeKJwOX0oaI4FcUkE0jill2U0NRg3TxnH6abvEwPqzyulWi745EXSOC9WC
 W/S9CnfC9/U+imcSY0H/jlyHQUr+MA4eFuNW6ixAcblMrSnmz2FZXkkUOaNueMr+zWLzD1O97
 R67KbobI=
X-Spam-Score: 2.9 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: Michael Albinus <> writes: > James Thomas <> writes: > > Hi
 James, > >>> This is just a POC (as the littered FIXMEs testify) only to
 check >>> feasibility - any flaw? And more of a fix for bug#61350 than this,
 >>> so >>> bear w [...] 
 Content analysis details:   (2.9 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (jimjoe[at]gmx.net)
 0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.21 listed in sa-trusted.bondedsender.org]
 3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
 [42.108.13.41 listed in zen.spamhaus.org]
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 -0.0 SPF_PASS               SPF: sender matches SPF record
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
 low trust [212.227.17.21 listed in list.dnswl.org]
 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.21 listed in bl.score.senderscore.com]
 0.0 URIBL_RED              Contains an URL listed in the URIBL redlist
 [URIs: test.sh]
 -0.0 RCVD_IN_MSPIKE_H2      RBL: Average reputation (+2)
 [212.227.17.21 listed in wl.mailspike.net]
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.9 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  Michael Albinus <> writes: > James Thomas <> writes: > > Hi
    James, > >>> This is just a POC (as the littered FIXMEs testify) only to
   check >>> feasibility - any flaw? And more of a fix for bug#61350 than this,
    >>> so >>> bear w [...] 
 
 Content analysis details:   (1.9 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  0.0 URIBL_RED              Contains an URL listed in the URIBL redlist
                             [URIs: test.sh]
  0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
                             query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                             [212.227.17.21 listed in bl.score.senderscore.com]
  3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
                             [42.108.13.41 listed in zen.spamhaus.org]
  0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The
                             query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                          [212.227.17.21 listed in sa-trusted.bondedsender.org]
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
                             low trust
                             [212.227.17.21 listed in list.dnswl.org]
 -0.0 RCVD_IN_MSPIKE_H2      RBL: Average reputation (+2)
                             [212.227.17.21 listed in wl.mailspike.net]
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
                             provider (jimjoe[at]gmx.net)
  0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 -0.0 SPF_PASS               SPF: sender matches SPF record
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

Michael Albinus <> writes:

> James Thomas <> writes:
>
> Hi James,
>
>>> This is just a POC (as the littered FIXMEs testify) only to check
>>> feasibility - any flaw? And more of a fix for bug#61350 than this,
>>> so
>>> bear with me for the test:
>>>
>>> - M-x cd /dtach:<server having dtach>: RET
>>> - M-: (start-file-process "test" "test" "./test.sh") ([1] or maybe
>>> another long-running process)
>>> - C-x C-j
>>>
>>> With /ssh: it would block, but this works, with no visible defects
>>> in
>>> the async process, AFAICT.
>>>
>>> So I guess my question is: Does something like this - fully fleshed
>>> out - have a chance?
>>
>> This has a few (seemingly not critical) mistakes. Let me send an
>> updated
>> one.
>
> No problem, take your time. I didn't start yet to analyze in detail.
>
> Perhaps this: while scanning the patch shortly, my first impulse was:
> why an own method? This restricts the approach to just the ssh
> method. Wouldn't it be better, to add it (controlled by method
> parameters, for example) to any method of tramp-sh.el?

That was my intention as well, but I didn't want to complicate things
for a POC.

> My experience from zillions of Tramp regression tests is, that the
> problems happens more frequently for the sudo method but ssh.

This won't work there because it very much _uses_ the ControlPersist and
ControlMaster to achieve the async.

But what I really wanted to know was what you think of the approach. The
main problem with what I gave already is that it accidentally layered
two dtach calls in the 'renewal'. But the test should still work.

(That and the fact that I'm not sure of the extra efficiency eked out of
using eq for the common string comparison)

But I think I'll send in a proper patch now anyway...

--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 17 Jan 2026 07:47:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 17 02:47:44 2026
Received: from localhost ([127.0.0.1]:51694 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vh127-0005UA-Sw
	for submit <at> debbugs.gnu.org; Sat, 17 Jan 2026 02:47:44 -0500
Received: from mout.gmx.net ([212.227.17.22]:54757)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1vh125-0005Tk-7x
 for 60534 <at> debbugs.gnu.org; Sat, 17 Jan 2026 02:47:42 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1768636054; x=1769240854; i=michael.albinus@HIDDEN;
 bh=LtIXVzSHeD3Tenn7DyrRyDsXM38Wr/UbIopQ3oqIKPY=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=NyBual6aSLlZ5CScRK8iE6NazW5mADPISp34cnBRFPorEdcQYCOpC+3dP2j1U9mb
 3eWefgCuzKzbyJqbGcf5D/YHNNhVUz/je5uuZ1speuK2cON7EAnvpPKVTKeTH5OuB
 IUXjNRn8HnkZIAuGqpalQ9mGRwF8XcNF2zCQS6GVHAyiwxywRJ1CjCMC548g6DOJH
 kVus2pplqrmVwZWbQfLUGDCYDr5PTdhjCxaa8EeP1li1eVdtCAWF44mCOJseH/QtZ
 f2I5935XumraY+InNnEclDTTef8z53vfQvhIT6CEHAX3OT4kAMwn1T68TYFZIlnfI
 D+lF4Z84H2+ETW2lBg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.12]) by mail.gmx.net (mrgmx104
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1M4Jqb-1vgk352WdV-006Ux9; Sat, 17
 Jan 2026 08:47:34 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s481pjplz2g.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN> <s481pjplz2g.fsf@HIDDEN>
Date: Sat, 17 Jan 2026 08:47:33 +0100
Message-ID: <87tswku1d6.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:nNb5GfE/IwMx2rfZDIzmw0ebj9EtvkKnaaljZ5rT+7n9HeDluBL
 DeAisgAWgf2M7TOFjmHQhvqoJBq0sBO8eTxr2VdxRKmxR7ZIZwDKmjbFtqcq1NNw6bFgbX1
 dU3hr9SmAmA6a1OBOxlctRnHBVyz0IvF6uR0PzB/fYcL/eNg9ZvevrjRSPrpVrvZPCDJYTw
 oYpi9pnv3/iuVa/kPqpew==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:m5sFCnDxHPU=;pkFdy7Ot1DNyy2i2lUh2XpaVbMo
 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
 VNR+dZ7CjvmOYI5+OqbaLtzjL7XyS
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

>> This is just a POC (as the littered FIXMEs testify) only to check
>> feasibility - any flaw? And more of a fix for bug#61350 than this, so
>> bear with me for the test:
>>
>> - M-x cd /dtach:<server having dtach>: RET
>> - M-: (start-file-process "test" "test" "./test.sh") ([1] or maybe
>> another long-running process)
>> - C-x C-j
>>
>> With /ssh: it would block, but this works, with no visible defects in
>> the async process, AFAICT.
>>
>> So I guess my question is: Does something like this - fully fleshed
>> out - have a chance?
>
> This has a few (seemingly not critical) mistakes. Let me send an updated
> one.

No problem, take your time. I didn't start yet to analyze in detail.

Perhaps this: while scanning the patch shortly, my first impulse was:
why an own method? This restricts the approach to just the ssh
method. Wouldn't it be better, to add it (controlled by method
parameters, for example) to any method of tramp-sh.el?

My experience from zillions of Tramp regression tests is, that the
problems happens more frequently for the sudo method but ssh.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 17 Jan 2026 03:04:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 16 22:04:38 2026
Received: from localhost ([127.0.0.1]:47363 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vgwcA-00025D-8p
	for submit <at> debbugs.gnu.org; Fri, 16 Jan 2026 22:04:38 -0500
Received: from mout.gmx.net ([212.227.15.18]:58963)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vgwc7-00024c-4m
 for 60534 <at> debbugs.gnu.org; Fri, 16 Jan 2026 22:04:36 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1768619068; x=1769223868; i=jimjoe@HIDDEN;
 bh=2cPjOPXcnbD9iqny0sdUpJHlTtmvKPfe5EGusHPk3kw=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=GHi3JDpSiJm+jkbVv8Lc6XCJznd923fK/bjFzf5S7/x4TLFs5nXw4lEo5Sc2RMTA
 Jan6dprFHcQd5RR3+hEgV+aOLhT5F10S143LmfvWsei5Qj+eVlBg2lMNnNKjlKMtw
 NwBjm3bdTebX+qR+HDGm4Bx0GEKNGXy28P6Ktc/QXb3OysK6GtAAB6pIARzMPbu/A
 z60qYSbyJzWQq3vYn7eUyeAvf9Ngy9LJg6oXLLn24jyWiKjXcoQYUsMTCs88Tzztf
 lnCdrZ7b/VK7IKPNFg5MgBUvmAEGWPnUfNcONbz2kpXssrvFslxq09uDUuSMQ0E40
 haGbV74SwooqwQuIpQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.22.17]) by mail.gmx.net (mrgmx004
 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MulqD-1vy49g1m8R-00xYYh; Sat, 17
 Jan 2026 04:04:28 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s48qzrrm8dj.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
 <s48qzrrm8dj.fsf@HIDDEN>
Date: Sat, 17 Jan 2026 08:34:23 +0530
Message-ID: <s481pjplz2g.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:FUrK502wwMkIoTnEuxI0qrf47gmRWiMAum+EJM09V+kRvKdLwlp
 edXbpEAcYAfKJ3yuNGTR/z/q3EEiIGmoYyxvBl0qYdr4uymBzEZM/q/ezAh1Ixlk9SVHdmF
 EAI7SP2HEjLf6lkSLRo9VMwb7I6tYuO7DjcpgZ3pUHNqURYVCHz/89yUPb0AGXQiyX9Gamb
 apJxW4RaRcaRhZDf6m3sw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:vkpuJ8TZrMs=;N5Fu6vQoWm8VX5ANVJF/Zyih8os
 +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
 RX+OKUS6PTj8brTb2EkpGTzyTllsWIetnjBcuU
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <> writes:

> Michael Albinus <> writes:
>
>> James Thomas <> writes:
>>
>> Hi James,
>>
>>> I'd meant for dtach to be run on the remote server itself, not
>>> locally. Anyway, let me see whether I could work out a patch...
>>
>> Please do. And contact me, if you have questions about the Tramp
>> code.
>>
>>> Thank you for your help.
>>>
>>> Regards,
>>> James
>>
>> Best regards, Michael.
>
> This is just a POC (as the littered FIXMEs testify) only to check
> feasibility - any flaw? And more of a fix for bug#61350 than this, so
> bear with me for the test:
>
> - M-x cd /dtach:<server having dtach>: RET
> - M-: (start-file-process "test" "test" "./test.sh") ([1] or maybe
> another long-running process)
> - C-x C-j
>
> With /ssh: it would block, but this works, with no visible defects in
> the async process, AFAICT.
>
> So I guess my question is: Does something like this - fully fleshed
> out - have a chance?
>
>
>
> 1:
>
> while :
> do
>     date
>     sleep 60
> done

This has a few (seemingly not critical) mistakes. Let me send an updated
one.

--





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 15 Jan 2026 11:20:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jan 15 06:20:45 2026
Received: from localhost ([127.0.0.1]:42071 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vgLPA-0006Lj-B6
	for submit <at> debbugs.gnu.org; Thu, 15 Jan 2026 06:20:44 -0500
Received: from mout.gmx.net ([212.227.17.22]:53847)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vgLP2-0006Ke-Ap
 for 60534 <at> debbugs.gnu.org; Thu, 15 Jan 2026 06:20:37 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1768476030; x=1769080830; i=jimjoe@HIDDEN;
 bh=cYCAF0EYG3DG4n95f5H3caDs0dGBqdFBb0o8Vz3I+x8=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:Date:Message-ID:
 References:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=DFGCq7bbiphkrJgqw5VoC3OewIclPa7iUXy1HzNcmXtiehNGMgOVgs0t1oT2vbM1
 MnMxbZJCjjhw96qrdN70euqz5YNyNUC++JD2f9P4dO/ml59O39Adh8iSRdPmjrtO0
 AfTKihl3b7lfUmdkMGGcKgZnAzIizmPBvqpwbpi3PwfLerZeCqnlSvQs6BMSgNaFo
 xbWUsGBS7DNPO9GrS4RLV1NXlm+RroaajN6H61IA6tJAGvr92wWOEC9c1tosyEOXM
 xIkZcMMdOzLui0FCwpd7n3nqn6qyfZ0qyBOateqhZeyMXeyA3umBRJQEe706SUBW3
 gu+5I39hUkNF++3iaQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.104.175.236]) by mail.gmx.net (mrgmx105
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1M42nY-1vgLOu2EO8-008RBg; Thu, 15
 Jan 2026 12:20:29 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <87jyzul84u.fsf@HIDDEN>
Date: Thu, 15 Jan 2026 16:48:48 +0530
Message-ID: <s48qzrrm8dj.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN> <87jyzul84u.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Provags-ID: V03:K1:HJKfCiFJ2NmupinqLScYWzDcjAAvG8pKGFjsK1XusK9C2OXrgDU
 z6cqeY0QYde49Q/gxs22nMUCucv4bqigqi2fn9hRwcmwPdJLG2goBc6aYRfRYgz/RP+aVE/
 4DlzIDiGTwpUg/jvWjmaJ3SLrSTkum4qcxfuq81nITG2VoPlQusGvJduOoQ1scijV0qnHzG
 bgU+yAgT0woLYkzp+nBOg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:79aFfh9brmI=;MMCzTprjz/bkNhmnfep8JqEbE+b
 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
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

Michael Albinus <> writes:

> James Thomas <> writes:
>
> Hi James,
>
>> I'd meant for dtach to be run on the remote server itself, not
>> locally. Anyway, let me see whether I could work out a patch...
>
> Please do. And contact me, if you have questions about the Tramp code.
>
>> Thank you for your help.
>>
>> Regards,
>> James
>
> Best regards, Michael.

This is just a POC (as the littered FIXMEs testify) only to check feasibility - any flaw? And more of a fix for bug#61350 than this, so bear with me for the test:

- M-x cd /dtach:<server having dtach>: RET
- M-: (start-file-process "test" "test" "./test.sh") ([1] or maybe another long-running process)
- C-x C-j

With /ssh: it would block, but this works, with no visible defects in the async process, AFAICT.

So I guess my question is: Does something like this - fully fleshed out - have a chance?


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=tramp-test.patch
Content-Transfer-Encoding: quoted-printable

diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 457c9cf6b0e..799b7ae671d 100644
=2D-- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -154,6 +154,9 @@ tramp-scp-force-scp-protocol
=20
 The string is used in `tramp-methods'.")
=20
+;; FIXME: Instead, couldn't it simply be local to the shell process buffe=
r (but is it guaranteed t.e. if starting with direct-async)? Or turn into =
registry for unique ControlMaster sockets. Has for its value the running a=
sync proc.
+(defvar tramp-to-dtach nil)
+
 (defcustom tramp-use-scp-direct-remote-copying nil
   "Whether to use direct copying between two remote hosts."
   :group 'tramp
@@ -284,6 +287,24 @@ tramp-use-scp-direct-remote-copying
                 (tramp-remote-shell         ,tramp-default-remote-shell)
                 (tramp-remote-shell-login   ("-l"))
                 (tramp-remote-shell-args    ("-c"))))
+ ;; Copy of ssh. Separate so that one may run processes normally as well,=
 alongside.
+ (add-to-list 'tramp-methods
+              `("dtach"
+                (tramp-login-program        "ssh")
+                (tramp-login-args           (("-l" "%u") ("-p" "%p")
+                                             ;; FIXME: Work into the auto=
-detection instead.
+                                             ("-o" "ControlPath=3Ddtach-C=
ontrolPath-%%r@%%h:%%p")
+                                             ("-o" "ControlMaster=3Dauto"=
)
+                                             ("-o" "ControlPersist=3Dyes"=
)
+				             ("-e" "none")
+				             ("-o" ,(format "SetEnv=3D\"TERM=3D%s\""
+							    tramp-terminal-type))
+					     ("%h")))
+                (tramp-async-args           (("-q")))
+                (tramp-direct-async         ("-t" "-t"))
+                (tramp-remote-shell         ,tramp-default-remote-shell)
+                (tramp-remote-shell-login   ("-l"))
+                (tramp-remote-shell-args    ("-c"))))
  (add-to-list 'tramp-methods
               `("telnet"
                 (tramp-login-program        "telnet")
@@ -3059,6 +3080,7 @@ tramp-sh-handle-make-process
 			  (setq uenv (cons elt uenv))))))
 	     (env (setenv-internal
 		   env "INSIDE_EMACS" (tramp-inside-emacs) 'keep))
+             (dtachp (string=3D (tramp-file-name-method v) "dtach"))
 	     (command
 	      (when (stringp program)
 		(format "cd %s && %s exec %s %s env %s %s"
@@ -3075,8 +3097,17 @@ tramp-sh-handle-make-process
 			(if heredoc
 			    (format "%s\n(\n%s\n) </dev/tty\n%s"
 				    program (car args) tramp-end-of-heredoc)
-			  (mapconcat #'tramp-shell-quote-argument
-				     (cons program args) " ")))))
+			  (let ((cmd (mapconcat #'tramp-shell-quote-argument
+				                (cons program args) " ")))
+                            ;; FIXME: Only one process accounted for.
+                            (when dtachp
+                              (setq cmd
+                                    (format
+                                     ;; FIXME: Generalize sh etc.
+                                     ;; TODO: Detect termination using "c=
anary" file.
+                                     "dtach -c /tmp/fozzle sh -c \"%s | t=
ee /tmp/buf\"; > /tmp/buf"
+                                     ;;FIXME: Quote quotes.
+                                     cmd))))))))
 	     (tramp-process-connection-type
 	      (or (null program) tramp-process-connection-type))
 	     (bmp (and (buffer-live-p buffer) (buffer-modified-p buffer)))
@@ -3174,6 +3205,7 @@ tramp-sh-handle-make-process
 			(delete-region mark (point-max))
 			(narrow-to-region (point-max) (point-max))
 			;; Now do it.
+                        (message "Debug: %s" command)
 			(if command
 			    ;; Send the command.
 			    (tramp-send-command v command nil t) ; nooutput
@@ -3183,9 +3215,30 @@ tramp-sh-handle-make-process
 			     v 'file-error
 			     "pty association is not supported for `%s'" name))))
 		      ;; Set sentinel and filter.
-		      (when sentinel
-			(set-process-sentinel p sentinel))
+		      (when (or sentinel dtachp)
+			(set-process-sentinel
+                         p (if dtachp
+                               ;; So there has to be no sit-for etc. in t=
he way of getting here.
+                               (lambda (proc event)
+                                 (message "Debug: %s %s" proc event)
+                                 (if (and (eq proc tramp-to-dtach)
+                                          (eq event "finished\n"))
+                                     ;; FIXME: Check if too soon.
+                                     (with-current-buffer (process-buffer=
 proc)
+                                       ;; TODO: Detect termination using =
"canary" file.
+                                       ;; Renew.
+                                       (tramp-sh-handle-make-process
+                                        ;; Applications may use the same =
name eventhough the object changes.
+                                        :name (process-name proc)
+                                        :buffer (process-buffer proc)
+                                        :command
+                                        '("sh" "-c" "cat /tmp/buf; sh -c =
\"dtach -a /tmp/fozzle; > /tmp/buf\"")
+                                        :filter (process-filter proc)))
+                                   (funcall (or sentinel #'internal-defau=
lt-process-sentinel)
+                                            proc event)))
+                             sentinel)))
 		      (when filter
+                        ;; FIXME: similar to sentinel. Have an interface =
such as :dtach-filter to make-process?
 			(set-process-filter p filter))
 		      (process-put p 'remote-command orig-command)
 		      ;; Set query flag and process marker for this
@@ -3209,6 +3262,7 @@ tramp-sh-handle-make-process
 			     (delete-process (get-buffer-process stderr)))
 			   (ignore-errors
 			     (delete-file remote-tmpstderr)))))
+                      (when dtachp (setq tramp-to-dtach p))
 		      ;; Return process.
 		      p)))
=20
@@ -5173,7 +5227,8 @@ tramp-maybe-open-connection
     (let ((p (tramp-get-connection-process vec))
 	  (process-name (tramp-get-connection-property vec " process-name"))
 	  (process-environment (copy-sequence process-environment))
-	  (pos (with-current-buffer (tramp-get-connection-buffer vec) (point))))
+	  (pos (with-current-buffer (tramp-get-connection-buffer vec) (point)))
+          (dtachp (string=3D (tramp-file-name-method vec) "dtach")))
=20
       ;; If Tramp opens the same connection within a short time frame,
       ;; there is a problem.  We shall signal this.
@@ -5210,7 +5265,11 @@ tramp-maybe-open-connection
       ;; New connection must be opened.
       (condition-case err
 	  (unless (process-live-p p)
-	    (catch 'uname-changed
+            (when
+                (and dtachp tramp-to-dtach)
+              ;; FIXME: Check if alive.
+              (process-send-string tramp-to-dtach "=1C"))
+	    (catch 'uname-changed`
 	      ;; Start new process.
 	      (when (and p (processp p))
 		(delete-process p))
@@ -5362,6 +5421,7 @@ tramp-maybe-open-connection
 				(if (tramp-string-empty-or-nil-p l-user)
 				    "" (concat l-user "@"))
 				(tramp-file-name-host-port hop) l-method)
+                      ;; FIXME: Also run the (single) dtached shell (or s=
tart it up, if -to-dtach is nil or dead), but is the saved overhead beyond=
 direct-async worth it?
 		      (tramp-send-command vec command t t)
 		      (tramp-process-actions
 		       p vec

--=-=-=
Content-Type: text/plain


1:

while :
do
    date
    sleep 60
done

--

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 13 Nov 2025 07:11:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Nov 13 02:11:24 2025
Received: from localhost ([127.0.0.1]:53911 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vJRUJ-0006r4-NS
	for submit <at> debbugs.gnu.org; Thu, 13 Nov 2025 02:11:24 -0500
Received: from mout.gmx.net ([212.227.17.22]:45229)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1vJRUG-0006qu-M8
 for 60534 <at> debbugs.gnu.org; Thu, 13 Nov 2025 02:11:22 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1763017874; x=1763622674; i=michael.albinus@HIDDEN;
 bh=i2qII1jc86fXA9hW9WlD6yYYstL2QGk6A9q3lwrJ7Ak=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=PzY2m3/ucM/ot475kljrIjKmDNWaKykW+Jhx66bGYaTnd6IIE6+0KQHKZQm7zy/g
 UUT0GiBhdxWODyDIc6E1+7/TEWmLHLOKBEgjymBOJKLzBfuEz3QvImvkbeHi0xIqE
 7Z1LDoyTmqD7repuvu8Cl9gqm3iePa3zFqvW146uSoBHEWxktkF7L6Jz1EgM0W6Yn
 9S2j6n0roGPFEMYXsFt/FLNb2Oi6B7KWS+1vTIaQxPYDof3lrt0SSqXzfsHyAcmL1
 OyDbkCzXtUtetav//STi3ALM5wGJIW+Bbsf/eARfEYj0alq8ZF4PC5Nn3fEboxXDm
 z0ljc9FgTsdJEQasCw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N5mGB-1wH6kr0IqR-00xZgJ; Thu, 13
 Nov 2025 08:11:14 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s29a50qcwgr.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
 <s29a50qcwgr.fsf@HIDDEN>
Date: Thu, 13 Nov 2025 08:11:13 +0100
Message-ID: <87jyzul84u.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:mxJi7iKXI1Ogq2kPEzpqOz62DVRh/2+UUeTkMUQdfgs9q6UbB4h
 J3INiDL/5lyd7+rquXP7/A70aOOBQYQcm3fErAwAPMexsvpIsOtrpjB6HtcsNDBN1jt3IKS
 MZXVE+t6QW6wPK7vuqp4uLtZEtlhaTc2pKErJLlZkz8Mi31zif+t8zkUB1YNsYBXze8Dz2G
 rQCtBU2LPnB7veLzpwgbw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:Qs2mfACxSiM=;BfTEIEaGPo5Dcpestmx8kgtGhpV
 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
 P6t3zIRhaWPQz8Hhs=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

> I'd meant for dtach to be run on the remote server itself, not
> locally. Anyway, let me see whether I could work out a patch...

Please do. And contact me, if you have questions about the Tramp code.

> Thank you for your help.
>
> Regards,
> James

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 13 Nov 2025 05:50:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Nov 13 00:50:44 2025
Received: from localhost ([127.0.0.1]:53748 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vJQEG-0003F0-54
	for submit <at> debbugs.gnu.org; Thu, 13 Nov 2025 00:50:44 -0500
Received: from mout.gmx.net ([212.227.17.20]:56977)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vJQEC-0003Ek-Pm
 for 60534 <at> debbugs.gnu.org; Thu, 13 Nov 2025 00:50:42 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1763013034; x=1763617834; i=jimjoe@HIDDEN;
 bh=+YyGwez8PDf8N4FBxC9fvf7DYiCW77hXLiYetbKLqfE=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=GCpNOUG49gyhiO0bYLyN+sHkr+Oth1MgFKaTL5cpqfm4bjB1C+vEQvMhF3PFXfOT
 kzigxtreYfRYXLRZZ0lBplfrJyHGWLxlkGAsci9ONM/WdQExp+G86M1+fUdtTxrjj
 tzdR7cLfC4hcjmWEZBWjS83CcvByRZ5qs4s+PEQ90D3ZlFN+dv1dQRRqBc2pQ9gFU
 ZZHqKmNPxvu49NPgqS73agG3MrO01p5Y4sMByhXjdlglVR+7V4B5WA0AjLwUxnw1X
 i6yUdPLxZ1yTrB26ukGrYYsuXzr7BYV4gwEFdjNJbe74QvfkDtTFkYMB+VbM/u9pc
 GQXU9QDgyPpPDd0rWg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.29.31]) by mail.gmx.net (mrgmx104
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MdvmY-1vsDHT1QPO-00frAV; Thu, 13
 Nov 2025 06:50:34 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <87y0oo91df.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN> <87y0oo91df.fsf@HIDDEN>
Date: Thu, 13 Nov 2025 11:20:28 +0530
Message-ID: <s29a50qcwgr.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:A6PUSuqNWG9hFLbI5Ub06AQ5ZsP9P0FIZ7QcrxgA3Q17mIGZq0S
 bPjxr0P1oHKARlxKCAjlh2n59YGsMOiH2QrdWbCU0gpVCZjeLHRbssvcOe2Wk/MesP+Z5/8
 3D7p9ukOGEM6bWgJZrsgBU9Whl2mvJh9G8X+QMCbpsxOSOAWZMwE8GW/Fmn8/AtE1PJ0xHZ
 nbhg5R/cf/eqDVQoJXf6A==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:Yw7FK4ECpKg=;T/vTu8xWNIicNzmkRRmVfUslsgE
 7yWeqCKCruGWeWjwj8cWsIw0RfEgEagpcAnQ1Qdf6DheyfdaydJ+qU/GBr8x2RHf7Z8ASpVbj
 VJMGfW/5U1nd20Z9rHXVZsgzcp6LroZn5wVXQTnYOKwJN/WzMwPpa8qn8VwAlhabBbE/xKW7G
 jWWx3r4qBRR0gCVzBn9GbxZm6K9SHscP4cKEkF+s97P3BaLIIADtYE6qzzMcwKSBN3epD6gvp
 fk0I77ENkGHR3m+BA8DumRYHVQJ6LMejSL55mfpeFHMJAhhAn8vihAMq/BTFuDASd+wn/rmJR
 OayDdBfLGpsTXeVNop1BHLQu0dLYJxVr5Jb6pqnP1Fc0vK9FD2hTTPXSm4r4b+SwUEoKYq3yi
 MBFRJ9UulA6UlXjJJt8y6eqQNNNxd+zAezg+84yHShkrY2arQ5rbb8uctHQH8VuVrljKcA+1Z
 Lm9IpD60UihLKMc7JxgSdgQNz7BZtLNvurEahBJ5lK5KpmJ+dnDdHn7WMLeQGFTeSNU8lJA2I
 o+kuZcy4JyS2kY/MIqj8/Ya8IB3Hn6WMgGfBbqqg5VqePEeOoHH3im7bMPCj5tPgaUWnUJJ4y
 /1Nf2xYEsnHLAE+vI1H/b3TEKyMwXjLRdAVVWji+24h8654IUca6RHhfpKXSjWxRMtFxlxxCK
 HP/lHEKiacmy6sdqWpKs/lDqp3q9qjLXkVKve9MUmFMyBdsEnh30DKNNOWoAYfvsf9HYpOrfk
 WYvntKZ4JAYkxLgp05YvtrPiXO3rNEso/PsZVqHSmlSeNYOaTdpuSUWSSte8jpC2EPoC3jwlF
 +cnNj5R3muylr2rW92n3PSUwZKf0KAgssruMTDGKjLXE98cRr3UZHVmU9V0xnaQ60CJrUP4+U
 wyeXq0hwF5NlYJNnXHSJirgjCphziR5szYwAf0RkR93s9Zi4D+mYyybVQvNxjEtLv6+4eL1pF
 DClKpV7bxJdSn1GwZGRPimfU4eE7kZ6SrdrwCHSY+8iwIS8eVVBkQqBjFQCqDmkQT2T0ehjjL
 ZAkBFZ4EydzmDoHdOhIQaFL3S1qq+gCO+Nshezm/Y1YGD0SqTWllP3jRBEeE959nXG3YLF+gk
 7q8UAAGWYnI35QHRIPqEdqGAVmmGjqyI3XDhUBunViNj02PkBS5WCEvsP/OxX0vjfSPGR2luA
 +bLqFQgO/qG398XDZH3jKoPv/cZdRdz5bexvXUovsWQpBoZOhki4ZL4t7QH9K8xTQuToViXcU
 JS9+emfDnqiEQSfvvysycndJrhunDKadDiFIH5R3KN0HyBNlO2GQb1yZ1DuyhhZIkq8tmpxpw
 2n/2nd6nwU5y+rgNkOB9r/ppRLUG/5sS/g1aXU37+jFosF1jR4rv/z8zUarpykZK94R6MZpiz
 0Gj7Un/wr5Ti4zeOnPIggAtZ5jDnqpcs0OG410ZwRXHaajRza+fZ6YDepsUNaPax3mIjEzp/W
 3ZkT6Mlv2/J4EfXfSK9t+wC4fy5JPajY6M8qiAoypQ2uZbM3KKQcqeaarz0vVd2OnXj6/76xr
 JSzGcp9msSseHFGrnHFL63OMHqlfV/Kf0mgPgpRDTFzaedvb52Ph/iVNTsiYAuc17cS2DJW4J
 5VtRQaukK5WwXJVm3oFTo+k6HpS8vfTgf/xL49hPfi60NGl5nzzOt6tBYdS3CdcPOnKAGg4/P
 wMI5cMaS09LNxj65wjPGkwXWVhlfBBAwL4rYZ7/UfHFfr7Hz5w6EdqTjDiNllRsy+iaN/qGRD
 MOh1+gsPSTfNIJ6bVXhPcr11kguAUpW/1jC+g53ChACnlFFiQvkBc3VYx/+Aku0K3+bYq74/G
 i34p1oV/s/upNGVQG5S8Qg2XGhRZjPeQtOKbvfSejeyuJSNmGp5vluXFaGjut26AD3JE5/Dq9
 FG+Tv3c1WvFxPEvFLiMWs33YJxWvz+IyHcgQfnOejP9oUabIhPrDQAeCG3Jbr3Be1bWyRduhq
 sNXhJsS0nzaB0UTu/P9NoCeiwEngnhCQUtRrrlU0lDmJgCtUqGCVaCLbcDr+YMm5BtgzMF0qO
 GOHKvB4AdG2ps0kBoYeOpXqqVIxBRi2b6S4d5W15WeUQiB+teQf9YesUtx0RDJ6Hy7pWBjtqU
 KEqrE7Qah97Mh8IxN9q2s88jMlWMRt9CtGY/bbIT+eOR/T2jdLAjeE5rM02Rytn1/SnXHCUS1
 f29DG7lhklzH4T98WzDjecFNMBYuJIcLrTCga9AY6YyOg9pd2s173Re58cQjbOVFl/krPwD48
 72QietaZ7h/kocdQB2WJb8GJXxOlsIkRexSWmUJhJex+SLW6yerrTP9SQc3rcDFJehNyMRv80
 Do5AhhpxFOwIdlqIapxkiiK1N7LZyhPWbevhahA7pGACyZ6LFz+id1YWSwZsDBRXqsGTgm8OH
 jE4q7F0ag8X2JqN5Ow0KjgUYke8rjYbaR3FqvNtuQYhCY3WWIJHn78l0CMhl+ArFz7gstMm7S
 9Cp8AgmM0x7UAluMD30klNX3wCnzDYTiahrr87NsUqKyNMLUcQTEbBV4AOe16Qg6zGMzxHCwt
 3Mrjl48FcbIi5dMw0cp96hkRPG42i2u1stXZ3LdldKRBavQIiHRI9XKEHD8oq840KgQKjXbe/
 cIuGmdd7oEyGJ37rnvJtvgvy/Uz+pLeO+vDAnMVtKv1n0T+YnzYs2P//atOwIFAcwnaGWuloZ
 bxr9z7INjGo2rMiWOWpt2mpD1F37aO+NILnsTH0Uxp1cDPgVYOuw2jZDLMv3rQqhXK1d6imPH
 e1XvfiLssagBjG++bgCT6WEcWrMAlstyc5tIEcgQE1JocqUQ8j7DYMweDGt7EwCLC1lIuVrW8
 mwFV6huXJ104jTabXT1cx7KOrmxWAfWYGpV6KOW5tQipHEs4lvRNWKJL4kzjqVvQVjIlREpot
 XnvZ27X4B23p7yKVPeBGqt1BSRUNiPzRZwdOiXUP3xUEoJAGQI3dO3xq1RHdKCUB/B42M52BE
 +bhhJehRiVI/2J8VT28kfwe4fJ5+SnpNJvLwJ3HYvu2JkaXJZwzosKFoJpacpkZKrBpbWiYp6
 55nNdq4Fsm8fwofLdSHleBmaAVcrRfNividyP+YbA2Hg1/QHDAnhD/BV6pDkWRKZoYt1PyDBq
 3XS9dVQeEgOb5Lqty2QdN3R6dJXwitpFqSMmcUn2ay9PfJrCiYWYaxuV+FIcyplY0kdRMti0d
 FgPht71lq6r8dSx4p7oVvEfEF1VJkiBp36v5PNNQyBhEMuFrQM7ZQYB4JGtEaHCGHC2rC7lAp
 eDOryYzJhOhyWpux98gCdczYJx0vDZfzuVp2lV2KFnf/LmYQx+3mhu1GB/XaREW0qLBr0Yge/
 WA5jgAz2bhkVaSmAQa2YGtRlQGhRuBL9PAmJdcDIszTg5R6mUXVMycxJGOPPrkuuEOwnrmI54
 Dr9eVywEvNvF6t8iljqlZEOSSwMh8fSz0HifmkzmaWcoWYVkd3hIZoaJi/i2ZtOHt+qC4/G04
 iAw9A413IGzGRVXbejpB9RzQvieoBgUTkEFjTaI7muGvgC6Uunfqw1fdQTrcPK9I2vnzp/fja
 C3VxcLgtpi8+Nj92y05ZUF/XFXF3JnZ1sFAEBgSPUicl5c59lye3aWvKuKfAyD/G+Jbb6c9Rb
 nywE0f6MsuPVUrp37/0esII2fHRzrqQwL4X85xVseq7k+tcEUTwzCE7byY29C/I8v37OTfBjL
 KbMqxMQLy8fU3w/HT9qk0XOmSe4mLaNPyCaMHnMt7iugacCoYd9LMYVtw6KuG2QAs9aijmtOb
 Wof0Tg/sFnzQoGc4DmeWnCEGU5MiQzqu+WgftFDbIDG99hvBGHlm8nsu6Im5INy1ml36P4PoR
 hLk2mA3FmkoChN2mafqtILf91Ln/yi2iE+AyrRQGgdLpdRuxlRywLwJdXAyFHAZ/9ZwmdSyXp
 YHiKYG/5V8xN0tzQKJy6g0Dycz6sLn0gEP8gCkU8LxT2ZOAAZ3kY9pOBKVBhwkpoTmXRLfpCm
 QHDyhHKBm6HkuvQtZWrG8I1H6zxRLxyncVG/SVFN7maJ0rkaBnzNcmzkpAxRgQyvsOLwwMXvl
 z/Wm2t6qCErYAMJxoQiXi3DIfT9eXU1W2P5XEl5XoK7GarD6q+W5ix98OjQioor7i/lyCzmuY
 fEJRR5mmFBxoFx5CcA8va4ltHADfr8Y1zf96W6EZzu26zZKFhgreZekbLEC+vjx8N/moocbTt
 89rin63xfB7wwJqjYvYI3CSmin/SY/Tl+2RhHzi3/WiV3UltlujZLwaSEjDNCL18hi8Nnb7jR
 YQA4O5ludKHp/kx2mSCXjWODKB7NIisN5awYNg0YtUnuJkLz326aomE1Bktuwcrk9NkIt4bWF
 arEhOa36lmr1VcE4v6TqQNDEN7wJe4eZfR2s3urCJBIYiltwVdTjAfLbPINJhMqMpepi2Esor
 uWq0gHpp8x90jRqhkO3mDc57RSUp7rd2OiFpaq5DQ4tih/3LfmjAxs80w1CN6+IvzHYbCeA4B
 SWoAYwY3sSZ5DilVZ+ofX954Iqx/fNaEHxanUohPOVx4A4z4vDEEgfrt7WasjGRSaGC0SdS5N
 jnsJIcY0TszUJ4tSbuFQCh7nd/L5YyBWhenUTyxBJrW7qC46gKek4pb+nhSAlLpz0nY0tdaUG
 uLsfi3gqu6m0Vg8FFE1GxdSbvqdamEQPFdbA6IOamE4Q1UqPMka1ekHWAKyRsGTHOPFgbg9LU
 ruenwqzDwmQUbPlJ7g3cBC8Yhw30Z8NS9DQeYbmYdV/cKq/lxQBhbpb47f5NYTLQi5fTrN9gY
 gJcuLsl4Ib+LEjES9TCDfDtz6S4d52KjOvBcbofJ2wG5zQdsYopCQZLcEGm/7oZs/OFuGH63K
 UOU+bmiK7fC0ek6bKT3FN8aZaRmvs1g810YSqYDngbiF8E4tgV7rHj10O5Cs/+ByXjBoXXuRP
 tFlRCCfZMVm3tU5cWxuX66yUT1tcKKDY452qsfPO0LCBiOMRBijNL0MNreEQlj7VoFx9NnAH3
 XkKXfe1GqWpQ/+7zA2YxEQ9ix2P0h2QDJq5zpAMt0bW+gKcozJldU5fhD9a0OK8etproDxTfm
 tXtJHkpBdQbgALWPntNYiLCSw1qRMatCNgJaDWZJWCU9QVdDGP/EAy957XqhD8WxLpiaA==
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Michael Albinus <> writes:

> James Thomas <> writes:
>
> Hi James,
>
>> Oh, perhaps you were thinking of 'back-and-forth' switching between
>> 'parallel' processes? There'd be no such thing here; It's a one-way
>> street: subsequent processes have to complete before resuming an
>> earlier one. In that sense, it would mirror the control flow of the
>> single threaded Emacs itself.
>
> No, that is not the problem of back-and-forth. It is the scenario (on
> the local side):
>
> - Tramp handles a given request.
>
> - A timer or process-filter requests something else. We dtach the
> remote
>   shell, and handle the 2nd request. While doing so, a function
>   definition is sent remote.

I'd meant for dtach to be run on the remote server itself, not
locally. Anyway, let me see whether I could work out a patch...

>
> - The 2nd request is handled, and we're back to the original
>   request. The same function definition is needed later on. Tramp
>   believes, it has sent it already, and trusts the availability of the
>   definition on the remote side. But it fails.
>
> Best regards, Michael.

Thank you for your help.

Regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 2 Nov 2025 10:26:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 02 05:26:30 2025
Received: from localhost ([127.0.0.1]:57955 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vFVI6-0002vh-Eg
	for submit <at> debbugs.gnu.org; Sun, 02 Nov 2025 05:26:30 -0500
Received: from mout.gmx.net ([212.227.15.15]:51291)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1vFVI3-0002vV-K3
 for 60534 <at> debbugs.gnu.org; Sun, 02 Nov 2025 05:26:28 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1762079181; x=1762683981; i=michael.albinus@HIDDEN;
 bh=EQPOUxmMDtgG2rzAvdFJQ5aiMitsGgkyCJluTE71ljY=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=gBhNpaSLGgCGy1/h2RjhY+AAOnqvPuw6BSf+4MyoE9ZuxYIRKgiPxohIH3IBClzK
 3Qq3p+kWy5/b7ezbKlZrqdNmvbpqLlOkUBobGrpePHJU74hMa6IrOr0ifYLIZEIu3
 Mo/tM18wRgROuuKD571PjIgLRhPbJuvY0UZNeow1Zkd1jXiY2QA4T4S/eyUMCay73
 lQlaMnedgT1429mXfGz4jZd4SfrhUQ2bGID/BvEOaM04ZOD5ylJQ137wfYZmDuDfV
 /DYI7z+Y4YLuEuovKVbDPodhR6w/PGq7mUj8lPimGnrPncT9xl+Ugn7juwX3uCqki
 2XKtZIw0eUssKUXXsQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MryT9-1w0c9p4BNN-00jzAB; Sun, 02
 Nov 2025 11:26:21 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
 <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN>
Date: Sun, 02 Nov 2025 11:26:20 +0100
Message-ID: <87y0oo91df.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:cRD+pDUrv6+bkcMXR3XXlqx9s4zC+ssgj01bRYznuLYUjvbLpu6
 J4idqtigVD1tjCTGGIR2+32LX5JWonB0Hnmcwx2oqLIM6ZsLgWTNA23yP3tugVxf3H0sNyP
 lQGOOvZ0Z8kgIvDH7AWpLAUvOqr80JPXAfxDOQKdYZu63YTITdmlLYGMprCydatwWBTP2kC
 ggAg3+efhfpVAV5es4k9g==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:VUeAPmOUsoA=;mUxSfsT9iqapEwC663DoVRxRzHo
 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
 xyHFfVd85XzsIAo6u9zIp3s0PE=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

> Oh, perhaps you were thinking of 'back-and-forth' switching between
> 'parallel' processes? There'd be no such thing here; It's a one-way
> street: subsequent processes have to complete before resuming an
> earlier one. In that sense, it would mirror the control flow of the
> single threaded Emacs itself.

No, that is not the problem of back-and-forth. It is the scenario (on
the local side):

- Tramp handles a given request.

- A timer or process-filter requests something else. We dtach the remote
  shell, and handle the 2nd request. While doing so, a function
  definition is sent remote.

- The 2nd request is handled, and we're back to the original
  request. The same function definition is needed later on. Tramp
  believes, it has sent it already, and trusts the availability of the
  definition on the remote side. But it fails.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 2 Nov 2025 10:21:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 02 05:21:39 2025
Received: from localhost ([127.0.0.1]:57947 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vFVDP-0002jn-A5
	for submit <at> debbugs.gnu.org; Sun, 02 Nov 2025 05:21:39 -0500
Received: from mout.gmx.net ([212.227.17.22]:54223)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1vFVDM-0002jX-D2
 for 60534 <at> debbugs.gnu.org; Sun, 02 Nov 2025 05:21:37 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1762078889; x=1762683689; i=michael.albinus@HIDDEN;
 bh=ws9SdABonk7aZMwYmXXaBrZ/CJAP1lfdmYMYXhD+EUA=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=G4WXiBvscSVzC2veMo3bkl4pZBTsU+rOcx5OoNVNaKKO67rcv+25Dzw1ElEy5VFG
 6zJLjVhts/6Ai1M2iwBEqUlj7TgwasWldzF9qcbau1YmZLB0QOhTJWCIYlboU4d3e
 2767Sr0EX1J9hItaOT4KL7PdUKEIR52mHKQwnC2BQKUqTnByTt7LtWiil4zo577L8
 a9yn0GDaKToVdeDgVUA7fj6b/8TsZmap5PTP3sbxuMOjX2faSfHjOVxL8ElB4evCx
 Pm3WP6/TSUbNmBq5fJnq6sudXxhb7nppew/jGIqGCZsIhZ+BSxKOEvSU5sR+0BKy5
 s17odEX+OgLQ9D4FTA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MbRfl-1vqlu41hiz-00ci6M; Sun, 02
 Nov 2025 11:21:29 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
Date: Sun, 02 Nov 2025 11:21:28 +0100
Message-ID: <87346wag5z.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:OEwwidwfykM493q16tOp8O9tGkIhbK0RGE2odxJMS0Rt4cKorh4
 d0Km6KrK6OmMGV1ofkN/ZTR55k1tXxwwHRUjKcKfQl4hclsDXF+ny97g4wj3cbSg4p4V7pH
 h3caUfEg4iKgwrANvNAMrEhM28rhkolhh1ZkW0+RT3BS3/JlOdREKOQ2hQ+IGmXKtCjrcDP
 SvJ8oQr0EKe53h4L3oEVg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:+mr5JXn2dBE=;cpOkpsecJlrc4fj2iY+lFhZ/usj
 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
 wyl1fkOHhixYNctrk/ojeFhaxw=
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

>> And what, if a dtached process needs auxiliary shell functions? Tramp
>> sends the function definition on the fly to the remote. But this will be
>> enabled just in one of the parallel processes. Tramp would need also
>> additional book-keeping what is known where.
>
> Btw I'm not sure what you meant, here. Won't these definitions be sent
> to the shell, where every process is started, right before doing so?

No. These definitions are sent to the remote shell on-the-fly, just when
needed. This reduces round-trips, because not all definitions are needed
in a given remote connection.

> Regards,
> James

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 1 Nov 2025 12:26:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Nov 01 08:26:33 2025
Received: from localhost ([127.0.0.1]:50506 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vFAgj-0002cB-DB
	for submit <at> debbugs.gnu.org; Sat, 01 Nov 2025 08:26:33 -0400
Received: from mout.gmx.net ([212.227.17.21]:44729)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vFAgc-0002bu-Bh
 for 60534 <at> debbugs.gnu.org; Sat, 01 Nov 2025 08:26:29 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1761999978; x=1762604778; i=jimjoe@HIDDEN;
 bh=gQOaJ5t5jp7DqMT50gpKoN9NZpul3/mKnpcg/WWrLT0=;
 h=X-UI-Sender-Class:Date:From:To:CC:Subject:In-Reply-To:References:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=mpvayWtEHnDyAv4oGKf7LMf0Jad/PFNt9GbazgeP/vBRExihGCl22lO5NQ4xczT0
 LKrlHNbDKePAT2yTveJkCyiy7tozG4IGTBRA8O4Qb+MyYlQnPnN4s36po8RXGkSjH
 wqcyKu89jeoSFJACtveN6RX/GocvBwwzH2Xf9crt4AMUwXolmPskNcX45owO0qSCv
 dHWBpvOicDLEuGjb1eiWolPPDvXtG9u/uizIwvIGsoPwweUD3UHnsyGBYftpJ2ibt
 Xohv1JOET1NoXHq4W7+q0plZSsmrg33kD/ZzbLi1ejzQyKsR85zMGT2SdclLniCBM
 xg0h1loa8pq7l15LWQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from ehlo.thunderbird.net ([182.60.228.53]) by mail.gmx.net
 (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id
 1MK3Vu-1vYLA73vIc-00KejH; Sat, 01 Nov 2025 13:26:18 +0100
Date: Sat, 01 Nov 2025 17:56:14 +0530
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN> <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
Message-ID: <6C31B72A-3CB4-4763-9F03-6820BEB22E03@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:13RWd2gZShwvJeaCzhcDoCuU9ZMLQ1cf63pY6aLTCVRKsI7oKeI
 UdIJJDEH9NHtSlU1ZgwhryHaXshssIQsZ9De2bWScba+s5bJg8FLpXA9bDGdfmseNEjaio4
 hMSCXFYhXfgGPZ62DvJBtOKvN7/sS/m29jX7Dp3U24y/69EubE/rM3s26eXV0QNZI/hEewE
 rsOSlDvyJt/Hc1+anSqLQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:A0xiCGneegA=;oi82aZ3qFm9WepxXmNTrAXo1CZu
 3o8eufjF72uCXlC/+Rso5EUquBbCOTRS08bGSvDRUUENeMWIjhicwxGWiSlvupl+fXdO94Rpn
 SbtyJnDI2AXXc6z+NezaYm4PmSdS6x1ZXAhiucTTNCqpixDQPv5RS+lB+ohYLArCpRR2DamSp
 xJUEIXgxfQ5Iw1VVgcl6Fok6S0LYV6xHgLVD0ZQVoIcIk4OJlJEFwBPwxljbzGOH4j+WCYQg+
 k4srS5DxtIOcHVQm1SmbWXuKb91ZYSTQlaQ54ln32UCcuSW8wK67ZRmXzQR+OycrpT9FxE5Yn
 7XIxS8KnT2qwxwoG5xUJfWmYi939xznAPGkHYdy9hR9wMWYff4CdLMMMEsQKzj72hk5Wg74lW
 DUtxTZnVtdxSF2y3Dg4KHGD+1h2E+l2F3UwNjiKcpD/K+2TZEMx3N09TyqsRa3wEt7LpDzpIR
 QQjLKGgJ5TJOgKEbxk3wsmKjObQ9FF5ReDROnmR5FJnlU2vYeP+ZkQsTtju6v4Oj9K1k1aDcM
 SrIfLEY6n/qbyH8SJ8UDFLBh2vEm87CueObXmJs3O413BC7v+adWD9/N4awuZfazt8nsVojhG
 40S0sYAPIQR4T0N/UsOIkxukA7Qk/gpW3S1aWSLn42yR1bvo0EGIMO5bQS6wOQ3pHIZplkjYd
 l6AtCsW3sykHu3BpOq8xoc0yuG08WQGlQ1T0I22ZUZCdJzmTdK4c4Beyeo221P9YHAHluCvnP
 ondgLGwdSG7EACcvqAPkBnvSqWjI7sZ4IMgeFy/zSGUtZ+ZeetbxZHJgSyAnn/FakVzDKGJ+z
 f0ueh4Vey6SCEm1Kg8tlvrmCTmfNuM/VHbXdHsKfrO91q33XvHWyvuPDuMX3VDBEFLhP4Dyjb
 FG/edzJX+XGwC7xpJSlRVFsxFzbsSFAqgkNqtlgFlG4/d4/vHtD98AKH7a7UoGo9e+y3awSvI
 yiJBIVleSj4Du4uoTKDMgbQzDYdTfl0M+1L+EKFdtdP5Zllei+OMut5ynHOVQ/E52Itdqhf7P
 2+4zjrtBNn/fYoCItae67YHigy+D2al+jDTdvK8sH2NQkzLwrLb52abG8LaHnfzupR3oU5YyY
 2kIHc/uuVcD3DZTyTUe1zyyyJZ7WVayrZYBYMRzOR3AFSnQ+eSl+Y78RiPS1WyWhSv9cUDFQE
 Rs+Ee6/zLxYmVa8xGmFeNCNMDZQrWbMLzqWWdr3cn5dKNloYPKmRG9kkeziywLLumm3RxfNrF
 4FIVWixKR57MJyKjVj8S+v1GQVrZKt4L/1wKMCmjOtoCiZOjyjq/aY00fBTXN8o4QUQjT9Sjp
 CibIHpnGGUNX5IgwJDTCekD47qu7Tam5nIRzmigqYcvI56K4htPx4PFZmFXlWK67pw799Ulzp
 H1RlIcnKZFWl0BMIBfkLosknGMzmwhSA9yy/xxlorlxZGsbkXEc+nrmrrpp/RDPs/rXC5Zgc+
 ljGwOjH0cDYTASnIOmuD3cA+h5eOOwhf8WaGMN0+h6XvJPg8yctNtvaJseySzHGkvfVU0mVIP
 7468VkVbMWsNcuesS0EzB70eUotJ08KEYrEWoW3LezBnMakIjVyiHE7uvEJlb8mR/vWsfZWsR
 yRqN+YNAdzA7iHQRBuPzRXLkdFmyL12VSn87VBTszXJpMdEA3EpReu65Tac3784jVVNYPibAu
 m4517b+VHcJ9GjPoA6ILKd1Ebp7pJMAiMnUEpN2XSzoh4UJ3Lziu0NS4p1RUtNR4sOoKYd4XZ
 mz5ot8CGSuFSFddNs45vqJt2bafS2D/hpbAePucOqnM/VyZPMEiRTXsTcZVZ8+ZpzF7qpBF+U
 WZNt8uckEkTtTVYRpGLQ5AbkbbiGqATVFg2tnf4veucc8TRjF5XHAbFIJbORiv/sn1xradutV
 s1zPgPKzNI2q2u8MtglSsdYq+AcvdBCl1w4j2d6erChWiDAqBeEo6s/m0eLvPlH92ChTfekO/
 tkjXthfZRIhx1OHObp0DLZikDRORrA2t4zClL5TYD/v02wCpM6J78hCHg0V8UAnetH5+PyYqt
 fSABGYAV3SX8dN7uPDLMnb/U7IW79/HvGeCPVK6YpxUhD1iDyTqWJhbUx2LMo14NrFDnLjHS+
 KaRMXpclHwps4js3ooETOYlcT4QAqoxc2F+nNDZxHRSX0Ap61E7R4ou1Vr60hAEHwAgawMKnB
 i4oAkRQ9uNHghwPml/EjujVCh3/Pzu1FZ0V9VK9J12L65Jd0YLq1cG1siEm9/BmCpjP9exJWz
 uN/yKh8vAOxbLfhsQddTjRQE3etFJypCMmTA28pamH8vNd60xIgo68ceNIlUo5euqDrBNxNLX
 qNeC8l2+mKNwVMR2J/NmNEWAx3eYxcg5ipFJjyQMdsViA3TisCQyzMf88zAGa3FZeJiUbmhFp
 8Ai3mUWe090wZ4gYWUh/jTj67bJATDFmZuEB9XY8nQIRg58Aa0UYfnM2ozewmkBFEObGWJNKB
 xjl+n0DCW//kuYiy0donUQJwzjR+mZbTm4gPZJzD0YaXyA/ynf8vhtscxLvK2Lr+BK4ucopGN
 vsRbbLAKKiczMhFvHuhZtRW3SzqBKDiiIB4OsqT2rLlRjIC59krpSzitW53oCplRhng9qE30m
 s2qjcrQYgPfPCd+0QHUxKSHBlBh7Hwlj6U1NadlnofXgCokkc+iqKzE8Wm8EE3blNueCzicyK
 Hns8dFaCzHqBQLNOgvd+nmpJhd3wqi+0KsGPtqBiD3cmV+cyZqHgVwOM7+aBxjIkdt1olVeIB
 yoNQYMnrvTp1ZdHuqkr3XR1xQw5TYyFgOrfhBSLeAsfsST0TehBtqmuKp8exmCkzQBs9X3Rew
 nwb94sJHi87ZsEcA2d859SkGQITX+17bMseHDSKqDBLIhO5iWkDd98NGb1GUB51gaTMmstv8V
 prazynFwjkNbDFfCxGKSR4KE4ky8WLWOWQJFXpZKJ3M+hTX8phK8/orEHsBl5PJrRakwpkRis
 Su8l4IA5NfleZQiE2Oi1RygvWhvGmTul/reLgyqxEsK4LsS+5rJC0SJ/w8bCtfXnoMf5yIbi3
 IZ+/QG2Wf+y91ZHqgtFTLvwMD1+SJg/aCDNDc7EKQuyVyiiGlkgm20uO0apVBtpWS8mH0CWXd
 vU6/WXwQBv12ua7qcfs+V5Rgj/d5RsnL/7qodvbMamus2tQpObm9rGDY44RGGTfPcLkL4QEke
 2eGm0WSoOm0+uItwesTA+M1mHhVK4GSOf+zu3iC7adXlHMmK29a9+YQgUkvjIfbJXwgElyavc
 BnphH0ub+jCE5AREoRPMsU3nn28jWpPisMaWtPQDevx08fEkToASFmxlfQkhrRCAcuDX4Yd+p
 xDZ/nc+ebgmJIvt+M+d4pZi2uC8Cy8QXl6xoO2IblgiDFIDyIOiktNPnL8E4btwkhkfolft6f
 ObCKO6YP60tGPyUzlfxNSnzaCmrf7LAvNpCbKYhbOw7kjuqsxE/4PjeqfOCrjJNc4xJnyjAAq
 /UhYU6LXypA3wrfoQ/K9ngGsb/Pcl9RdAGCD8SqwTudPtaob/WiWl7Vgp45hHH6wan72+DdQJ
 G0sjvwrvrMxa0D1QRrYUMXXtypmwysJj6aVEWG8e8PewXWS6JgWZzf+li9I/RdMnnZeRoghqN
 laZssG/9m80cIS2BJCyc7kKE9WPtW1PPPI9HYPyLa2vHN4dSy0kweHhfJOOzx3emQOAiV5Ywb
 MQDUa2d9oa+NM5eI9tIo3pinAu0TD1LwAXBZWdlaw9uVGCm8Hh0qTgkdFVBMO6H08jvf+wABg
 +SzQ570WzdCZpY87CoKXuXRtjLTIWvGm2ovvC/Bj2dlGqfmXdBtNGDtKDvLHi7Qmmwv+UNHzF
 lfFFNec4YJ+OML/XRdJ765eiSsKEMa6Mz6o0UEQRoiirwfe42yHFLfruUml5nuAwZiVrg2Ms3
 8BQGNVKSGIJ7VYMJcxcXR8e2+M8McwxHa+FXYzj/ORHZyo/8uTKYrMzbqrnG/m8F/+RtJDcBz
 31nda0IqZ/XS6xHC8UO30g16opnKw4RoV/TdIHYkTeifepLcFJLmjz8yuy06YkkkHU8whCDqd
 tO16/pZyE1euArjHHle14aDoS3TlQABEq1Q2s8KW15bN0q1oLzQE0X8khggqzCSptCt3snqCt
 nbg19rCKT+2na9X29ay3i4VCYZxTW5HVm/6vOwWLL6SBB5S3vGBmyfPobZMT0zhG0Z/gzjk6X
 w0NiTcDBH2dAd2+vCBnzXBD51xsyZDMT4bsIQ2yJycoW1Suj4wYmZGaNQRRZcVlxjFPR90OUk
 JR5paPqq9NaGNN5IEyBy3jsxuyctPh2Hg6BczeXQOuCBW/ttSDjGTnkJbpXtV8ziRJC3QecVx
 miTeDNt1oSQmNn/farpnJk7Cy2jeIBNe/HqnVhf0gpp592ZRJw01Jq/hV01P32hRLqdwF+oGC
 PIJi+fpegPOZ1QDR0/V0/qj3ltWnI9mAHURQpH0p9WsGQEAjPrhCKy2fm5eruS+0LjvIOziVO
 SmIU2zl+gRbsS5DZ1aFhNbIb1DM1u5tl81FqEahs6PIpwoJ6gKyqDmQEkjkdY09XVapAK0tEL
 cVuHWbTMHiJmSwqM6bQUn8viXGIzuPYdZUhBNzSgH7jdYnu9ZFm/CxDe4BBf5EthmCAncU8p6
 JyJmwNMt6L948RlJ/sESfee6KI5sR5n3Rfj2YwPutiz7VDtf+O61myqyTJPe4MJtp8cHkZh95
 OjJ07HYGICvPYz2VfMjOzGT4X/dFt3FDEDx6yRBlE3eu1XRTlGO/kB0iYRwjqa0mj0y/5kUlb
 Vyq30nHcPY0FacE3s/U5qSoioaI4TuLM6CL+hE89utlGAUylbmpnaIDZfW4ppul7u37ElAknV
 7ffMdvpIuXQeQuS3lE8pJH/ImFQwe9PxS1We99eRsDU4zDJWLrePlSKQUiWtSrK9fjviBvdp9
 gbFxa45kMSJzksullzg+IbcXqX91ZlgwYorNVHM0gzdTnxF9LCY0xERasQQDwrE3wFvb7iCY5
 TymUs8SwxqJ2LUk9XqePZ5hBjp7i7Foz4OWzBxoDGOmu7iyw+twXlzlW
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On October 30, 2025 7:29:43 PM GMT+05:30, James Thomas <jt> wrote:
> On October 20, 2025 6:24:17 PM GMT+05:30, Michael Albinus <> wrote:
> > James Thomas <jimjoe@gmx=2Enet> writes:
> >=20
> > Hi James,
> >=20
> > > I'd only meant this as a way of avoiding 'deadlock' in the case of A
> > > waiting on B to proceed=2E
> > >
> > > FTR, a better scheme than the above for that might be:
> > >
> > > - Start the process via dtach, with stdout > buffer=2E
> > > - 'tail' it in the background=2E
> > > - Use dtach -p to < stdin to the session=2E
> > >
> > > To temporarily switch to another process:
> > >
> > > - ^C
> > > - Clear the buffer=2E
> > > - Kill the 'tail' process=2E
> > > - Repeat the setup above for the new process=2E
> > >
> > > To switch back:
> > >
> > > - 'tail' buffer, starting with the whole of it, in the background=2E
> > > - Rerun the dtach -p=2E
> > >
> > > (This runs the risk of a 'race' of any input sent being stale becaus=
e of
> > > having missed later output by 'tail's delay=2E But we're usually sur=
e of
> > > what we send in this case, isn't it?)
> >=20
> > This sounds too complicate=2E We're not sure that just a one detached
> > process is sufficient=2E What if there are several running timers, all=
 of
> > them wanting to do remote access? How many dtached processes do we wan=
t
> > to handle in parallel?
> >=20
> > And what, if a dtached process needs auxiliary shell functions? Tramp
> > sends the function definition on the fly to the remote=2E But this wil=
l be
> > enabled just in one of the parallel processes=2E Tramp would need also
> > additional book-keeping what is known where=2E
>=20
> Btw I'm not sure what you meant, here=2E Won't these definitions be sent=
 to the shell, where every process is started, right before doing so?

Oh, perhaps you were thinking of 'back-and-forth' switching between 'paral=
lel' processes? There'd be no such thing here; It's a one-way street: subse=
quent processes have to complete before resuming an earlier one=2E In that =
sense, it would mirror the control flow of the single threaded Emacs itself=
=2E

--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 30 Oct 2025 14:00:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 30 10:00:13 2025
Received: from localhost ([127.0.0.1]:36164 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vETCG-0002om-9A
	for submit <at> debbugs.gnu.org; Thu, 30 Oct 2025 10:00:13 -0400
Received: from mout.gmx.net ([212.227.15.15]:47383)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vETC0-0002gT-3b
 for 60534 <at> debbugs.gnu.org; Thu, 30 Oct 2025 09:59:58 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1761832788; x=1762437588; i=jimjoe@HIDDEN;
 bh=5S4SJJfSl1EGbFkASBcntI6cvqhq/I9z9f+2Dr7OmgE=;
 h=X-UI-Sender-Class:Date:From:To:CC:Subject:In-Reply-To:References:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=bYkIRkWuWHt1NFDFTeFtA1lPtRz4Gz5vM3zuI3jKRUUnFdkWHMGayeMRUA+aJ66T
 0NAOG8KhywEg5tzit68UukPlQlfbxPEGPmGRgBOE1uvJznl01kwhpy8cMFEkS7Rd4
 UAfSPhRpg7Nj32n8N0eaKei7UMPAz+MXuM3QUVj/LMHPOPl6PBgAbNFEJRV3gj0Ut
 PKkfyQHIDRQCCQjLEXX3w5PZcPmgvCFoQvwtNBRKIZTvCoJgyVqZoUI1G8pA/EkWd
 PpjroqJcFK+5GInDFpmzA04dmG2bXoVX4QXkosK5ZL9bd0paZ6WS1zrKDHEGlYA9a
 xLnrT+qEFYVItto66g==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from ehlo.thunderbird.net ([42.108.25.8]) by mail.gmx.net (mrgmx004
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MYvY2-1vjBKN3HgO-00QFIW; Thu, 30
 Oct 2025 14:59:48 +0100
Date: Thu, 30 Oct 2025 19:29:43 +0530
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <871pmxsphi.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN>
Message-ID: <815F232A-BC39-4546-87FD-045382E8EDE1@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:jZdHl5gvviNkWfwxTMKMTAA4E7KcAwhYVrN+leC/2nmhyvngw00
 chQK8ioACk9Y+O77FVUfCN/SFzm0hNkpSGv/MK1clg+oNdXnNt4K58Sd4jYezffPztKwPW2
 jr9VTpl6emQL7PhLgRpnm+G07j52Sozb3XulH3rdX5lUa6K8W/jlmwjP+JHdgWAgTWjCmd/
 F688LD6wKfrfAaxcPlq+A==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:SdkNLbbJLSw=;9hrUAflViC6i/kuxJfCRR+mkPB6
 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
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On October 20, 2025 6:24:17 PM GMT+05:30, Michael Albinus <michael=2Ealbinu=
s@gmx=2Ede> wrote:
> James Thomas <jimjoe@gmx=2Enet> writes:
>=20
> Hi James,
>=20
> > I'd only meant this as a way of avoiding 'deadlock' in the case of A
> > waiting on B to proceed=2E
> >
> > FTR, a better scheme than the above for that might be:
> >
> > - Start the process via dtach, with stdout > buffer=2E
> > - 'tail' it in the background=2E
> > - Use dtach -p to < stdin to the session=2E
> >
> > To temporarily switch to another process:
> >
> > - ^C
> > - Clear the buffer=2E
> > - Kill the 'tail' process=2E
> > - Repeat the setup above for the new process=2E
> >
> > To switch back:
> >
> > - 'tail' buffer, starting with the whole of it, in the background=2E
> > - Rerun the dtach -p=2E
> >
> > (This runs the risk of a 'race' of any input sent being stale because =
of
> > having missed later output by 'tail's delay=2E But we're usually sure =
of
> > what we send in this case, isn't it?)
>=20
> This sounds too complicate=2E We're not sure that just a one detached
> process is sufficient=2E What if there are several running timers, all o=
f
> them wanting to do remote access? How many dtached processes do we want
> to handle in parallel?
>=20
> And what, if a dtached process needs auxiliary shell functions? Tramp
> sends the function definition on the fly to the remote=2E But this will =
be
> enabled just in one of the parallel processes=2E Tramp would need also
> additional book-keeping what is known where=2E

Btw I'm not sure what you meant, here=2E Won't these definitions be sent t=
o the shell, where every process is started, right before doing so?

Regards,
James
Hi Michael,
--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 30 Oct 2025 12:30:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 30 08:30:18 2025
Received: from localhost ([127.0.0.1]:35100 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vERnF-0005rM-Em
	for submit <at> debbugs.gnu.org; Thu, 30 Oct 2025 08:30:18 -0400
Received: from mout.gmx.net ([212.227.15.18]:58613)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vERn8-0005jQ-LM
 for 60534 <at> debbugs.gnu.org; Thu, 30 Oct 2025 08:30:11 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1761827403; x=1762432203; i=jimjoe@HIDDEN;
 bh=OSgnjY7/Rkn1oglNk+M3oos41W/v/HEs26yeoPaTRpc=;
 h=X-UI-Sender-Class:Date:From:To:CC:Subject:In-Reply-To:References:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=VSbGmoolOMwXsEndObtNOILPJIrZdqp1XzNDfFImTzgsXJWdlETOwbMfyTMckEeX
 qilU6VkV+tV7Wey/iF7PiYSolUw4PB1J7wGtHwSRcBIJz1qT6qrECule9F1V3m8zt
 j3oQ7EEwSBhXP7C01PJzT92mVX6A90pIjVzvD75ijD+2uAqA83A3DTgtVMt2CdOvJ
 irc4v6hDNYXnOmKhyZr65wC4Cme1EclCMwUwEqJgZaA/iugwlhX6ZloOVcXJyBPz+
 u8UgGUw/vo+FVqeCzXxX4heTnrQ9+8NhdlAgwx6Mmpd4pzkaFXc3qmWRV/r3zx6KQ
 tjW74ZdiQQk4kh7umQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from ehlo.thunderbird.net ([42.108.25.8]) by mail.gmx.net (mrgmx004
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MEm6L-1vT1rF2xxL-005z8t; Thu, 30
 Oct 2025 13:30:03 +0100
Date: Thu, 30 Oct 2025 17:59:59 +0530
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <871pmxsphi.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
 <871pmxsphi.fsf@HIDDEN>
Message-ID: <6B98DE3B-0A91-481C-9A7E-09C58980D105@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:nSC4iS0bqHUxV4gcegTRikX922KvBYERd/2yfSM/BaYhsceFh/L
 TxPWz8ci/ltCcXriLxWiDd2y/o7d2zVpQ6UULAGpJ6iAq/HnG4OwAtBKwf6WXM+qI6wJMPl
 JBbFjTbkEEmxDKlaEEWm90pkbgPzkRYSWuLfumj/tbW5Orw16ab3H3OUaGil2D5TCu3UrDb
 r6td7AeVvc80RsyckvMNA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:dvsJurEn6PA=;qaNL+RBmZ9CrZn68SeBtfIrtwq2
 VMfs6Ofzac+GswjAPPi7vwfBNIiS3MTWJizob0A0WpqvJckaZJol3GqCNTuEtXU/pzrfKg5LQ
 YTYn6a91hZSAOcZrNpn2pE+NHdCsoGxl+uHbHJD04fh90EALjkM5GEUfPBigf0kca+ZOjysPH
 Au9f1w6L7Q8bt2SVeTX/6tVz78Be70VmNXTIi8cDyV2hlXzqsS9pUABqxQHgw942GYf8mSVkQ
 nRTjrqSNjzkz1CnyItkK6IGrjMhubJe/EHsD9yQ1vGVxIT+Wh4Ms2dQVA6qeflyq7zBSwhbhU
 XUQHeXbgAbvvpu+Hd/Dyd7WIAImP4/e3gzEi8Iq5PmMz0YlY/G1yS4VJDvkO3t+CF3cdsKLCB
 4nFYZtMvK8F53h3fYJHqPQGe5wP8j8tOBFdT8MLnrIPjjUMDYMKabypL3VeqlA8NMhrZ5leGO
 gaNOcYCGH7eHmqzJnblmnrh4TCZQ/sxfDLxZWgBxmQOS046kcfHyynMGBrJYXcbwVkuoga/od
 DQRDuo0M5GRFEz1rdcGbetyoN+4IuI1LqhXTDCpmD/e8yAxcpWD14OapXiWrkag6EuAnk+ymO
 TU4c303vUIsqvcFYO57syWs6rQevxotHhQBXFYraeCXVWa12qjoL+b0Ld9fOBsYBrXqlH5S8w
 981DqLpLbgeiOB+JKG0nLotbx1the21f93IlAg1bxmsqRldX0cSs1UVU2NSMarOa1TO03wTwY
 otSp6BzvFPqHZV1nyccFc3Kk+Cb4DayYl9TpDMeUuotHY3Y1neZEG1vEL8RM2u+cMH3o2dYIr
 PX7xV20kES2dGbSnNbfau1aWOTjvCyKwPBH4gq/X9mu+uVRxw/iVjTbNXWSo8MWueWFjvQHce
 lnFyVhPAcY+WVWece3TavO3yzyXBE0mxWr51auQQACLHPK0g1MxvF3AGUo45FlFYZQZC1RCqV
 IXjF5rxx/7onyR4pOROG97SrYfCBvgw3ml7z7W4u3EKUAy0l4mdMb2xpkVc1CP6TnKwWQZKJb
 HffT5/VwQODLytEk6qarB2J0vuLMR2yZJ4z59SRUmgGSDrdy2TdePLO1Mp1h/usCELYOjOGc2
 5/rz6VgGS3YkEuaMUr8Pdv0jf1cPxRqNgYbEFy14xZ6rYA7KcGvllYRUt6dT5WI8U4gGk8Hql
 WJGqdBnew9wff1LyHInbVfMufCS5nZ25fpCrvc8mGdHJwEL+BvKyuXjSw8wQS39PgI8r9dedB
 jUtKMm5V3FXynzUbSdiW1gK2bJKiq8FbekScFMasnerCKlLhHxLkkecJElDRM0ntGm5FiSMqe
 1CBPFPoyLC6F5Pf06uky6+FEbZRgMSw1D73FRuf0q7ib/AnIs79YG7EAeuZAILqA3nerXQvxg
 DLGfj4pMN7UXnTrayx7/Ansiv4pnutATHTuFeGNgw+GaH4IpIneBbjUHeDHZ0jKRgchmMzkRI
 NBOmfd2H+9i2p6mlPLYZa0wAJs4JVqtjz+taUzByvy1MCm49VHyhgg5Il+C3TPcISMA4jP2Rm
 B6HoNdedbL9AjhYE8ZTwh+81kveRnG7C5QJ2pqqL9wJH5mN3wDX5QmmqFKhWCWtHEpNBCvrOv
 2WWOD/N83hrcT8RAF1XHSdI42AjCN+3yj0pG34Gbi6ISX4PQy1zZ3YJfh7taRRdq7r0ljFM1l
 F1OgWw8XTvXv9NLDC/tLQRfw9Qm/AnQVOORePApB6Kjj06GMV/8MgPfOS2/KETsU77sALHIMF
 oThZCImsKSxH3JQjOjH5kaFxzrq04WZsfsbEF003+suVXv0U3YsKNAcwbrUTsrvVp4DNX7xFz
 yifmu0AP3iJ7Pzn6PBYodndzdYsYsIY7T0b0C+R8Xbe56KyIIbThuP6aUZmY99XNeIpkZNuyG
 AkfeCpACqaQPsl1ZYjWW70fy+g51wX2Jd1QC5yNcgGy8eLw5mL9GSktLqrMcjNDFXfcX6G0K/
 PXQaJTQGGTOAQ2GczqzCL7vccv7aG0ClZ1Rw3VoIWiJvTBZNCSHtypTvbGnVP4OeHH4monMqJ
 4ZndOMP1kgIUjkx/hPUI2Nk4moQy1ZEt/rrNptpquvz1flL+1tEHGfzKU1NX7j1PrUKa6pJES
 vVv9v7Nv7NydCvSUyJ+doA5GdCZBpZXbwf1EbI9ItVI1MLgBnow6JFKK8gySwAxks+0FWkFqy
 i/crSMjIW3pSPQbVFjItaW6MU6UcuwxQCOZb8ZLO5bXfjCApsNsDA+afmun/H+MNBLYC5OV8r
 XJ8+64UfLFMPdMroFHvfY6cdD4MH0PBdARKzVEya/UsA6tbab5cwslL14qgEz5tHhXAB6OHPE
 6TiASwi0L3cAYqW5649NPUabLzcLb5BES05JOEY+H3qb2wjnemIea60cKZ65Hdk/yKA9AZ/fd
 xBOlg1eJAa3cuLKeWM5B7E+rcGwfOfZcs1NKBgrwTEry1bOStmpVi2XfFGrWvpDKSf+l3aTKl
 VmyKOVmH+IHmSXku7JNHE3/5CFxaegZzYx9/c9Bq9fuSjDYGqRD+5SFjLvxDnQIFRx2gscDan
 HLqSaOYV8GVHHA+XiLw6kXfeuPR8tatYwTQCMt7WmTqlXcD6Zb2s5WM5bCLvDSqTFBgOUvpFM
 qaLs4190QTMWHb/Ftk0BKidpvXbtJI2d1O2UnMJZbu1or9C0mS43GHu6RdC/SRJj1n/a12mpM
 yEpqutFfr1Q+SM796I1xXUagqdnShyLrPCpsqj5iqu/EYU3pyXTaXqZzwh/MCnG9GDD9FEGVY
 u+ws20xWxnvzBf0lS08S1+Kc0pb1s/eENtbT1sxBPyU0k80N0oIPZgxUDPNbnIMoQYt2luw+w
 n6LgJeRqxtwCQOShgZrT1CBsWgjui2LX+IPl8zDrU57iSsxj3AS5J8v3u6mlov9QxBm/oZXDu
 xvLTnUnf/s6He4Em3jFluRSG/WdIHA1aj1UtDwm6Ybom90iWH7r0q+IiC54bZp1cDA4RDtAPG
 QVCRm638dMRSvCllc7POqYI2Uc8WBqrhyUqcW0fnZE3xNeyeClbYg33jVo0HM4apAn6M3DNkp
 bAh3kOkn409eTg0JV8evePNzUODLaO80nx+yPHsoM95Lh2H5FOo3eYiertedIRcT6k6gJ3cDC
 6XIS/6v6oftpyqazYPOVF55JjTKM6LLwEElXGWOT9DQYFWugEVQyIc9C4VM+LsMNM9sB5hEjD
 eIBqrrvZV0QhFkXjV0bj4cyU4T4hqVrDAJteTg1e394XKEiIA5qLx/w08OetqUUV+L72LyWdy
 fiJteZMfUjBbeMvnNirw7x6mLU3ZRTbN+F4Y3bTM46zezz5K+Pr6IYEEwkUDN1VoTzSyNoxjh
 hAlI6xPz1PEK6c+ywQzp+GxLLcU8FkUfXQtcqjFxiYqZrfVyKQqbyncUexWBSftVYQgnXn7pR
 60iXgT0fh64gLnyKQ4zYG0BfZLso1ckMO6FWTGoT476rHU0lMIU0B8sNfOUeCXSo0zpFWRxze
 WQ2Nf69HzY932HPY5F1cja2M0J7XzQrjucx2E2abdQgVl1tXMRYnMXY8KYShfVGlMKbDPsb7c
 SGXQLAKodAlyWQfUD10HT4a6UPvAAta1tX0aq9Zp3dAmHDNYax8x2dMcxdPIRS5Qdd7b3g0OB
 GleeuP6+yfxoC/TB0dpcaOKom4yvewdna6MDIKSsRDLPBL3jkz53D0qe7EuFMW3EI6tWQ9dvG
 U85CZS0Tc7ONJuHnmVmgGu7L/lGZ8Cu5XE6r+Yej6IbKXp8UgtqBQ8k3+bYKmuJa7hq6R/g9o
 DfU/k+n/FStSaHIrv2FxVXhZNdsykQITc+RzkHpNQy9oEFGQW2Q5CWEdTPJdjMry0h3fU22j0
 gtRdF4RI5KvrQmZELOnAMKUroxgz5ZBUdfoXZaelmbVKEGpO5qMWOUOtuBSPHOQOqffYk1X7N
 QY2Ssf4Bt9hTrkW0hb+SpFL3bvqqiX/THb4aAw+WIvypYlMhgcXqQZXN/jsCr7VwaZvJb6DcN
 091SMnSKHL/Bmx5rWKU1KZ9NkJ/4brVtbdGjDQOX3NEYPO41+ku2eJAn5oU8a57CCSVEB0E7Z
 QkN80DyX6vT3hUMeYLevHgBR133Ze2+JgtCgrrW46fT6jAYzobuE+FheomUqkliGUufOvsdyn
 WbOljSHxdqG+WY0VLQ9PwNYku7VxXpzJGIPWRqtbCdW+YC+83K6YGeEGn7CeabQCTAQuQ0Zo8
 Ms8HQZdd7L4NpiIPhLiF4AfQtKUw2uROrm+0wHTiRcWuxVl1LGic2sWm3CbxG8W+bDPQGE2Nl
 KqAWEn3aoBmd7kVbjegYX/KlWleQRTzXwT8D/+A04uzVXEQoP9ihQD2VWiOWN3FfI3kNHoOgi
 QE6nXZSC4shuw633XgpksRaU7TaLZlgsEaAU87I/vrKy+geEEiCojxADdMBYz57s1z5NrazR+
 J4nV5RH2jGSmJvQKA4JxaInBZkvoDjANsVC44PoRXStw2v00cpVWbQd5/xpi2oZNicx2kyOB7
 gpfZ6yyQHITcujBZ0Ul/zuFYFZ2Z0ofTusIjc2Ohj907aauwoxM/5uzyAePyvAkMZKlgto0rQ
 IbourZTX0DcL2XkJ7DJsk+yRStPiVrfe6fQ1eWrCllHM5ilGTGxqx9D9r88Bd8M6h6+zLHOrq
 8q0Yf0dn0tlv+4ZpkmEYQv6Tfy4B6ZUKdUr47a4q61/f01OFCiq3/4XN4ezvg8OC+3a0UL5Yd
 3CM3NXio2H69GQnpd0F7fVl2cPPpX1/hlVVbiHkMmCXWBLgzarUJvBk/iwHpVnRXpUzZXnNBL
 ORw//smL0pDMt0EpkMztqTk+nv1oQ6LU/AXeVoPYCMQwbGNJoFFUXAK7QYTJUGc8wckWQ+KFc
 E9Z7PODl8w7qVxTSUFjIxgqPB0zcwYSasg1eROx1OqSTK+OEw7wTe9gD69yDWFXZb/Sbz5jmm
 2aG+Ti1Z1UtW/VEl0mKvNEDKXyIfgmUF92x2cMP1Lwt+ngTx18ospPKjJo2nbXnXJR378vCAk
 eDv0m3hNOmVdpBTPELiwBrA3L5YzUXDTLWPpIlwvi54iUA5po/N9Ua6v
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On October 20, 2025 6:24:17 PM GMT+05:30, Michael Albinus <michael=2Ealbinu=
s@gmx=2Ede> wrote:
> James Thomas <jimjoe@gmx=2Enet> writes:
>=20
> Hi James,
>=20
> > I'd only meant this as a way of avoiding 'deadlock' in the case of A
> > waiting on B to proceed=2E
> >
> > FTR, a better scheme than the above for that might be:
> >
> > - Start the process via dtach, with stdout > buffer=2E
> > - 'tail' it in the background=2E
> > - Use dtach -p to < stdin to the session=2E
> >
> > To temporarily switch to another process:
> >
> > - ^C
> > - Clear the buffer=2E
> > - Kill the 'tail' process=2E
> > - Repeat the setup above for the new process=2E
> >
> > To switch back:
> >
> > - 'tail' buffer, starting with the whole of it, in the background=2E
> > - Rerun the dtach -p=2E
> >
> > (This runs the risk of a 'race' of any input sent being stale because =
of
> > having missed later output by 'tail's delay=2E But we're usually sure =
of
> > what we send in this case, isn't it?)
>=20
> This sounds too complicate=2E We're not sure that just a one detached
> process is sufficient=2E What if there are several running timers, all o=
f
> them wanting to do remote access? How many dtached processes do we want
> to handle in parallel?
>=20
> And what, if a dtached process needs auxiliary shell functions? Tramp
> sends the function definition on the fly to the remote=2E But this will =
be
> enabled just in one of the parallel processes=2E Tramp would need also
> additional book-keeping what is known where=2E

This was motivated, actually, only by the narrow use case of bug#61350 whe=
re ControlMaster had to be disabled=2E I saw it used only for a long-runnin=
g first process=2E

> No, I'm not convinced=2E Perhaps somebody shows a simple and robust patc=
h
> implementing this approach, and I would be willing to review=2E But unle=
ss
> I'm convinced, I won't start a patch myself=2E

Of course not! :-) Sorry if I seemed to suggest so=2E

I just wanted to know if it was known to be impossible for some reason=2E

> > Regards,
> > James
>=20
> Best regards, Michael=2E

Hi Michael,
Thanks & regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 20 Oct 2025 12:54:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 20 08:54:30 2025
Received: from localhost ([127.0.0.1]:44613 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vApPB-0004Yx-EE
	for submit <at> debbugs.gnu.org; Mon, 20 Oct 2025 08:54:30 -0400
Received: from mout.gmx.net ([212.227.15.18]:46821)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1vApP7-0004YH-Jo
 for 60534 <at> debbugs.gnu.org; Mon, 20 Oct 2025 08:54:26 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1760964858; x=1761569658; i=michael.albinus@HIDDEN;
 bh=kyk3T867o1G2jZ8rs8VCd3ITPEJ8DBg8KWpL93brQcY=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=gqzJblq8RvYzhs3ohLHn1ZgDg+fq5DJ28Q3JSoiQUTxstf8yrY0rw2zB/j9JQ/iF
 pMO3++MsuNWx9Rkg/iAlkI+k5KJ7/6gYDFE0rpUbdHO+iy1featzT3lXTuVtouVrE
 NmD0y6mRt1IwjJrTODqMRkHsT6d2aEPtYoWf5d5+qj62UtQ7z4SxHQOOQgvIM3rMF
 y0PINelez3/fKIKQmWGKYkiuuWzBrYkU9aMeHJiSEI5ascbP22eDzP8OrIlRshY8u
 LeDqyBY5ubnCujfkMeJY7VAhYjfLGfa/xrynJVI7LSYZY3LBWEmDJpxaLW/lIqKqA
 l8Sw2gzkRmjPeQB1Jw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx005
 [212.227.17.190]) with ESMTPSA (Nemesis) id 1N5mGH-1u8vGT18ah-012BvP; Mon, 20
 Oct 2025 14:54:18 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s2dcy6j8dms.fsf@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
Date: Mon, 20 Oct 2025 14:54:17 +0200
Message-ID: <871pmxsphi.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:WvhIq7Vf5VoR3Xve7w27zMclXldx8d/x3l2WxXUtRGYGGH/OB9C
 hgUbGMsYkE+vzClhRyEssu0o6CAviE8Foxx4zgWHeSLDu9POVL9pc4fII83/QoKZVVXHUWW
 OPfMVRnVchb7e4GtMIeQ1bH1gHajSFO9rptSPqX18v+QdAlKmiPUf06Z8+cNjgRuKN3WQVZ
 bmXQeDFN00T92IhiieiAQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:hHGVmdfHi6k=;w5ov/zexgROpPZSKsBDnJ5R410E
 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
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

> I'd only meant this as a way of avoiding 'deadlock' in the case of A
> waiting on B to proceed.
>
> FTR, a better scheme than the above for that might be:
>
> - Start the process via dtach, with stdout > buffer.
> - 'tail' it in the background.
> - Use dtach -p to < stdin to the session.
>
> To temporarily switch to another process:
>
> - ^C
> - Clear the buffer.
> - Kill the 'tail' process.
> - Repeat the setup above for the new process.
>
> To switch back:
>
> - 'tail' buffer, starting with the whole of it, in the background.
> - Rerun the dtach -p.
>
> (This runs the risk of a 'race' of any input sent being stale because of
> having missed later output by 'tail's delay. But we're usually sure of
> what we send in this case, isn't it?)

This sounds too complicate. We're not sure that just a one detached
process is sufficient. What if there are several running timers, all of
them wanting to do remote access? How many dtached processes do we want
to handle in parallel?

And what, if a dtached process needs auxiliary shell functions? Tramp
sends the function definition on the fly to the remote. But this will be
enabled just in one of the parallel processes. Tramp would need also
additional book-keeping what is known where.

No, I'm not convinced. Perhaps somebody shows a simple and robust patch
implementing this approach, and I would be willing to review. But unless
I'm convinced, I won't start a patch myself.

> Regards,
> James

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 19 Oct 2025 09:20:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Oct 19 05:20:13 2025
Received: from localhost ([127.0.0.1]:58187 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vAPaG-0000Z9-2k
	for submit <at> debbugs.gnu.org; Sun, 19 Oct 2025 05:20:12 -0400
Received: from mout.gmx.net ([212.227.17.20]:47513)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vAPaC-0000Xo-QA
 for 60534 <at> debbugs.gnu.org; Sun, 19 Oct 2025 05:20:09 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1760865602; x=1761470402; i=jimjoe@HIDDEN;
 bh=XwPV9Xe3X3NZUBOcI0ZpbW9nTPL+RN/wcBWtJogp5B8=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=KuKEQTYHq/ckbzaycfOB11ZerQBHkb9WjHJT6Kbsjx/PHJkuPV4X5xquI5shJpIU
 CRqpTRpj0pbred1eO45im8nW+iueWFFX9JAtq5F4v0U002AlnMj/C3U8QFHva/Snz
 nvovsz1mUHd++VPY5SSAtOcUJu97Ag/ai9GyuLzjkQYFQtwrlxvbIyn5uRJDcu/2n
 PQbgCQFkZ3lPcjfZdgBIm1oB0hoeKQuE1xwdM4EBGoPIDb6Ef9jIi+7DaY53nkxe1
 rUCtwo5R7m4RwwgFS9f/BiPFmz/N9eJAPUX8gkqydICmC3G3ZngntcAsrxOpX+bIv
 Az4riJw2zUBe3iZDoQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.27.41]) by mail.gmx.net (mrgmx105
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MUGeB-1uksDq1vEZ-00S5xR; Sun, 19
 Oct 2025 11:20:02 +0200
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <s2dcy6j8dms.fsf@HIDDEN> (James
 Thomas's message of "Sun, 19 Oct 2025 14:36:03 +0530")
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
 <s2dcy6j8dms.fsf@HIDDEN>
Date: Sun, 19 Oct 2025 14:49:56 +0530
Message-ID: <s2d8qh78czn.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:auc1FkV4tjxD8h3O/IDMMbFz0Jqvw4bSRAX1FY41gyBZTPOsQK1
 kMIyIwK2fKNUOTSYQhYhEi9naqV0i3PdQQrHDwUb9JFJrX/3mkkyNDVrZLpnSDaKO37B2OZ
 IOKbt6O6qzfPMp6uvnq3VvaSKfdKn+R/M/pZeFmWOQH26aDKVB0vwq5aBjEee0kupiDBLkF
 67JuBCrtW6hAvHAKyB0Dg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:iElK+koevFQ=;zN/JHco0hooQDFYzxy7iMHjNcM6
 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
 rZ3PpK9wcZCEcKqZ3n6Fu41odk=
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 2.9 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview:  James Thomas <> writes: > Michael Albinus <> writes: > >>
 James Thomas <> writes: >> >> Hi James, >> >>>> > > To detail (AISI and total
 guesswork), for the missing output >>>> > > between 'attachments': >>>> >
 > >>>> > > Rig [...] 
 Content analysis details:   (2.9 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.20 listed in sa-trusted.bondedsender.org]
 3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
 [42.108.27.41 listed in zen.spamhaus.org]
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
 low trust [212.227.17.20 listed in list.dnswl.org]
 0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
 [212.227.17.20 listed in wl.mailspike.net]
 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.20 listed in bl.score.senderscore.com]
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 -0.0 SPF_PASS               SPF: sender matches SPF record
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (jimjoe[at]gmx.net)
 0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.9 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  James Thomas <> writes: > Michael Albinus <> writes: > >>
   James Thomas <> writes: >> >> Hi James, >> >>>> > > To detail (AISI and total
    guesswork), for the missing output >>>> > > between 'attachments': >>>> >
    > >>>> > > Rig [...] 
 
 Content analysis details:   (1.9 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
                             [212.227.17.20 listed in wl.mailspike.net]
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
                             low trust
                             [212.227.17.20 listed in list.dnswl.org]
  0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The
                             query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                          [212.227.17.20 listed in sa-trusted.bondedsender.org]
  0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
                             query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                             [212.227.17.20 listed in bl.score.senderscore.com]
  3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
                             [42.108.27.41 listed in zen.spamhaus.org]
  0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 -0.0 SPF_PASS               SPF: sender matches SPF record
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
                             provider (jimjoe[at]gmx.net)
  0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

James Thomas <> writes:

> Michael Albinus <> writes:
>
>> James Thomas <> writes:
>>
>> Hi James,
>>
>>>> > > To detail (AISI and total guesswork), for the missing output
>>>> > > between 'attachments':
>>>> > >
>>>> > > Right after detaching, attach a second background dtach
>>>> > > 'client' just to collect output, (and detach it) and cat its
>>>> > > buffer file's contents prior to the main reattachment.
>>>> > >
>>>> > > If the delays above are problematic (race conditions?), do it
>>>> > > beforehand at process start itself, and clear it ('bash -c ">
>>>> > > buffer"'
>>>> > > ?) right before the main detachment (in that case, perhaps use
>>>> > > this
>>>> > > only for these cases so that the buffer doesn't keep growing
>>>> > > large).
>>>> >=20
>>>> > The problem in Tramp is not the "missing output". It's rather a
>>>> > race
>>>> > condition. Imagine, you have two funtions accessing the remote
>>>> > process
>>>> > inparallel. There are several shell commands needed to finish
>>>> > the
>>>> > function. For example
>>>> >=20
>>>>=20
>>>> AISI:
>>>>=20
>>>> > functionA: "cd /path/to/dir; do something"
>>>> > functionB: "cd /somewhere/else; do something else"
>>>> >=20
>>>>=20
>>>> functionA: "<send dtach char>; cd /path/to/dir; dtach <args> do
>>>> something"
>>>> (and ditto for B)
>>>
>>> Isolating a single nesting (using the 2nd approach), this is, more
>>> accurately:
>>>
>>> functionA: "cd /path/to/dir; dtach <args> do something | tee <args>
>>> buffer"
>>> functionB: "<send dtach char C-\> > buffer; cd /somewhere/else; do
>>> something else; cd /path/to/dir; cat buffer; dtach <reattach args>"
>>>
>>>>=20
>>>> > If they disturb each other after the cd command, we would get
>>>> > errors. I
>>>> > don't see how dtach could solve this.
>>> (Resending, with some more context, since my earlier message seems
>>> not to have arrived at debbugs)
>>> Some more considerations regarding any borderline race conditions:
>>>
>>> - Any priority for receiving output from dtach's master process, I
>>> assume are, ceteris paribus, in the ordinal rank of the child
>>> client
>>> processes.
>>>
>>> - To account for any maximal marginal delays above, the output of
>>> the 'real' process could be intentionally delayed at specific
>>> message separators (such as newlines) by piping it through
>>> something
>>> by default.
>>>
>>> So my question is:
>>>
>>> Is all this totally ignorant of something?
>>
>> I haven't tested your dtach scenario (I guess it works remotely as
>> described). The problem is still attribution of the process output in
>> Tramp, whether it belongs to functionA or functionB.
>>
>> Remember, the Tramp control flow is (modulo error handling):
>>
>> function(A or B):
>>   - assemble the needed command for the remote shell
>>   - send it to the remote via tramp-send-command
>>   - call accept-process-output until a shell prompt is detected
>>   - collect the output from the output buffer and let function(A or B)
>>     handle it
>>
>> We have only one process available (Tramp's so called connection
>> process), which is responsible for sending the command to the remote,
>> and receiving the output. That means, either functionA or functionB mus=
t
>> defer calling accept-process-output (how does it know?), until the othe=
r
>> function has finished this part. This is hard to implement. And if we
>> would have such a mechanism, we wouldn't need dtach anymore. If
>> functionB (for example) detects, that functionA is speaking with the
>> remote, just defer calling tramp-send-command, until functionA is finis=
hed.
>>
>> This sounds rather like a job for threads and mutexes. An attempt to us=
e
>> threads in Tramp failed some years ago, 'tho.
>>
>> Best regards, Michael.
>
> Thank you, Michael.
>
> I'd only meant this as a way of avoiding 'deadlock' in the case of A
> waiting on B to proceed.

In which case, of course, neither would need to know that the other is
'waiting': both would call 'accept-process-output' straightaway and let
recursion and dtach handle it. (AISI)

>
> FTR, a better scheme than the above for that might be:
>
> - Start the process via dtach, with stdout > buffer.
> - 'tail' it in the background.
> - Use dtach -p to < stdin to the session.
>
> To temporarily switch to another process:
>
> - ^C
> - Clear the buffer.
> - Kill the 'tail' process.
> - Repeat the setup above for the new process.
>
> To switch back:
>
> - 'tail' buffer, starting with the whole of it, in the background.
> - Rerun the dtach -p.
>
> (This runs the risk of a 'race' of any input sent being stale because
> of
> having missed later output by 'tail's delay. But we're usually sure of
> what we send in this case, isn't it?)
>

Regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 19 Oct 2025 09:06:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Oct 19 05:06:23 2025
Received: from localhost ([127.0.0.1]:58005 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1vAPMp-0007p6-SV
	for submit <at> debbugs.gnu.org; Sun, 19 Oct 2025 05:06:23 -0400
Received: from mout.gmx.net ([212.227.17.21]:59613)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1vAPMn-0007oT-Ec
 for 60534 <at> debbugs.gnu.org; Sun, 19 Oct 2025 05:06:18 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1760864771; x=1761469571; i=jimjoe@HIDDEN;
 bh=0ceqYyYWcRVUzSK3S+mC93yg0rs7QvOSY/nenjrBOBM=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=i/2n9BiOitxfXdiVPexy8mQs3VasiZZSkh+AQ3DqEitGfYtWPnBjaMo2BHNtQbOU
 1iL3z5qeQ7ppv6Krm6WD90dyjAjjqG7D7f4PnqY6J/6j3u097A0w9DsH/TEF0d1wi
 zqzyoutvIX0ktvjJC/m66KfP1D1pIEiQXGS7ALSu4B6sN+xWrHtu52lRIR7Mhoaq6
 Kj8LWUJ9M95e7ua3i+M/IXHdim+Scn5cHeQxZpzI7UKLeMfdt2EwK0AwRx1o3oOWV
 ChnbMd5rPLKRRWyrpwUDokEpOe617Zm3nmlXSkgupLHn1YIoz+pSa9pH9iyyVgDfH
 l4enNmwR1iW+OThe4w==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from localhost ([42.108.27.41]) by mail.gmx.net (mrgmx104
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MqaxU-1uNrDF4676-00dOAn; Sun, 19
 Oct 2025 11:06:11 +0200
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <87zf9vqisl.fsf@HIDDEN> (Michael Albinus's message of "Mon, 13
 Oct 2025 10:59:06 +0200")
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN> <87zf9vqisl.fsf@HIDDEN>
Date: Sun, 19 Oct 2025 14:36:03 +0530
Message-ID: <s2dcy6j8dms.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:a2n1S+h1mlzddn0ai2C+2mBUO+khhrwSWsmL919qbDo5O+1jR7r
 JIVxOz2EqdBUYMH9JLyStI+rDMp5i4W3ZYP31sIrCwCYFTYD6xbbk3GtWu/auXvn1BvtSYK
 jZW2Iy6QP6Eo9aa/ZWtSvPY5ZBKLkgZgOtzGelbNhXnMflZcENQITf4YHl1YkxoBSMDxadP
 j6rERftYqZznHCDGw0zbw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:fW8Wl0Jj2Y8=;6gBT+Y+xwJ5k/XKBRr6V3hmdPSx
 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
 A+C5qfBHQU886JzVTXNw1ISKy0=
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 2.9 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: Michael Albinus <> writes: > James Thomas <> writes: > > Hi
 James, > >>> > > To detail (AISI and total guesswork), for the missing output
 >>> > > between 'attachments': >>> > > >>> > > Right after detaching, attach
 a second bac [...] 
 Content analysis details:   (2.9 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.21 listed in sa-accredit.habeas.com]
 3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
 [42.108.27.41 listed in zen.spamhaus.org]
 0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
 [212.227.17.21 listed in wl.mailspike.net]
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
 low trust [212.227.17.21 listed in list.dnswl.org]
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 -0.0 SPF_PASS               SPF: sender matches SPF record
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (jimjoe[at]gmx.net)
 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.21 listed in bl.score.senderscore.com]
 0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.9 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  Michael Albinus <> writes: > James Thomas <> writes: > > Hi
    James, > >>> > > To detail (AISI and total guesswork), for the missing output
    >>> > > between 'attachments': >>> > > >>> > > Right after detaching, attach
    a second bac [...] 
 
 Content analysis details:   (1.9 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
                             [212.227.17.21 listed in wl.mailspike.net]
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
                             low trust
                             [212.227.17.21 listed in list.dnswl.org]
  0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The
                             query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                          [212.227.17.21 listed in sa-trusted.bondedsender.org]
  0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
                             query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                             [212.227.17.21 listed in bl.score.senderscore.com]
  3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
                             [42.108.27.41 listed in zen.spamhaus.org]
  0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 -0.0 SPF_PASS               SPF: sender matches SPF record
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
                             provider (jimjoe[at]gmx.net)
  0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

Michael Albinus <> writes:

> James Thomas <> writes:
>
> Hi James,
>
>>> > > To detail (AISI and total guesswork), for the missing output
>>> > > between 'attachments':
>>> > >
>>> > > Right after detaching, attach a second background dtach
>>> > > 'client' just to collect output, (and detach it) and cat its
>>> > > buffer file's contents prior to the main reattachment.
>>> > >
>>> > > If the delays above are problematic (race conditions?), do it
>>> > > beforehand at process start itself, and clear it ('bash -c ">
>>> > > buffer"'
>>> > > ?) right before the main detachment (in that case, perhaps use
>>> > > this
>>> > > only for these cases so that the buffer doesn't keep growing
>>> > > large).
>>> >=20
>>> > The problem in Tramp is not the "missing output". It's rather a
>>> > race
>>> > condition. Imagine, you have two funtions accessing the remote
>>> > process
>>> > inparallel. There are several shell commands needed to finish the
>>> > function. For example
>>> >=20
>>>=20
>>> AISI:
>>>=20
>>> > functionA: "cd /path/to/dir; do something"
>>> > functionB: "cd /somewhere/else; do something else"
>>> >=20
>>>=20
>>> functionA: "<send dtach char>; cd /path/to/dir; dtach <args> do
>>> something"
>>> (and ditto for B)
>>
>> Isolating a single nesting (using the 2nd approach), this is, more
>> accurately:
>>
>> functionA: "cd /path/to/dir; dtach <args> do something | tee <args>
>> buffer"
>> functionB: "<send dtach char C-\> > buffer; cd /somewhere/else; do
>> something else; cd /path/to/dir; cat buffer; dtach <reattach args>"
>>
>>>=20
>>> > If they disturb each other after the cd command, we would get
>>> > errors. I
>>> > don't see how dtach could solve this.
>> (Resending, with some more context, since my earlier message seems
>> not to have arrived at debbugs)
>> Some more considerations regarding any borderline race conditions:
>>
>> - Any priority for receiving output from dtach's master process, I
>> assume are, ceteris paribus, in the ordinal rank of the child client
>> processes.
>>
>> - To account for any maximal marginal delays above, the output of
>> the 'real' process could be intentionally delayed at specific
>> message separators (such as newlines) by piping it through something
>> by default.
>>
>> So my question is:
>>
>> Is all this totally ignorant of something?
>
> I haven't tested your dtach scenario (I guess it works remotely as
> described). The problem is still attribution of the process output in
> Tramp, whether it belongs to functionA or functionB.
>
> Remember, the Tramp control flow is (modulo error handling):
>
> function(A or B):
>   - assemble the needed command for the remote shell
>   - send it to the remote via tramp-send-command
>   - call accept-process-output until a shell prompt is detected
>   - collect the output from the output buffer and let function(A or B)
>     handle it
>
> We have only one process available (Tramp's so called connection
> process), which is responsible for sending the command to the remote,
> and receiving the output. That means, either functionA or functionB must
> defer calling accept-process-output (how does it know?), until the other
> function has finished this part. This is hard to implement. And if we
> would have such a mechanism, we wouldn't need dtach anymore. If
> functionB (for example) detects, that functionA is speaking with the
> remote, just defer calling tramp-send-command, until functionA is finish=
ed.
>
> This sounds rather like a job for threads and mutexes. An attempt to use
> threads in Tramp failed some years ago, 'tho.
>
> Best regards, Michael.

Thank you, Michael.

I'd only meant this as a way of avoiding 'deadlock' in the case of A
waiting on B to proceed.

FTR, a better scheme than the above for that might be:

- Start the process via dtach, with stdout > buffer.
- 'tail' it in the background.
- Use dtach -p to < stdin to the session.

To temporarily switch to another process:

- ^C
- Clear the buffer.
- Kill the 'tail' process.
- Repeat the setup above for the new process.

To switch back:

- 'tail' buffer, starting with the whole of it, in the background.
- Rerun the dtach -p.

(This runs the risk of a 'race' of any input sent being stale because of
having missed later output by 'tail's delay. But we're usually sure of
what we send in this case, isn't it?)

Regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 13 Oct 2025 08:59:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 13 04:59:19 2025
Received: from localhost ([127.0.0.1]:51217 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1v8EOl-0006WK-93
	for submit <at> debbugs.gnu.org; Mon, 13 Oct 2025 04:59:19 -0400
Received: from mout.gmx.net ([212.227.17.20]:38143)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1v8EOg-0006Vq-LS
 for 60534 <at> debbugs.gnu.org; Mon, 13 Oct 2025 04:59:16 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1760345947; x=1760950747; i=michael.albinus@HIDDEN;
 bh=P0RTFCHayzty/mZkmYJmjaX+X/BKTTmd8SjDAaePOZg=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=Noeb9FUFo6oqSfrLuTCaxshrZt7L/4Mk6QABQo9fWd/t6TkK8G/mV6zQFeWGXDiP
 23mJnY8O+gG1I0FCs6xIuJ+tD76vo/YyNvBQpuxSHBJUbNUREz9ph6IUNeO8AuPKF
 wBmfTY0WgPqjuSyAjFcGJxHWzsUu9QxSgCQ+xbaDB+ZPYuuPbn8T2QtQfzF3/20sR
 G+7u0RF7Xht88//U011roxJK1AJF7SaQdBlDeVCqEtBfvpjLC0aTUBTz3U/YhmdFC
 1HRmTATOWk0puKNkiMZwxcaxoEE7jkcRw5eX6rkYk9w+qhQgr5MIhQ9ayRyKQ0cyq
 IHVHd2P/9TIMu6gGAw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Msq6C-1uF9pi42zQ-00uVls; Mon, 13
 Oct 2025 10:59:07 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
 <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN>
Date: Mon, 13 Oct 2025 10:59:06 +0200
Message-ID: <87zf9vqisl.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:Yv4b8g8MJP6AjkqjoXcNEqQMOTUUZcMsZSk6NRqfFAwU9kir/4r
 Zmz51TkgRMxI+rV+lPot37jgVy7HoKlTdVtOl9X3T3IrrRnR4BHr0XzQqtHB2r5Ds0NcsEd
 0+PJZqHzgHL7hsjnt6e3c79YatQqzmr0OpGoje2pEquPsm7WLnlg+FWmEGxlCo8iyEtNUkJ
 FKdPfylzJwSDE0+2L5o2A==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:uuXRsEMpyTg=;3L7d2WZ0xvDdJaWIpNtY4Qp3UMM
 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
 I1rSEnCsvJlQUdbmaoD6doVEcY=
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

>> > > To detail (AISI and total guesswork), for the missing output betwee=
n 'attachments':
>> > >
>> > > Right after detaching, attach a second background dtach 'client' ju=
st to collect output, (and detach it) and cat its buffer file's contents p=
rior to the main reattachment.
>> > >
>> > > If the delays above are problematic (race conditions?), do it
>> > > beforehand at process start itself, and clear it ('bash -c "> buffe=
r"'
>> > > ?) right before the main detachment (in that case, perhaps use this
>> > > only for these cases so that the buffer doesn't keep growing large)=
.
>> >=20
>> > The problem in Tramp is not the "missing output". It's rather a race
>> > condition. Imagine, you have two funtions accessing the remote proces=
s
>> > inparallel. There are several shell commands needed to finish the
>> > function. For example
>> >=20
>>=20
>> AISI:
>>=20
>> > functionA: "cd /path/to/dir; do something"
>> > functionB: "cd /somewhere/else; do something else"
>> >=20
>>=20
>> functionA: "<send dtach char>; cd /path/to/dir; dtach <args> do somethi=
ng"
>> (and ditto for B)
>
> Isolating a single nesting (using the 2nd approach), this is, more accur=
ately:
>
> functionA: "cd /path/to/dir; dtach <args> do something | tee <args> buff=
er"
> functionB: "<send dtach char C-\> > buffer; cd /somewhere/else; do somet=
hing else; cd /path/to/dir; cat buffer; dtach <reattach args>"
>
>>=20
>> > If they disturb each other after the cd command, we would get errors.=
 I
>> > don't see how dtach could solve this.
> (Resending, with some more context, since my earlier message seems not t=
o have arrived at debbugs)
> Some more considerations regarding any borderline race conditions:
>
> - Any priority for receiving output from dtach's master process, I assum=
e are, ceteris  paribus, in the ordinal rank of the child client processes=
.
>
> - To account for any maximal marginal delays above, the output of the 'r=
eal' process could be intentionally delayed at specific message separators=
 (such as newlines) by piping it through something by default.
>
> So my question is:
>
> Is all this totally ignorant of something?

I haven't tested your dtach scenario (I guess it works remotely as
described). The problem is still attribution of the process output in
Tramp, whether it belongs to functionA or functionB.

Remember, the Tramp control flow is (modulo error handling):

function(A or B):
  - assemble the needed command for the remote shell
  - send it to the remote via tramp-send-command
  - call accept-process-output until a shell prompt is detected
  - collect the output from the output buffer and let function(A or B)
    handle it

We have only one process available (Tramp's so called connection
process), which is responsible for sending the command to the remote,
and receiving the output. That means, either functionA or functionB must
defer calling accept-process-output (how does it know?), until the other
function has finished this part. This is hard to implement. And if we
would have such a mechanism, we wouldn't need dtach anymore. If
functionB (for example) detects, that functionA is speaking with the
remote, just defer calling tramp-send-command, until functionA is finished=
.

This sounds rather like a job for threads and mutexes. An attempt to use
threads in Tramp failed some years ago, 'tho.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 13 Oct 2025 05:44:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Oct 13 01:44:17 2025
Received: from localhost ([127.0.0.1]:50925 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1v8BM0-0005j1-TW
	for submit <at> debbugs.gnu.org; Mon, 13 Oct 2025 01:44:17 -0400
Received: from mout.gmx.net ([212.227.15.19]:40567)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1v8BLw-0005ij-Jt
 for 60534 <at> debbugs.gnu.org; Mon, 13 Oct 2025 01:44:14 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1760334245; x=1760939045; i=jimjoe@HIDDEN;
 bh=v7enljBMRqZUWzZNRMLA/Ile5+KqJFjTvKNRctHpjTk=;
 h=X-UI-Sender-Class:Date:From:To:CC:Subject:In-Reply-To:References:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=cmNZKdsCWWO9rADsKfl1BF3TF23l4nSvzlttwyZx3XEuqutmdoCDdT0mu1oDNmsl
 ZaDFShJV2jCPdixq91+JP7hM7zF0ob/gPrrdiqJzMc+UEhTykPAQv0Dk1HXWHfIZB
 t/JGs+SxBoDRCbdPKjxtmEYDr8j4a7bxFbPgLuipFEBQEbgzeyIxLpjY2YDR71kAv
 G619QW/K4lZlAgB5P8yodM7/JEmV6OGYV4v6/cGi8Ndpi4Tqdy+AHJc3tOxr6FqZT
 DEhi6GOUWwKFn2Goj1fkNdD1+C9wAGTNGt56ZBGWIO6Iuls4rdfHOmIfvUUOElT3D
 /XpND49GsYwmEVzR2Q==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from ehlo.thunderbird.net ([120.61.84.255]) by mail.gmx.net
 (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id
 1MIwzA-1up0sJ06sU-00Oe74; Mon, 13 Oct 2025 07:44:05 +0200
Date: Mon, 13 Oct 2025 11:13:59 +0530
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN> <87347rupqa.fsf@HIDDEN>
 <4D7C3955-103B-4766-A0E0-235DB398E38B@HIDDEN>
Message-ID: <E6A9483A-EADC-4231-B2CD-2C6049EA5CDC@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:aHfPxcAi+mmeRN1LOwCqjZ6sL2t64j3wyoSs8A2w3T5HFCyVyo+
 nk9ULTKdiPjizqAuHhkc4C9NM+KUduBqAFZCG0N94Jj+rkSYPBYcOZgd6a6ZZIqfOh5wsGA
 fJlQDHinaRZKUUj26TxYf6vF0Qt/yTbcqlGQOFSuHuGK5f85II0YPOODp9y+G3yWzOTLdJu
 5n6pfEh07E3gxfHYYu7PA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:EzZ7JBkZsFY=;qsHZXNeBce7lHKw08XUoLlligLT
 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
 UZQEw==
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On October 11, 2025 9:07:39 AM GMT+05:30, James Thomas <> wrote:
> On October 10, 2025 1:56:37 PM GMT+05:30, Michael Albinus <> wrote:
> > James Thomas <> writes:
> >=20
> > >> Hi Michael,
> >=20
> > Hi James,
> > =20
> > >> Do you think the dtach program [1] could be used to do this rather =
painlessly?
> > >>=20
> > >> I mean: Run all processes through it; on reentry, detach from the c=
urrent one to launch the new one, and redisplay the prompt at the next wait=
=2E
> > >>=20
> > >> 1: https://dtach=2Esourceforge=2Enet
> > >
> > > To detail (AISI and total guesswork), for the missing output between=
 'attachments':
> > >
> > > Right after detaching, attach a second background dtach 'client' jus=
t to collect output, (and detach it) and cat its buffer file's contents pri=
or to the main reattachment=2E
> > >
> > > If the delays above are problematic (race conditions?), do it
> > > beforehand at process start itself, and clear it ('bash -c "> buffer=
"'
> > > ?) right before the main detachment (in that case, perhaps use this
> > > only for these cases so that the buffer doesn't keep growing large)=
=2E
> >=20
> > The problem in Tramp is not the "missing output"=2E It's rather a race
> > condition=2E Imagine, you have two funtions accessing the remote proce=
ss
> > inparallel=2E There are several shell commands needed to finish the
> > function=2E For example
> >=20
>=20
> AISI:
>=20
> > functionA: "cd /path/to/dir; do something"
> > functionB: "cd /somewhere/else; do something else"
> >=20
>=20
> functionA: "<send dtach char>; cd /path/to/dir; dtach <args> do somethin=
g"
> (and ditto for B)

Isolating a single nesting (using the 2nd approach), this is, more accurat=
ely:

functionA: "cd /path/to/dir; dtach <args> do something | tee <args> buffer=
"
functionB: "<send dtach char C-\> > buffer; cd /somewhere/else; do somethi=
ng else; cd /path/to/dir; cat buffer; dtach <reattach args>"

>=20
> > If they disturb each other after the cd command, we would get errors=
=2E I
> > don't see how dtach could solve this=2E
(Resending, with some more context, since my earlier message seems not to =
have arrived at debbugs)
Some more considerations regarding any borderline race conditions:

- Any priority for receiving output from dtach's master process, I assume =
are, ceteris  paribus, in the ordinal rank of the child client processes=2E

- To account for any maximal marginal delays above, the output of the 'rea=
l' process could be intentionally delayed at specific message separators (s=
uch as newlines) by piping it through something by default=2E

So my question is:

Is all this totally ignorant of something?

--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 10 Oct 2025 08:26:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Oct 10 04:26:55 2025
Received: from localhost ([127.0.0.1]:41019 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1v78Sk-0004t0-NG
	for submit <at> debbugs.gnu.org; Fri, 10 Oct 2025 04:26:55 -0400
Received: from mout.gmx.net ([212.227.17.21]:44997)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
 id 1v78Sd-0004sg-8K
 for 60534 <at> debbugs.gnu.org; Fri, 10 Oct 2025 04:26:51 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1760084800; x=1760689600; i=michael.albinus@HIDDEN;
 bh=nTsN7rKAWhM6WwKDh+uDVmna8wgGweT4NZO1T6fhhYA=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=fKr9w+zuxt5Z4CePAlxno6lQm0E0grfxKuZBOrcKN1kCnpFJZ87BPqUa/twMEa88
 3CWxAGJcbFObycIGiOUPj4L0SVzLrfPMlM3lE1Nr01TQN867Tar7cubjgxO6/WjAs
 RjdqtjeN3CcQ3I+0w7vPrUgQbnn7OjuAPwLxOGMT/7sXVmM2xTLH0U0qXoL3d+km5
 UtXWWP5wv5AWa8sPM+dSrnjmXQebcS1BP3OWq0ZAu/BtbzvH0HC6NHXmOesKSpQJg
 0TCHIKgKjALjGuVi7LxY9mWT+3qO5u5rHvQX1uld0cF6HhLW8yG7PLJ4Kwu0f+Wkr
 jKyPChd5f4WJZG4ANA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MZkpb-1un2t50JoF-00VPbG; Fri, 10
 Oct 2025 10:26:40 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
 <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN>
Date: Fri, 10 Oct 2025 10:26:37 +0200
Message-ID: <87347rupqa.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:oxk1gpCwtEx8WSG2brAo/Zs+2w+7WYZ5GdcoVzYlOTpP1uvuefa
 Bo3i3xKKwayuU3qOse4idi3wtPoVers7PptqZ+wEGw7t4sWrCP6Ul9hNtOsOtTpzSlvFdUB
 mgrqoln+t4s47bsAqV8Y9TkTGPgqViNXIB/x/DkHZuiQZSTfE2lTyIMzxiHlATdNy8EFYbX
 tQxLiRU5C03nnwbQdw7zg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:ZJfHzxpxpAk=;v5AWXpsORI+iBVOKdbOzQvB/6Qs
 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
 W8QXxKJIuVdk1DrMD+9WCozN4w=
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

>> Hi Michael,

Hi James,
=20
>> Do you think the dtach program [1] could be used to do this rather pain=
lessly?
>>=20
>> I mean: Run all processes through it; on reentry, detach from the curre=
nt one to launch the new one, and redisplay the prompt at the next wait.
>>=20
>> 1: https://dtach.sourceforge.net
>
> To detail (AISI and total guesswork), for the missing output between 'at=
tachments':
>
> Right after detaching, attach a second background dtach 'client' just to=
 collect output, (and detach it) and cat its buffer file's contents prior =
to the main reattachment.
>
> If the delays above are problematic (race conditions?), do it
> beforehand at process start itself, and clear it ('bash -c "> buffer"'
> ?) right before the main detachment (in that case, perhaps use this
> only for these cases so that the buffer doesn't keep growing large).

The problem in Tramp is not the "missing output". It's rather a race
condition. Imagine, you have two funtions accessing the remote process
inparallel. There are several shell commands needed to finish the
function. For example

functionA: "cd /path/to/dir; do something"
functionB: "cd /somewhere/else; do something else"

If they disturb each other after the cd command, we would get errors. I
don't see how dtach could solve this.

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 9 Oct 2025 09:33:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 09 05:33:24 2025
Received: from localhost ([127.0.0.1]:36064 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1v6n1Y-0005iX-46
	for submit <at> debbugs.gnu.org; Thu, 09 Oct 2025 05:33:24 -0400
Received: from mout.gmx.net ([212.227.17.21]:34355)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1v6n1R-0005hp-5a
 for 60534 <at> debbugs.gnu.org; Thu, 09 Oct 2025 05:33:18 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1760002389; x=1760607189; i=jimjoe@HIDDEN;
 bh=jrxCSY0gp9wdsaflyDJBzdIOPPXMd8BMBTbc2i91sFY=;
 h=X-UI-Sender-Class:Date:From:To:CC:Subject:In-Reply-To:References:
 Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=nif3RYomWYEf3JtLw2xN26siyAfyR70Qy504YcQM/432qj2nAK/O6R8I/i38CU3r
 PnOWsUps3uVP3pFOKRqnrya99ac7LnHmSN9ST83yfbfhBtpPGP0Ud9t3F1JnuJKwS
 1KMQBaPT8t9Mq/B21c2fxx1lDav9ItdmkgRwIdCDPDrWqva9XiAH3zy9lTjSS665K
 yRj5DCCxf3FJnrINwjvTXWpvKKYTf0AkNsUo1+4yEVmVnnv6/eBVgR017QD7uooc+
 rfClCU7CHrD238PPsXG2qt5fzk37VlwiYSus/OeZFOLld/4T4DnLrGPx3vIUeCtQQ
 Yf4LoD0/Qjl8GImcnQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from ehlo.thunderbird.net ([42.108.26.1]) by mail.gmx.net (mrgmx104
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N1wpt-1u95ll1s4X-00wy0D; Thu, 09
 Oct 2025 11:33:09 +0200
Date: Thu, 09 Oct 2025 15:03:03 +0530
From: James Thomas <jimjoe@HIDDEN>
To: michael.albinus@HIDDEN
Subject: Re: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
References: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
Message-ID: <39F26289-35B3-4FB8-8DC5-5B4EC228DF73@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:fOIzUM6jp3E1waTFJsRqadSCB0fdMrdrCQ5UXZJ29+UfbB3uKaM
 dzNpjXM0X259zS2TCpxQ87+C7yKIpdgVH3Mbx/MY1dN6O6AUYVvNwNtybimHETQTw2FvZHJ
 odEBRENi+jq5nJIknASrebhl0H9JSXQ5QU9kvQFVlIvV6kGbT4ff0GMOMuzbVa97GeIJbIT
 1HRJxI88miqGYWqOvldTg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:YdPoXGRgJ3Y=;e7CvHswZxCQLz84fJd7o+8InbnJ
 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
 /hpq21N7ML+V3A==
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On October 8, 2025 3:45:15 AM GMT+05:30, James Thomas <> wrote:
> Hi Michael,
>=20
> Do you think the dtach program [1] could be used to do this rather painl=
essly?
>=20
> I mean: Run all processes through it; on reentry, detach from the curren=
t one to launch the new one, and redisplay the prompt at the next wait=2E
>=20
> 1: https://dtach=2Esourceforge=2Enet

To detail (AISI and total guesswork), for the missing output between 'atta=
chments':

Right after detaching, attach a second background dtach 'client' just to c=
ollect output, (and detach it) and cat its buffer file's contents prior to =
the main reattachment=2E

If the delays above are problematic (race conditions?), do it beforehand a=
t process start itself, and clear it ('bash -c "> buffer"' ?) right before =
the main detachment (in that case, perhaps use this only for these cases so=
 that the buffer doesn't keep growing large)=2E

--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 7 Oct 2025 22:15:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Oct 07 18:15:32 2025
Received: from localhost ([127.0.0.1]:59330 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1v6Fxz-0006Tp-M8
	for submit <at> debbugs.gnu.org; Tue, 07 Oct 2025 18:15:32 -0400
Received: from mout.gmx.net ([212.227.17.20]:35301)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jimjoe@HIDDEN>) id 1v6Fxv-0006TZ-AS
 for 60534 <at> debbugs.gnu.org; Tue, 07 Oct 2025 18:15:29 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1759875320; x=1760480120; i=jimjoe@HIDDEN;
 bh=iNLkDIoD6IhIU1tzQtg9yUvyOQ1XIXUDw4baSFaeWzQ=;
 h=X-UI-Sender-Class:Date:From:To:CC:Subject:Message-ID:
 MIME-Version:Content-Type:Content-Transfer-Encoding:cc:
 content-transfer-encoding:content-type:date:from:message-id:
 mime-version:reply-to:subject:to;
 b=gCwKk37eRQ1BqzMJpXtx+s32T82KyymYSHJZXyoumUwC5W/LclNWKWudHWJ+urE0
 8GrMSDg4TAIGjZEJFL7EUSd2YD427wcCe21RW4rYlFR3VnAKeRGmpLZ+6GGnRhBN9
 PzJ/F8NiaFnevVMahmowAAYQaRu5grTE7DJn1eP9qwGfvUNsBRa63fKVnAIuefZVD
 bsQtf668DiYSWnDvmvOwx0yASuhbB5Jl1H3o1WbnPC6btBrI+wNuYqPQkpibV7uTN
 9XWUuwg3kg9M9Ftg1RMtwXeOa2uc6LVj6uodUK0QdNGFZmgN5FgoBzfjxVUJt5Kc5
 u9voqKLbnBgncbX7cQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from ehlo.thunderbird.net ([42.108.27.136]) by mail.gmx.net
 (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id
 1N33ET-1u7Spe03iv-013xr8; Wed, 08 Oct 2025 00:15:19 +0200
Date: Wed, 08 Oct 2025 03:45:15 +0530
From: James Thomas <jimjoe@HIDDEN>
To: michael.albinus@HIDDEN
Subject: bug#49954: bug#60534: 28.2; Forbidden reentrant call of Tramp
Message-ID: <68310D70-1BAA-48F0-BB99-39E02A020BD1@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Provags-ID: V03:K1:A/rREhWGUJtNzaTxVyz4nIULYFNEwimcsHu1LHZyNDk9KH2SVg6
 8sgKxEu7HOB2Ch1pmIMeTDtczwTWecdfSKxJMnaNnW1mai2VMIAWBzQE6HIbLptgDojRnUx
 fD7ivVSeIRRF+nsq93a+T2kZZVQicxEXMZRKQzZ5DqV09uJWFLtmw22lfs4GmG4mJoqrhGd
 HQmEcCu5NtnPOcfWWFXow==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:Byik6PyGPtA=;gmWqP+rZ+zLK47rABbc5LLcyv+S
 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
 6GDPzSSMjBV3rw==
X-Spam-Score: 2.9 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview:  Hi Michael, Do you think the dtach program [1] could be used
 to do this rather painlessly? I mean: Run all processes through it; on reentry,
 detach from the current one to launch the new one, and redisplay the prompt
 at the next wait. 
 Content analysis details:   (2.9 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (jimjoe[at]gmx.net)
 3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
 [42.108.27.136 listed in zen.spamhaus.org]
 -0.0 SPF_PASS               SPF: sender matches SPF record
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 0.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE:
 The query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.20 listed in sa-trusted.bondedsender.org]
 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.20 listed in bl.score.senderscore.com]
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
 low trust [212.227.17.20 listed in list.dnswl.org]
 0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
 [212.227.17.20 listed in wl.mailspike.net]
 0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.9 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  Hi Michael, Do you think the dtach program [1] could be used
    to do this rather painlessly? I mean: Run all processes through it; on reentry,
    detach from the current one to launch the new one, and redisplay the prompt
    at the next wait. 
 
 Content analysis details:   (1.9 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
                             low trust
                             [212.227.17.20 listed in list.dnswl.org]
  3.6 RCVD_IN_SBL_CSS        RBL: Received via a relay in Spamhaus SBL-CSS
                             [42.108.27.136 listed in zen.spamhaus.org]
  0.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE:
                             The query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                             [212.227.17.20 listed in sa-accredit.habeas.com]
  0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
                             query to Validity was blocked.  See
                             https://knowledge.validity.com/hc/en-us/articles/20961730681243
                              for more information.
                             [212.227.17.20 listed in bl.score.senderscore.com]
  0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
                             [212.227.17.20 listed in wl.mailspike.net]
  0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
                             provider (jimjoe[at]gmx.net)
 -0.0 SPF_PASS               SPF: sender matches SPF record
  0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
  0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

Hi Michael,

Do you think the dtach program [1] could be used to do this rather painles=
sly?

I mean: Run all processes through it; on reentry, detach from the current =
one to launch the new one, and redisplay the prompt at the next wait=2E

1: https://dtach=2Esourceforge=2Enet
Regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 22 Dec 2024 11:39:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 22 06:39:32 2024
Received: from localhost ([127.0.0.1]:49181 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tPKJ1-00079g-Sm
	for submit <at> debbugs.gnu.org; Sun, 22 Dec 2024 06:39:32 -0500
Received: from mout.gmx.net ([212.227.17.21]:49349)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jimjoe@HIDDEN>)
 id 1tPKIz-00079L-T8; Sun, 22 Dec 2024 06:39:30 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1734867561; x=1735472361; i=jimjoe@HIDDEN;
 bh=f32uRoRFEhYsooAK30nfwrLQPwFTfM47sYPpffwkzHs=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:Date:Message-ID:
 References:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=LWgGX4qsBp/JyDy3rG5b+/52AzPtqKSTb+JcfbGp9mnxdDXlF812alKMvgjsPsno
 NmFnpC2ATYxkRJ/T3CHGZiAZddJmsc5Q0T7/s0UjoNmu1pCSbiloiqxJUxgFE/pn2
 06jUAiz3ifsy2GI2L2V63HeFLIs4dZJyAPNVJWhgdXSQibxta+C6qploGISOywYrJ
 7s50VPXqPcgV1iX5x5/pyADI2oHbnC95Y18IngZtcavxPJMLkg/VTByvwYTbphBX9
 Wsb35uXTrzf95JxHh9vnAIYbI+ZSyllpOpjHMfzvADscBBsyh2QloKW4bw3SvvjDv
 GDrZURgbkMmIAm7TLg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from user-Inspiron-3493 ([42.104.188.46]) by mail.gmx.net (mrgmx104
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1M1Ygt-1tQgwl2Eep-001BhI; Sun, 22
 Dec 2024 12:39:21 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <87o71an24v.fsf@HIDDEN> (Michael Albinus's message of "Tue, 17
 Dec 2024 09:29:36 +0100")
Date: Tue, 17 Dec 2024 18:41:53 +0530
Message-ID: <86bjxafo86.fsf@HIDDEN>
References: <875ywf9ea7.fsf@HIDDEN> <871r72ssqi.fsf@HIDDEN>
 <874kby7wn5.fsf@HIDDEN> <875ywdquds.fsf@HIDDEN>
 <87pmtfjyw4.fsf@HIDDEN> <878s03s3t1.fsf@HIDDEN>
 <86frmnb6j9.fsf_-_@HIDDEN> <87o71an24v.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:Y4r9Fg4D2O4oK4UN28MZEVoB4sVRVQlRy+GCY+uUR3YfkV0al/O
 cGVHFdcp2Xqo1mReDAQ5ChWnF/etA/5N8fF5i9Iyz0RFcbFeG6AxdpZb3YSPrOI6SvIGvAX
 5VIm0yDsnx40oh6mDubz0h0ug+oio5C2pEpt/vGivi/9liRIX69hQGqj3xIzWoLwSAfw/2p
 /1KDsALb/KKdmbYF+a7fA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:CMqtcg3ggAE=;d2qT9dGc6oUCEtWh20Rz2dz3uHI
 afWTfvdrgLJp/APa3MNL2Yo2AXgaSNwldVN0dc1NixFpsyAplM1LPfEzhKGg6meIuoFKSB9H7
 6vq4IBjMQgI5RZxa45lZshGxktVNQ5AS++XlCz3n3gUbUtdlNcRrzYp8qM0nqszMR75eQnD3o
 2Px/R7DW56LrQdMwCobGUCC5/fRZenKhg9NoXR7gedvGJDKoDvRiD9bwGtXkRCEfCqlerhybI
 zqVt63V5NnVyRIB0elF3uH+RV5YOqVYTJbOw9bjke9FydwZ44KMp/TlUWI2d2qF6+3rVFIL5Y
 BLF8wjvzEjwlIJjFOByWLSfmTuOPn1l4f9b84fqLd98jZzEuPJwTvHNaW3+j42TSX+J/MhPiC
 FEgiLYqV9S9lVhUErDQp9DX6+iVE2RlClvdO6zUUSS/ibMuRIkNLY9yWzoo5KAmWLXaoyDHXy
 ByEOmnG25m3byu6qWSkQmehSnNUelkg2MOdTR6d8SGmRpKz8T9Ibe2Rh/tm1vT2mPQ0954/NN
 oeg+ZOjMgsjZwrQdzhpvj9mjsu7jvyv3jPWmR/MCWnK0LWeEdDXJmiZx4YKUwyTf5vn7Nm1wH
 ck8CTol/CJWYCPr7SXZVa+GSoZ31wUPdqlu6A+EmltaUR7M1uHMIYrBdHebRMOpm/VlQQEY2X
 9dTeCn7DfRjGO9M0euFsk/VPr6FiUNRgq4C0rD9/Z9+AoU3mPCeOKKG/XoNfQYe5aFVJlVvmj
 gl+lqu8xNBmoQEtb41jNDmmYNas1+PkTtcfnIiN84lbxxZKQa6yRHlPGZITf/HWiBtbdqqp/b
 XuRalKxrtZbh9swrA4vzoT3kUbxeOSo7HNgk3RN5JWz4Ad7FG2HAQllOhlyCmKO2ctidgGkwG
 3U7xmQgXAzVDWVppobJ0RBSbM28hf6dJ4ADYd8ln2rH/juQhzvcPUVBktDOia7E4dvVie5Ui+
 U1nc1almEL6M5Ckxkk3dvYbEU+PsMtaQFKQhs41QsG+czKt1XseylD8gfW06JPNHM4/bQ2dCJ
 UesRS1wAo+h1cyVF0Pz5H5AraWe6s0G03995L4eHQcWenBGM13Rm5SGz9d09sjP3LLQIBlMI9
 nkbUIVKJkEOxZ77SJA11DL0kISedRO
X-Spam-Score: 1.4 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview:  Michael Albinus wrote: > Not so simple. > ... 
 Content analysis details:   (1.4 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
 query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.21 listed in bl.score.senderscore.com]
 0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
 [212.227.17.21 listed in wl.mailspike.net]
 0.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE:
 The query to Validity was blocked.  See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243
 for more information.
 [212.227.17.21 listed in sa-trusted.bondedsender.org]
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at https://www.dnswl.org/,
 low trust [212.227.17.21 listed in list.dnswl.org]
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (jimjoe[at]gmx.net)
 2.1 DATE_IN_PAST_96_XX     Date: is 96 hours or more before Received:
 date
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 -0.0 SPF_PASS               SPF: sender matches SPF record
 0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
X-Debbugs-Envelope-To: 60534
Cc: Dima Kogan <dima@HIDDEN>, 49954 <at> debbugs.gnu.org,
 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.4 (/)

Michael Albinus wrote:

> Not so simple.

> ...

> And it isn't clear to me how to keep two connections in sync, if (for
> example) the environment changes in one of the connections. Be it an
> environment variable, the current directory, the availability of a
> temp file, you name it.

And here was I thinking that Tramp was mostly remote-state-less beyond
the handshake...

> There is a serious overhead when opening a new connection, due to the
> handshaking actions.

OK; I misremembered for a moment that it was beyond any ControlPersist.

> But yes, nobody has tried it yet. My preference is to use threads, so
> that one command in a process filter could wait until another command
> in the main thread has finished, as example. But the crucial point is,
> that you must activate threads in the beginning of a connection. When
> you detect, that there is a forbidded reentrant call, it is too late
> to activate threads.

Ah, crucial; but not a blocker, I suppose.

Thank you for the effort in explaining, Michael.

Regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 17 Dec 2024 22:10:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Dec 17 17:10:21 2024
Received: from localhost ([127.0.0.1]:60628 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tNfli-0000Zg-AN
	for submit <at> debbugs.gnu.org; Tue, 17 Dec 2024 17:10:21 -0500
Received: from mout.gmx.net ([212.227.17.20]:54619)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jimjoe@HIDDEN>)
 id 1tNflW-0000Te-Bo; Tue, 17 Dec 2024 17:10:14 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1734473397; x=1735078197; i=jimjoe@HIDDEN;
 bh=f32uRoRFEhYsooAK30nfwrLQPwFTfM47sYPpffwkzHs=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:Date:Message-ID:
 References:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=aJUcpqbW1t3Rpn/3shAQ3j13/7kz8UxxmzWmoBxELp3jXzrmEEfCNzr3Dug3hie/
 bGWsEvANbPAPww+7whWkkshuP+gwLYpRgu78Gqq+fFnWhJexOMjzHk994//P8fqTa
 BqCbXKr8DV7AYiENTsLP1/2JlICKiwMe5iosVrKPVn5dFZ183EZ/C9c7HQt9d+og8
 rnXUE3vnzEZ8LFweT5EvI7Hv6aKv82K1J9ES+TcgT9vjFOWbzn08xcxu9DJ9cjfqI
 jBkao0BSiAhe85fHb+bP/JhdM+FwiAoj3wkthgZGRBV8ICTcZs9emADFWTJSIa00W
 e9AUat3LOm1o0R6xVQ==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from user-Inspiron-3493 ([42.108.26.156]) by mail.gmx.net (mrgmx104
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MZCfJ-1t1HPe402L-00Q12r; Tue, 17
 Dec 2024 23:09:56 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <87o71an24v.fsf@HIDDEN> (Michael Albinus's message of "Tue, 17
 Dec 2024 09:29:36 +0100")
Date: Tue, 17 Dec 2024 18:41:53 +0530
Message-ID: <86bjxafo86.fsf@HIDDEN>
References: <875ywf9ea7.fsf@HIDDEN> <871r72ssqi.fsf@HIDDEN>
 <874kby7wn5.fsf@HIDDEN> <875ywdquds.fsf@HIDDEN>
 <87pmtfjyw4.fsf@HIDDEN> <878s03s3t1.fsf@HIDDEN>
 <86frmnb6j9.fsf_-_@HIDDEN> <87o71an24v.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:8eD8RV08f4sR7L+BXf7ugejCyWuPxmqx3jDq1NOe7M91SCk7ORY
 27ii+WJjQ0aInk8BOMBAfltTSXlW7P5cdaixyPGco6j+3ugT4yUpczCYmzF1gfHfJSr69gH
 /kNckZodAXPNu5RR+8YaW/621bfAtRT/EWIaybl+mLO588Os9c49H4JZAdRUCy2cjcXUaeu
 juaVaRfIOecAlV42NtTqQ==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:jGnsgqQERdY=;gQfh9wVURpqDrWxTOcWqI++X+2E
 2TllaoAHiPInxXujW7i+Ldtm9JwJjoG4ypbEUamkw7LaIRSgLvnO16Vl9+c0h2/nxagCjCrIo
 VfG22XhPwxuNjTWYsIbpDIkqpbEX+jaiVf8EtMsebxuQ0k2760eE5darpoVvSSxFza3Tid11N
 QU+854MqcowH8rj9ecSRmXyvCyH67Z/udr9v5c/OdZ5IVyooVtpazpoSwqialZh++IpGe74B7
 6DbY7JORe/zuBUfjku28LkDLRO9ErU9idwwdZbCkNFvPVPDFZLt+u2l4YL5IX4nPOCgxMFkw8
 qBLAdSBhs6S4VnBo9YHviKx8yfzRF5ILI6lPTQAPBgzpNSO/87cqF6KqBLAv86Jt5GuiZzOwa
 OOS920ixHodw7FT/tuLZhuMZi8ZxThi/eOjGtwAP792FVJSzGmwPd14XRt06dILaupmsALQyF
 FpyfbmlTi7LNurwDMMjMHGOxh6dV8jJ4zopIo4yaEP6awaEIDubpbFdcjig6VF9U0hXSG9GsB
 /uvQWTU4JrDiWkr9qQHnoQpssUPlr8tjfZGxVrPX1aFka9waPY/b4XR74Nd1dM5LYWa9eeJ5B
 T+EqoaXYZXryxRXuq/9yE0kL8InTVTGcKPMhkiRBBetewUj0J6aiDSncZwrBXWbqVH1eguecS
 m8MHXNn/mTS5lxKLzVowFdciucahP50VXb4VILdXQqLeYiGF2oWEIQjN6qt26fB2dYydmnYSw
 jCzbbtsGg1lLOGLKgRiOcFkMDmJETrKDvj0y2aUbkakbGAiEEqGU5vgAyj9bVU2obR4fpa7o+
 DElVLLa6I/znwSIbon/Lv5lQ8HY8ny4UVBMG6we+tzuQzh/2Eqd8Bu/Sry4AxtrwKzfyB0tS5
 fJlPow50YeM+v5/ctbrATbBpIXjyvz5A0TcE52R3aG2Dir3MVQxucPn4dcPQqUhAyp4PLvJ0P
 Hauk8+q/H8amxCwXAMq8AR5Hhrn7PszdvNPNDKtgPS3zg/Ps0xHHoGHopGbKjk0U+0Y3ZyV6a
 I8lkATl4/ACszj0ewD1swGgzm8duA5VBkLHonsCtiL+C2v2e2v31o/+Zutn8KCRQ8r8UBIAXY
 SJA026yrzMU2wxQsNPsqK4gUx8zDBV
X-Spam-Score: 0.4 (/)
X-Debbugs-Envelope-To: 60534
Cc: Dima Kogan <dima@HIDDEN>, 49954 <at> debbugs.gnu.org,
 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.6 (/)

Michael Albinus wrote:

> Not so simple.

> ...

> And it isn't clear to me how to keep two connections in sync, if (for
> example) the environment changes in one of the connections. Be it an
> environment variable, the current directory, the availability of a
> temp file, you name it.

And here was I thinking that Tramp was mostly remote-state-less beyond
the handshake...

> There is a serious overhead when opening a new connection, due to the
> handshaking actions.

OK; I misremembered for a moment that it was beyond any ControlPersist.

> But yes, nobody has tried it yet. My preference is to use threads, so
> that one command in a process filter could wait until another command
> in the main thread has finished, as example. But the crucial point is,
> that you must activate threads in the beginning of a connection. When
> you detect, that there is a forbidded reentrant call, it is too late
> to activate threads.

Ah, crucial; but not a blocker, I suppose.

Thank you for the effort in explaining, Michael.

Regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 17 Dec 2024 08:29:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Dec 17 03:29:51 2024
Received: from localhost ([127.0.0.1]:57441 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tNSxi-0001sO-Jv
	for submit <at> debbugs.gnu.org; Tue, 17 Dec 2024 03:29:50 -0500
Received: from mout.gmx.net ([212.227.17.20]:41881)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael.albinus@HIDDEN>)
 id 1tNSxg-0001s5-Kv; Tue, 17 Dec 2024 03:29:49 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
 s=s31663417; t=1734424179; x=1735028979; i=michael.albinus@HIDDEN;
 bh=42LKFyYcjMbt8YkMaT9SqA9uiz8+IYUhtdbtMMWZ7U0=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=U14ylHG5beExgDy9++U/cLpQslO7v7mmQad4zzYcBlgCAxZ48ZLqqohGKzcq2KNO
 n2O7LojbOOoZcvbI6udj4ozwsNpmdb5Xk0BXZ35iIT9uvClDRPJvyXh/67HC7JZKZ
 ktFqdIYq6Yyo/BvJb8NEDn7WQc7sEAhVhrjWP1ffY/3gaAeUDMBWLrjyU7Xdve+11
 L3VNmDXvsccjLal23sHHckGl9BaHBRdAorcLWSYz9yIYKK85te82Twlx1INQA0M7s
 qIZGlvMLePOXAa4d/JTrNbI6tcHmc+v91voukC5+MRZD8BYUBzyp6J2zWDEkQfzEV
 xXU7elqgq0uE4wykCA==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx104
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MryXN-1ttAjW2gCr-00gQ9J; Tue, 17
 Dec 2024 09:29:39 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: James Thomas <jimjoe@HIDDEN>
Subject: Re: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <86frmnb6j9.fsf_-_@HIDDEN> (James Thomas's message of "Tue, 17
 Dec 2024 04:05:22 +0530")
References: <875ywf9ea7.fsf@HIDDEN> <871r72ssqi.fsf@HIDDEN>
 <874kby7wn5.fsf@HIDDEN> <875ywdquds.fsf@HIDDEN>
 <87pmtfjyw4.fsf@HIDDEN> <878s03s3t1.fsf@HIDDEN>
 <86frmnb6j9.fsf_-_@HIDDEN>
Date: Tue, 17 Dec 2024 09:29:36 +0100
Message-ID: <87o71an24v.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:wpWQy8Ygw+oHL3nZChcAINKTifIQRW/m8kd4/6Uv6cAEiWyfJJI
 z3OWMqwHO2fqoC7gv1IP1LPsqYRGBHjUiAu/8wTgYpUWQMTuGRQh+3jf3nB2UXXwU3nsv+L
 AQiSSm3S40DDrp7BkSbBq1/CJJVYGcvDeQkew1KPGMrYFp2eLsaLW0RTSmd3djL4kW/OJ0V
 DUKTha5/6mVcIbHNZY3cw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:eUn4/37X2R0=;mt/ahv4JCXImPz6xgK4erBgwbBc
 VMAmOihf+Am9nVNY4NyCK5+DCq+wuG+UnrYU+hX4GL2/Z2KNmxZ9oo+kagVgBzWBxFDVJ6VKV
 t44ZkYGUveSBDYfRvptBxv/JIlBx0OxxEJPANoyvZr2TObZrVLIhcz4mEm01a0pciM81Onhn4
 TDD/EzxfMa40i6EMAFkWY35abuF8evOqxdoWH0Xks/ehnmP5RSIPD+SEHr4qsxQdXgwj8Cc5C
 N2JgGh7Y5OT2yCmSQasD4FXqR40K5Pyk9IpaOC/5d32ahgVH/yJt5219omVX5f0PUs7Rd1Ul/
 ETmWh8Lgw0Ad+E0I2XhCLYb4XFOpWtz9jvdXXvwc/SIUQDNNTUfNrfqdbAQFVqhpHRmKBmQ6b
 fzntdwQFXJevtayEUGigXiSuo9wGK7+Nqr6D19gVd2hzhZAKsw28U8AhfP76N87mfY+xFGLL2
 N9HY7QV+zQgOhsuhw2MIWmFp0UYpxlHqH5yDXyBwrHzXz9cDOeoG1dLgDfjR5e/R2Tc+DrS/h
 Y8CEgvqGXPg6jX17OXL+cYGx8us23JyK5czQ12vQDZ6wNTck8juE9QDC9aNUW166Z+yU/GP+y
 BFogTf2+bYsmIiUF1cZJjU9D+dR2GcgyzrzgjOSDHQpJ/AuhGGgosijrh8v3ztebNBMPbbADp
 Do5h4GFZ8u2j23X92C4SW1f1hDqEHSHwnMINKvpxtzo1yGfBvfV1GLWe0pOK6HmfSwttTaKq2
 ++C039cJ8uLyWVKxb5i4cCCUZ1GaufM+A1OlMWP5XbIghCpH2FxlqZ0c7sefjoFWKYtHSspH/
 nnzrQzjygHSxqjozrADHiWJ1qA3jNjeon/tzoU6n5sATEQAXqHZeVzp/7+5iouXB4Xd3IiGcd
 2HWreGphNsWN1p8NGYsN/iolLuNeooFRwGTIa9+YHGMl/zuJREmdVX2UkA0hyA5MU/Yd0DtQD
 EQZ4WiNviidhksN3ynx6KKEQKYwLNx7bCYA38OXGeTciDt5EWIXkZ/2PaJq0eQc+SfRMQXWd1
 U1unaWXB1kjJSF/yCtF6q/QQNm6mNw7MzcMXr/Jc2tHlW3t/JtsPh+Q279HR1FBVSRi2YVFlI
 dOCSFws1L17+KeHDeb1KiDt3V+n7PG
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: Dima Kogan <dima@HIDDEN>, 49954 <at> debbugs.gnu.org,
 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

James Thomas <jimjoe@HIDDEN> writes:

Hi James,

>> Not so easy to solve. Ideally, remote file name functions initiated in
>> process filters, process sentinels, timers and alike shall wait, until
>> the currently executed remote command has finished. Don't know how to
>> achieve this.
>
> (This may be an ignorant question, but) if that's so, is it possible to
> open a separate connection (perhaps with a ControlPath suffix, and
> ControlPersist-ed) in the place of the "Forbidden reentrant call"?

Not so simple. There is a serious overhead when opening a new
connection, due to the handshaking actions. And it isn't clear to me how
to keep two connections in sync, if (for example) the environment
changes in one of the connections. Be it an environment variable, the
current directory, the availability of a temp file, you name it.

But yes, nobody has tried it yet. My preference is to use threads, so
that one command in a process filter could wait until another command in
the main thread has finished, as example. But the crucial point is, that
you must activate threads in the beginning of a connection. When you
detect, that there is a forbidded reentrant call, it is too late to
activate threads.

> Regards,
> James

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 16 Dec 2024 22:35:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 16 17:35:51 2024
Received: from localhost ([127.0.0.1]:56627 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tNJgt-0006IL-7m
	for submit <at> debbugs.gnu.org; Mon, 16 Dec 2024 17:35:51 -0500
Received: from mout.gmx.net ([212.227.17.20]:35761)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jimjoe@HIDDEN>)
 id 1tNJgq-0006Hy-C5; Mon, 16 Dec 2024 17:35:49 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.net;
 s=s31663417; t=1734388539; x=1734993339; i=jimjoe@HIDDEN;
 bh=RDqboM+e8/ki8R7iyaiNbAHB26N6maNtfySrEUvvQCQ=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
 Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
 content-type:date:from:message-id:mime-version:reply-to:subject:
 to;
 b=mN7rsc1yTpG2XmXnnFo7052QJ1A0fvWReYwSBZ6fvYVYjAF+s5xHNgFOAg7sCjzc
 PzTipmEz85ilGY+oZOJBj+06Ct1sbSY3IV3+RnSUkxgj3QIQB6t4WrQQuOLdJmoWP
 f3i+PCt8I+N1qehrd2+jsN46Q0xx6bJLIvdROAnGFvV5AH+QTKz7HmRH7yv5oT07+
 mg99lqFtB78DktO0p2u325kfXOL2Za0+NyHLEPvX5gGGNb11XZlYGRaZt9EdrnRq6
 D+Tz/Px4s7Hmdnne27FdEFa6IA2H5yK6Kd+0oIJbAiU+9L4qGz4RwX8G7ACJaAZUA
 XlYn5jRJAPqOGmnNwg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from user-Inspiron-3493 ([42.104.189.162]) by mail.gmx.net (mrgmx105
 [212.227.17.174]) with ESMTPSA (Nemesis) id 1M89Gt-1tSYTh1fYx-0065vX; Mon, 16
 Dec 2024 23:35:39 +0100
From: James Thomas <jimjoe@HIDDEN>
To: Michael Albinus <michael.albinus@HIDDEN>
Subject: Re: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <878s03s3t1.fsf@HIDDEN> (Michael Albinus's message of "Sat, 11
 Sep 2021 14:19:06 +0200")
References: <875ywf9ea7.fsf@HIDDEN> <871r72ssqi.fsf@HIDDEN>
 <874kby7wn5.fsf@HIDDEN> <875ywdquds.fsf@HIDDEN>
 <87pmtfjyw4.fsf@HIDDEN> <878s03s3t1.fsf@HIDDEN>
Date: Tue, 17 Dec 2024 04:05:22 +0530
Message-ID: <86frmnb6j9.fsf_-_@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:+iMeaQkCcHLvLS4KqCi6lc5va29eo30Iz9g8Qsg0BeVyiv8OGQZ
 9bV7WdO0sEgeuBYE5FdHUA15phM/EpI1EVwx0XMoDdYtJTFA/DgU0AtoZ96wPH9kf3Wnodz
 93Lp/w+rvhXfZDQ9ABEun9vWvaIb/zj6rsEaOchOqu+Krlgo33p8bByEyOk730xoJXx2i5j
 QOJTCwHX0ixrtLNNB/c/A==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:DE0Q6QtDi54=;IB9Gpb1THKOt899mrUQwKPv6YLX
 Es0oa4WAYjZNjEMOXUcUtUF3nkyvAGuY1w0zSTNFrCurYHpGXGWJclobEM7mrer6oQOSvK2bj
 t4ksxRWbsp088smF421LgAaKDMW77szWUfIbFNjx2isWpEH3zxwuj7bSx+5n/FKSKNq/HTCkA
 GvMMNopyipsKoS/+8GIi4J19ec+/jhtJAHR9OzR9w2vc4UNks8auvwcvXfeOq44oz/6w9KNMj
 vQddvBelB/iQpW5K8Kp7mZpCTlXx1VM8FcaewAhdqd9I4XXHb9tNR79UYcBslQh6uc+CoB7wJ
 2OMSPsqk1nakyxPL4k0qrLmHU4ZGYpvEauTl7ysBpExqkDBBu/1HeCRJ3bEQDky37EArzx7Ha
 DuyPClzhixKtiQB44lVFJ3aceqPi56y4WoJVXRii1CS0uiQYoTdYFb/tJRXJavVSjrWwEoNKu
 kSGbwv/NOc6+0zCAmZkhV3o6Y0XKvQoZWb6bjpEBCc064oEXyzHmg8w0yocBLqMWhcQDYBeDC
 8ovlJGKKdQd2BicxFLPhZQr4wbMsdaOMhfOIwVZSw9CFqVX5GYG58Vyq4eO59DSNTe0VMtYYP
 SOKdo65zi/FzL2yRW7q4dXYbvj0XvTi74NsPsjO+DX0VQ+ZGxB5BSAXFvyPavV1enskkOxl0G
 YBBpoNiF46EU0vW7Br3zAlRBfWBdh1Gukbz2XnWIVeslG00zfrv6Ut8LRJHi6ZVDlqPLVPu+K
 IFB0ZuZ0FHUbtZWw+l1KwpWbBAqMvFxsAsUU2nH0MfTyZHzUEac64ifoDrVJj4A0BFpKAtY0x
 9yxv2mezZ0JqRyctcLqstENG3okbJFYPrhovGD0gnEqU6PFDywAbSvR2ebi2vD6M6wn9BEkTE
 0tyCo5kHlmGOAXl0TgY6CZsZoVP9c1da/oDCZTVnrohfnVFrPz+jCKxg1ZKm63IEQ+i9EIIL/
 lCaiMs0HoGsh1mc5JZnyZv7lr3YsHjNhg+hVrGVpdcW8SOJV2WLGLOHyxp4iQGLUd0U0uo9bU
 Cg5dhMZ1zoV7S7hMq8GNAv3Y7WM/r8Xl5M/0EzlstX2D3F7BIYZ/IA3WuNR2Z5eSD69veQ75G
 kRnWE8N1hxno2V7sgV1I2Cd7WxyrWe
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: Dima Kogan <dima@HIDDEN>, 49954 <at> debbugs.gnu.org,
 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Michael Albinus wrote:

> In order to understand the problem, let's assume the following scenario:
>
> - You have connected to a remote host, say "/ssh:host:". Tramp uses
>   internally the process *tramp/ssh host* for communicating with that
>   process.
>
> - You have also started another asynchronous process to that remote
>   host.
>
> - Now, while normal use of Emacs, the function (file-attributes
>   "/ssh:host:/path/to/file") is called. Tramp sends a command to the
>   process *tramp/ssh host*, like "stat /path/to/file".
>
> - While Tramp waits for the answer of the "stat ..." command, your other
>   process has finished. It might have a process sentinel, which is
>   called exactly at this time, because Tramp is in a loop
>   (accept-process-output ...).
>
> - This process filter might trigger another file operation, like
>   (delete-file "/ssh:host:/tmp/tmpfile"). This would require to send
>   another command to the *tramp/ssh host* process like "rm -f /tmp/tmpfile".
>
> - Since the first command, "stat ...", hasn't been finished, this would
>   result in inconsistencies. Tramp detects this situation, and raises
>   the "Forbidden reentrant call of Tramp" error.
>
> Not so easy to solve. Ideally, remote file name functions initiated in
> process filters, process sentinels, timers and alike shall wait, until
> the currently executed remote command has finished. Don't know how to
> achieve this.

(This may be an ignorant question, but) if that's so, is it possible to
open a separate connection (perhaps with a ControlPath suffix, and
ControlPersist-ed) in the place of the "Forbidden reentrant call"?

Regards,
James




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.
Merged 49954 60534. Request was from Michael Albinus <michael.albinus@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 17 Feb 2023 09:42:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 17 04:42:27 2023
Received: from localhost ([127.0.0.1]:38509 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pSxG7-0000Gg-KP
	for submit <at> debbugs.gnu.org; Fri, 17 Feb 2023 04:42:27 -0500
Received: from mout.gmx.net ([212.227.17.21]:43287)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael.albinus@HIDDEN>) id 1pSxG5-0000GS-Ut
 for 60534 <at> debbugs.gnu.org; Fri, 17 Feb 2023 04:42:26 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417;
 t=1676626939; i=michael.albinus@HIDDEN;
 bh=s2RpEkS8ZvKFPGyBFJ5SSD5/GFhL8BBOewoi7jZmCQI=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=cJ0CsnW8EKepWBIblEIh2/Y0OvIXBBWjnyJ9xsiQiot+qDIoPo5J9UUEq3qqndYPl
 gFZvNmBfR976LL7nq9ZBfT9j4J97Mri9EhWj6SGK+Ma4tXbov0G9us9rhCTe971a6V
 0MfNUthdahHvOoJan1Sg1ecX+KLYXeEBQ77b9Xve5RVIFkcfmQQsUTxh8Jzo6s8jue
 UWCh3wLlgp8FKnuKD+QY8/UEOAIkLbc+/fU/BE2lQ7algIDaHzQ9B6QnBDNBDvtqAC
 Pd8P8lwU3ZnCNw8pH21AYlbtPM2HKe6HrAKOvqh9x4tnGHxbSHCqfbtVMq3X48E6Ab
 h3iG2OzECWk4Q==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.39.22]) by mail.gmx.net (mrgmx105
 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MNbkp-1pCfQ00BTf-00P3cv; Fri, 17
 Feb 2023 10:42:19 +0100
From: Michael Albinus <michael.albinus@HIDDEN>
To: Georgi Danov <georgi.danov@HIDDEN>
Subject: Re: bug#60534: 28.2; Forbidden reentrant call of Tramp
In-Reply-To: <AAD7DAAA-B9B6-414F-A3ED-D8004B80E22B@HIDDEN> (Georgi Danov's
 message of "Tue, 3 Jan 2023 21:52:36 +0100")
References: <AAD7DAAA-B9B6-414F-A3ED-D8004B80E22B@HIDDEN>
Date: Fri, 17 Feb 2023 10:42:17 +0100
Message-ID: <87zg9c7hmu.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:yAp2AGs4grlBqqsJ2nTkRcRhupPMBycm408B+MzD1fgNP4Rpv3O
 UKBWd+UTgS3nrT1gCurC+qW9wVDvDHxt6q6WUWiNuWyUzHM39+KLcO04IHII1QkKuiv54dP
 M5FqRsevitbXHrOkqc7vNzX/+DhhizkG77u+Eyy6SA9w077122eX5oRK31E2K7zA2zg6HHd
 jugqPEYaO0aqXmZaiR3hA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:FH8DGmv4Sfk=;YuSglu7PPj0FaKgl7XLtKkhfPBd
 dZ34AS0DH3JGPbXSMCup7lOxK73cPvab+x82DjhZ/60xE77NwSHX9IXy4wRBBdU6PatFtpUbd
 YJwbuppz5QOJxQ8ddseLnCXylMupcV6MB1yCzBMGY5Jla7rrt3yx0b+6JWXniQzMiyehrfkRc
 lScBEkE7+x8mh49bHefZX8uiGENXZEPuuRQG33ch8++vD4cVmGZT+W/SKL9K5NJopHLgUmIIQ
 IX9M5ecKGsEW6Ohvf0jRmHuTH6L9BlatFtLnICUNkzeY6J4/5rNcupebnGiGgUdYf4/3VpSdg
 NkVQFBhOPUQxd5JqtpSj7C18boOwQfKTEhfKq/6Qpts5QCPkT519csA1VUCdM1Izr5U1lkXus
 h6jRX+FRDpoZUpo4Qga3ZUHFtzligY4akO0cAX5kyGK49a7Oh++qll83FjXMcqNhWDZla5Wbz
 qSIP6f6DcozMzEed1jHEDx8pdm3Cq9DUxJSEEqdsREGayAXcg/nD1WYa4D93yUS13BxLpAvDi
 igG5tymBUE7JuVd8cQaQOfTbCGxVdQ4FDulnt2daWrZavc2T9uCFREwQc78rCcuA59+dEqLs0
 D/RlxGhHJMiZsZi+J1IG+JOyf+MIZdBWA6/2qLrBwVKwQ7HA1xQK1mbqBz5UJz57C55fB5RnK
 eRR5GxtnL9kiZBwW0NmWx/scn4hgIsMvibMYNrNJxzlHhIIFFSiJNBkl/r2CygNIN/HUsqFm3
 dCpleu+F+TL86N9hW0QP1sOMhZrELxeSAu5HLU/mKlpGvrYO7O0L/jZde7WcytF2DOtUrKJhD
 xkmpKHuhDCofTBfDOTKo1uhg4CXhXhqIYIO3urnDTzQNd+Gu0axBhajqSDwWT17zzp6fQsaGD
 qZ9hTU9SqGe/hOu2hxRNYa2QNjR6ggxP7GtMgrt3lhfzlv5AxOxOLm2opZRoRKvytVZlyMydl
 SbuiWQ==
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 60534
Cc: 60534 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Georgi Danov <georgi.danov@HIDDEN> writes:

Hi Georgi,

> As discussed in github issue
> https://github.com/joaotavora/eglot/issues/859# eglot over tramp throws
> "reentrant call" error. This is sympthom of underlying design issue -
>  aux libraries use files without being aware of the tramp conection, the
>  connection itself has no concurrency control, pooling or other
>  multi-user features and without that guard error different tramp clients
>  corrupt each other's communication with the language server.

Yes. This is a long standing problem in Tramp I have no solution
yet. Likely we need threading in Tramp for this, but this causes other
problems.

For the time being I merge this with bug#49954, which points to the same
problem (although with different symptoms).

Best regards, Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at 60534 <at> debbugs.gnu.org:


Received: (at 60534) by debbugs.gnu.org; 4 Jan 2023 09:34:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 04 04:34:11 2023
Received: from localhost ([127.0.0.1]:47766 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pD09z-00040Q-HR
	for submit <at> debbugs.gnu.org; Wed, 04 Jan 2023 04:34:11 -0500
Received: from mail-ej1-f42.google.com ([209.85.218.42]:41664)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <georgi.danov@HIDDEN>) id 1pD09u-0003zk-ME
 for 60534 <at> debbugs.gnu.org; Wed, 04 Jan 2023 04:34:10 -0500
Received: by mail-ej1-f42.google.com with SMTP id u19so81137802ejm.8
 for <60534 <at> debbugs.gnu.org>; Wed, 04 Jan 2023 01:34:06 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=message-id:in-reply-to:to:references:date:subject:mime-version
 :content-transfer-encoding:from:from:to:cc:subject:date:message-id
 :reply-to; bh=WsmVNtalV7z2YotrJVafJQ+AkiyVxMKii/mA/n2Keno=;
 b=jPjZUjJOWg1Fg7xugw7qCE45e3DEKlqV04W5MTPjE+m3Zo595C7tmo3Pdw3QaAQSl5
 Q6OUOj/DqWTx4SAjsqrtx20Rk+3PDS680TuqjQ5KOGPkOCbW4sxkz062c0KadLJNRFEg
 X7eLDgzIVDxTKgg0b4bgSs/uRGOEp3CHdXnHmyoglSuX9jYlgCwVSqjWKLAbea6FJpYL
 p5xPYYPR263zoXWbyFR2jgJ+vIR7D3PoaqbUn3ahzxXSu7WTbln/4OJliJNgM3Ln2fHe
 LQQLUYFDYscIkJaqDnC0PqEt8n810oJc5z2jWdGetHqpnhoDONTENvWv21rPorWbEUty
 P0BA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=message-id:in-reply-to:to:references:date:subject:mime-version
 :content-transfer-encoding:from:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=WsmVNtalV7z2YotrJVafJQ+AkiyVxMKii/mA/n2Keno=;
 b=SZRtNurtrUh0yIgJJ+FNt/3Da4nrlxUB+xcQbCgOk1HNncjcMQzwnd9vnGQcHSP7Rb
 jrRgiDmB8jBTEDiijsosTWCgIJmGtxfxlsghoy9ubybRE07+o7xEykAWhbugC9/+j2Fk
 v7QDa5e+ZA4KpJuvqiRdp0Qn05ET8IUJKowP/k/ZFoLQTQDro9oWwdeN0ZCaFIohYBsC
 G2YfT/IwQsFuEsZoRyTsqyq6jfn7lBaZOb0iHU57gOtOk59k54UTjqiiHH2rD5Uy7QUr
 7dEn97sAYk025nx9jTr+FVLngpf9dUeN9K7h1SOVHl1V3zPxGAhTtVghtIRU97PMdaYR
 dZiA==
X-Gm-Message-State: AFqh2kommf9PVXbLcxYc2ah/JzZaIjvlcyPbeMh5V+suGxsNoHcRIm2R
 bhaTvgI9UjEHTsSuYseJ9oGbk2hfjLmZxQ==
X-Google-Smtp-Source: AMrXdXuARZgGEho9TgEJIvUEDchHOJUGR+9N8k8gQuej+JYVODqzwLX5wRFO50FTrgo/aA/dmltWYg==
X-Received: by 2002:a17:906:6dd4:b0:7c1:1fcf:266c with SMTP id
 j20-20020a1709066dd400b007c11fcf266cmr40093105ejt.14.1672824840285; 
 Wed, 04 Jan 2023 01:34:00 -0800 (PST)
Received: from smtpclient.apple (77.117.176.238.wireless.dyn.drei.com.
 [77.117.176.238]) by smtp.gmail.com with ESMTPSA id
 s8-20020a170906354800b007ad2da5668csm14940312eja.112.2023.01.04.01.33.59
 for <60534 <at> debbugs.gnu.org>
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 04 Jan 2023 01:33:59 -0800 (PST)
From: Georgi Danov <georgi.danov@HIDDEN>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.300.101.1.3\))
Subject: Re: bug#60534: Acknowledgement (28.2; Forbidden reentrant call of
 Tramp)
Date: Wed, 4 Jan 2023 10:33:47 +0100
References: <AAD7DAAA-B9B6-414F-A3ED-D8004B80E22B@HIDDEN>
 <handler.60534.B.167279020325447.ack <at> debbugs.gnu.org>
To: 60534 <at> debbugs.gnu.org
In-Reply-To: <handler.60534.B.167279020325447.ack <at> debbugs.gnu.org>
Message-Id: <1998C4D1-AA30-4DF5-AB4B-95F82A10C4A3@HIDDEN>
X-Mailer: Apple Mail (2.3731.300.101.1.3)
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 60534
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

additional context: with the docker tramp the problem is reproduced much =
easier than with ssh tramp.

> On 04.01.2023, at 00:57, GNU bug Tracking System =
<help-debbugs@HIDDEN> wrote:
>=20
> Thank you for filing a new bug report with debbugs.gnu.org.
>=20
> This is an automatically generated reply to let you know your message
> has been received.
>=20
> Your message is being forwarded to the package maintainers and other
> interested parties for their attention; they will reply in due course.
>=20
> Your message has been sent to the package maintainer(s):
> bug-gnu-emacs@HIDDEN
>=20
> If you wish to submit further information on this problem, please
> send it to 60534 <at> debbugs.gnu.org.
>=20
> Please do not send mail to help-debbugs@HIDDEN unless you wish
> to report a problem with the Bug-tracking system.
>=20
> --=20
> 60534: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D60534
> GNU Bug Tracking System
> Contact help-debbugs@HIDDEN with problems





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 3 Jan 2023 23:56:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 03 18:56:43 2023
Received: from localhost ([127.0.0.1]:47091 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1pCr98-0006cH-8f
	for submit <at> debbugs.gnu.org; Tue, 03 Jan 2023 18:56:43 -0500
Received: from lists.gnu.org ([209.51.188.17]:45428)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <georgi.danov@HIDDEN>) id 1pCoHI-0000t1-6Y
 for submit <at> debbugs.gnu.org; Tue, 03 Jan 2023 15:52:57 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <georgi.danov@HIDDEN>)
 id 1pCoHH-0003pq-UF
 for bug-gnu-emacs@HIDDEN; Tue, 03 Jan 2023 15:52:55 -0500
Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <georgi.danov@HIDDEN>)
 id 1pCoHF-0007y5-9v
 for bug-gnu-emacs@HIDDEN; Tue, 03 Jan 2023 15:52:55 -0500
Received: by mail-wm1-x32c.google.com with SMTP id
 ay2-20020a05600c1e0200b003d22e3e796dso24622100wmb.0
 for <bug-gnu-emacs@HIDDEN>; Tue, 03 Jan 2023 12:52:52 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=to:cc:date:message-id:subject:mime-version
 :content-transfer-encoding:from:from:to:cc:subject:date:message-id
 :reply-to; bh=Oc9SIISq6A//txLFijC/zGtz3WyIlv/dDt8RNYxKpHk=;
 b=dqQ/n05gh4TVBaF3zP3UUilrIs15cPRKKKlVC1abAXLk7aCVp6L9o+I7fTiI4yldZv
 WNu503DwRqOkbg2vZuEIcedygowYuzaTBUnAeD6OtnsUTC4PkbnoHfj4ljcPkG5BxjlO
 CyFvLl3PLjEDMyWoU6kqqlV5hG3n8srJ+M315GHbLp1yI7VFWW3LcNxwFhXDmyq0+ffF
 Y0edWb4Oy0WV3f+w45LBdePFSnIL7zWAZXzQiMADJcXcVEeerYBi0/Qcnwi2645bFOGs
 2Lbv5ntsI2E+9m3ae0g8FRi6Ib81LCZB7fJkl+5YiDGuR+YuS280yZIsEWtr/MDX3DuE
 xYmA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=to:cc:date:message-id:subject:mime-version
 :content-transfer-encoding:from:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=Oc9SIISq6A//txLFijC/zGtz3WyIlv/dDt8RNYxKpHk=;
 b=f7WTad5PHd2YsIgCwZw8Qf/dLrxn3e5AdjwLLesAnyyHQY6+W1TcaUiGvG2Eh9ZRD+
 RzcH+dPgrLRDn8egHhoHy7Sdn3V8B6QEr52TQnT0DUtDQl8y+SJoU9yhFfPMHZ4nzYCq
 Qx1SxLT04URGj0ezU7JBjLXaMFqZgJb8NoAsHg+3ynao10sw4P83hsdi2dEWSWMhFFld
 G+QcbHmx1Ct9IU2YgY9QKr5P1EvzZPajbmgWScnvTVNqSnDL6yjuO7Pq9IIN9+dYrqvH
 jc6TFI4ZNZtpVGahpYqB9WCb0orXOJsgCqrUfeWgMfOEOjsNQkSaywMcQmECJviAFYzi
 fCUg==
X-Gm-Message-State: AFqh2kr9evyKybhGlalYkWXfUKg3Oi0i5Tbbn8oRQBN2STUrV6xkrKkU
 B7BteUsqaIpOh6ROuClaixkqFJ7+Bpm/Lw==
X-Google-Smtp-Source: AMrXdXuvo84pWT0B8o+essO4HOoTjmyzB8Ggfm5B703vTdHcMPIoXmZ+5R7Bt6fw6jh7jfsDvntVrA==
X-Received: by 2002:a05:600c:3acd:b0:3d1:c354:77b6 with SMTP id
 d13-20020a05600c3acd00b003d1c35477b6mr35831390wms.29.1672779171013; 
 Tue, 03 Jan 2023 12:52:51 -0800 (PST)
Received: from smtpclient.apple (77.117.202.17.wireless.dyn.drei.com.
 [77.117.202.17]) by smtp.gmail.com with ESMTPSA id
 x7-20020a05600c188700b003d9aa76dc6asm15975730wmp.0.2023.01.03.12.52.49
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 03 Jan 2023 12:52:50 -0800 (PST)
From: Georgi Danov <georgi.danov@HIDDEN>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.300.101.1.3\))
Subject: 28.2; Forbidden reentrant call of Tramp
Message-Id: <AAD7DAAA-B9B6-414F-A3ED-D8004B80E22B@HIDDEN>
Date: Tue, 3 Jan 2023 21:52:36 +0100
To: bug-gnu-emacs@HIDDEN
X-Mailer: Apple Mail (2.3731.300.101.1.3)
Received-SPF: pass client-ip=2a00:1450:4864:20::32c;
 envelope-from=georgi.danov@HIDDEN; helo=mail-wm1-x32c.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Tue, 03 Jan 2023 18:56:39 -0500
Cc: michael.albinus@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)


As discussed in github issue
https://github.com/joaotavora/eglot/issues/859# eglot over tramp throws
"reentrant call" error. This is sympthom of underlying design issue -
 aux libraries use files without being aware of the tramp conection, the
 connection itself has no concurrency control, pooling or other
 multi-user features and without that guard error different tramp =
clients
 corrupt each other's communication with the language server.

The problem is reproducible by using company mode, probably the language
is not important. In my case it's typescript. Takes 15-30 seconds of
editing and autocomplete to trigger it.

The main congestions seems to happen in file-truename() -- after
displaying candidate company mode goes on to do refresh in the =
background
and calls file-truename repeatedly while eglot (or someone else) is =
occupying the tramp
connection. Point is -- the same tramp connection is used by eglot and
any other minor mode that queries file name or state, but they have no
means to share or coordinate this use other than the exception above.

Tramp used to throw more insignificant error in the past and tolerate
the behavior (which corrupts the data exchanged between eglot and the
lsp) and now throws this error. See `with-tramp-locked-connection`
macro.=20

I got this problem with other minor modes too, but did not capture the
stack as I lowered the error prio via (add-to-list 'debug-ignored-errors
'remote-file-error). Reading the code would've suggested corruption
won't happen but still garbage was let in the stdio pipe and eglot lost =
track of the
buffer state.

--------------------------
In GNU Emacs 28.2 (build 1, x86_64-apple-darwin22.1.0, Carbon Version =
169 AppKit 2299)
 of 2022-11-24 built on GDMBP.local
Windowing system distributor 'Apple Inc.', version 13.1.0
System Description:  macOS 13.1

Configured using:
 'configure --enable-locallisppath=3D/usr/local/share/emacs/site-lisp
 =
--infodir=3D/usr/local/Cellar/emacs-mac/emacs-28.2-mac-9.1/share/info/emac=
s
 --prefix=3D/usr/local/Cellar/emacs-mac/emacs-28.2-mac-9.1 --with-mac
 --enable-mac-app=3D/usr/local/Cellar/emacs-mac/emacs-28.2-mac-9.1
 --with-gnutls --with-modules'

Configured features:
ACL GMP GNUTLS JSON LIBXML2 MODULES NOTIFY KQUEUE PDUMPER THREADS
TOOLKIT_SCROLL_BARS XIM ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: TSX

Minor modes in effect:
  rainbow-delimiters-mode: t
  electric-pair-mode: t
  guru-mode: t
  subword-mode: t
  eglot--managed-mode: t
  flymake-mode: t
  popper-echo-mode: t
  popper-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  joro-mode: t
  doom-modeline-mode: t
  minions-mode: t
  override-global-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  global-hl-todo-mode: t
  hl-todo-mode: t
  which-function-mode: t
  global-company-mode: t
  company-mode: t
  helm-mode: t
  helm-minibuffer-history-mode: t
  helm-descbinds-mode: t
  helm--remap-mouse-mode: t
  async-bytecomp-package-mode: t
  ivy-mode: t
  editorconfig-mode: t
  winner-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  global-anzu-mode: t
  anzu-mode: t
  projectile-mode: t
  volatile-highlights-mode: t
  global-hl-line-mode: t
  super-save-mode: t
  windmove-mode: t
  recentf-mode: t
  savehist-mode: t
  save-place-mode: t
  show-smartparens-global-mode: t
  show-smartparens-mode: t
  smartparens-mode: t
  global-auto-revert-mode: t
  delete-selection-mode: t
  prelude-mode: t
  shell-dirtrack-mode: t
  which-key-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mac-mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t

Load-path shadows:
/Users/gdanov/.emacs.d/elpa/cmake-mode-20221130.1357/cmake-mode hides =
/usr/local/share/emacs/site-lisp/cmake/cmake-mode
/Users/gdanov/.emacs.d/elpa/transient-20221119.1503/transient hides =
/usr/local/Cellar/emacs-mac/emacs-28.2-mac-9.1/share/emacs/28.2/lisp/trans=
ient

Features:
(shadow sort mail-extr emacsbug sendmail typescript-mode
cc-mode-expansions smartparens-c cc-mode cc-fonts cc-guess cc-menus
cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs eieio-opt speedbar
ezimage dframe helm-command bug-reference helm-x-files elisp-slime-nav
rainbow-delimiters elec-pair guru-mode subword-mode-expansions cap-words
superword subword eglot array jsonrpc ert debug flymake-proc flymake
ffap tramp-archive tramp-gvfs dbus helm-for-files helm-bookmark
helm-adaptive helm-external helm-net codespaces
use-package-ensure-system-package system-packages use-package
use-package-delight use-package-diminish tramp-theme em-dirs esh-var
esh-mode poly-markdown smartparens-markdown markdown-mode polymode
poly-lock polymode-base polymode-weave polymode-export polymode-compat
polymode-methods polymode-core polymode-classes eieio-custom eieio-base
graphql-mode let-alist org-jira org-jira-sdk jiralib request soap-client
url-http url-auth url-gw nsm rng-xsd xsd-regexp xml org-clock
the-org-mode-expansions org-element avl-tree smartparens-org org ob
ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src
ob-comint org-pcomplete org-list org-faces org-entities noutline outline
org-version ob-emacs-lisp ob-core ob-eval org-table oc-basic bibtex ol
org-keys oc org-compat org-macs org-loaddefs cal-menu calendar
cal-loaddefs git-link popper-echo popper magit-bookmark magit-submodule
magit-obsolete magit-blame magit-stash magit-reflog magit-bisect
magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit
magit-sequence magit-notes magit-worktree magit-tag magit-merge
magit-branch magit-reset magit-files magit-refs magit-status magit
magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode
git-commit log-edit message rmc puny rfc822 mml mml-sec epa epg rfc6068
epg-config gnus-util rmail rmail-loaddefs mailabbrev mail-utils
gmm-utils mailheader add-log magit-core magit-autorevert magit-margin
magit-transient magit-process with-editor server magit-mode transient
magit-git magit-base magit-section crm compat-27 compat-26 prettier-js
web-mode-expansions web-mode disp-table smart-shift indent-tools
yafolding hydra lv indent-tools-indentation-of highlight-indentation
helm-cider-history helm-cider helm-cider-spec helm-cider-repl
helm-cider-cheatsheet helm-cider-util cider-cheatsheet cider cider-debug
cider-browse-ns cider-mode cider-find cider-inspector cider-completion
cider-profile cider-eval cider-jar arc-mode archive-mode
cider-repl-history pulse cider-repl cider-resolve cider-test
cider-overlays cider-stacktrace cider-doc cider-browse-spec
cider-clojuredocs cider-eldoc cider-client cider-common cider-connection
cider-util cider-popup sesman-browser nrepl-client nrepl-dict spinner
clojure-mode-expansions smartparens-clojure sesman clojure-mode align
parseedn parseclj-parser parseclj-lex parseclj-alist posframe
doom-modeline doom-modeline-segments doom-modeline-env
doom-modeline-core all-the-icons all-the-icons-faces data-material
data-weathericons data-octicons data-fileicons data-faicons
data-alltheicons shrink-path f f-shortdoc shortdoc s minions
doom-themes-ext-org doom-themes-ext-treemacs doom-themes-ext-neotree
doom-themes-ext-visual-bell face-remap doom-one-theme doom-themes
doom-themes-base nlinum linum helm-ring helm-ls-git derived vc-git
helm-ag helm-xref use-package-bind-key bind-key rainbow-mode
quelpa-use-package quelpa mm-decode mm-bodies mm-encode help-fns
radix-tree use-package-ensure use-package-core prelude-modules
prelude-xml nxml-mode-expansions rng-nxml rng-valid rng-loc rng-uri
rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns
nxml-mode nxml-outln nxml-rap html-mode-expansions smartparens-html
sgml-mode facemenu dom nxml-util nxml-enc xmltok prelude-shell sh-script
smie executable prelude-emacs-lisp prelude-lisp prelude-programming
flycheck hl-todo compat compat-macs which-func prelude-css
prelude-company company-oddmuse company-keywords company-etags
company-gtags company-dabbrev-code company-dabbrev company-files
company-clang company-capf company-cmake company-semantic
company-template company-bbdb company prelude-helm-everywhere helm-mode
helm-misc helm-descbinds helm-eshell helm-elisp helm-eval edebug
backtrace find-func helm-info prelude-helm helm-projectile helm-files
image-dired image-mode exif helm-tags helm-buffers helm-occur helm-grep
helm-regexp helm-locate helm-types helm-imenu helm-utils helm-help helm
helm-global-bindings helm-easymenu helm-core async-bytecomp helm-source
helm-multi-match helm-lib async helm-config prelude-ivy two-column ivy
ivy-faces ivy-overlay colir color prelude-macos exec-path-from-shell
prelude-global-keybindings warnings prelude-editor editorconfig
editorconfig-core editorconfig-core-handle editorconfig-fnmatch
operate-on-number calc-bin calc-ext calc calc-loaddefs calc-macs diff-hl
smartrep log-view pcvs-util vc-dir ewoc vc vc-dispatcher diff-mode
winner undo-tree diff queue eshell esh-cmd esh-ext esh-opt esh-proc
esh-io esh-arg esh-module esh-groups esh-util re-builder whitespace
tabify browse-kill-ring midnight ediff ediff-merg ediff-mult ediff-wind
ediff-diff ediff-help ediff-init ediff-util dired-x anzu avy tramp-sh
projectile skeleton ibuf-macs find-dired dired dired-loaddefs lisp-mnt
mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr grep
compile ibuf-ext ibuffer ibuffer-loaddefs bookmark text-property-search
pp expand-region text-mode-expansions er-basic-expansions
expand-region-core expand-region-custom flyspell ispell rect etags
fileloop generator xref project volatile-highlights hl-line super-save
windmove recentf tree-widget wid-edit savehist saveplace diminish
smartparens-config smartparens-text smartparens advice dash autorevert
filenotify delsel prelude-mode easy-mmode crux docker-tramp tramp-cache
tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat
shell pcomplete comint ansi-color ring parse-time iso8601 time-date
ls-lisp format-spec thingatpt imenu-anywhere imenu pcase jka-compr
prelude-core epl prelude-ui which-key prelude-custom prelude-packages
cl-extra help-mode finder-inf rx info edmacro kmacro package browse-url
url url-proxy url-privacy url-expand url-methods url-history url-cookie
url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq
eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map
url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib
iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/mac-win mac-win term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer cl-generic
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads kqueue mac
multi-tty make-network-process emacs)

Memory information:
((conses 16 1024998 582937)
 (symbols 48 64969 19)
 (strings 32 287822 163197)
 (string-bytes 1 9937920)
 (vectors 16 113430)
 (vector-slots 8 2200185 552812)
 (floats 8 1234 2058)
 (intervals 56 14261 3055)
 (buffers 992 43))





Acknowledgement sent to Georgi Danov <georgi.danov@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#60534; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Wed, 28 Jan 2026 12:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.