Subject: Re: bug#54353: 29.0.50; macOS: gdb over ssh into docker stalls

From: Michael Albinus <[email-masked]>
Date: Sat, 12 Mar 2022 18:41:35 +0100

Aleksandar Popadić <[email-masked]> writes:

Hi Aleksandar,

> In tramp debug buffer, I see the following:
> 11:58:17.969961 tramp-accept-process-output (10) # 
>   backtrace()
>   tramp-error((tramp-file-name "ssh" "test" nil "localhost" "2222" "/home/test/test.c" nil) quit "")
>   tramp-signal-hook-function(quit nil)
>   accept-process-output(#<process *tramp/ssh test@localhost#2222*> nil nil t)
>   tramp-accept-process-output(#<process *tramp/ssh test@localhost#2222*>)
>   tramp-wait-for-regexp(#<process *tramp/ssh test@localhost#2222*> nil "\\(^\\|\0\\)[^#$\n]*///f743817e0468bdcc00a56151a4c9b874...")
>   tramp-wait-for-output(#<process *tramp/ssh test@localhost#2222*>)
>   tramp-send-command((tramp-file-name "ssh" "test" nil "localhost" "2222" "/home/test/test.c" nil) "test -e /home/test/test.c 2>/dev/null; echo tramp_...")
>   tramp-send-command-and-check((tramp-file-name "ssh" "test" nil "localhost" "2222" "/home/test/test.c" nil) "test -e /home/test/test.c")
>   tramp-sh-handle-file-exists-p("/ssh:test@localhost#2222:/home/test/test.c")
>   apply(tramp-sh-handle-file-exists-p "/ssh:test@localhost#2222:/home/test/test.c")
>   tramp-sh-file-name-handler(file-exists-p "/ssh:test@localhost#2222:/home/test/test.c")
>   apply(tramp-sh-file-name-handler file-exists-p "/ssh:test@localhost#2222:/home/test/test.c")
>   tramp-file-name-handler(file-exists-p "/ssh:test@localhost#2222:/home/test/test.c")
>   file-exists-p("/ssh:test@localhost#2222:/home/test/test.c")
>   gud-file-name("/home/test/test.c")
>   gud-find-file("/home/test/test.c")
>   gud-display-line("/home/test/test.c" 2)
>   gud-display-frame()
>   gdb-frame-handler()
>   gdb-handle-reply(29)
>   gdb-done-or-error("29" done "frame={level=\"0\",addr=\"0x000055e839174131\",func=\"m..." t)
>   gdb-done("29" "frame={level=\"0\",addr=\"0x000055e839174131\",func=\"m..." t)
>   gdbmi-bnf-incomplete-record-result("29" (gdb-done . progressive))
>   #f(compiled-function () #<bytecode 0x1fdfe192a9cab>)()
>   gdbmi-bnf-result-and-async-record-impl()
>   gdbmi-bnf-async-record()
>   gdbmi-bnf-out-of-band-record()
>   gdbmi-bnf-output()
>   gud-gdbmi-marker-filter("cx\",\"edx\",\"esi\",\"edi\",\"ebp\",\"esp\",\"r8d\",\"r9d\",\"r10...")
>   apply(gud-gdbmi-marker-filter "cx\",\"edx\",\"esi\",\"edi\",\"ebp\",\"esp\",\"r8d\",\"r9d\",\"r10...")
>   gud-marker-filter("cx\",\"edx\",\"esi\",\"edi\",\"ebp\",\"esp\",\"r8d\",\"r9d\",\"r10...")
>   gud-filter(#<process gud-test> "cx\",\"edx\",\"esi\",\"edi\",\"ebp\",\"esp\",\"r8d\",\"r9d\",\"r10...")
> 11:58:17.970127 tramp-accept-process-output (1) # Quit: "Quit", ""

I'm not an expert in macOS or docker. But in order to analyze Tramp
traces, I would need the complete Tramp debug buffer. All what I could
tell from the snippet above is, that Tramp has been invoked with
(file-exists-p "/ssh:test@localhost#2222:/home/test/test.c"), which
looks proper.

> Best regards
> Aleksandar Popadić

Best regards, Michael.