unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: "Gerd Möllmann" <gerd.moellmann@gmail.com>
Cc: lenbok@gmail.com, 75056@debbugs.gnu.org
Subject: bug#75056: 31.0.50; tty-child-frames with server / multiple clients possible hangs
Date: Fri, 27 Dec 2024 10:18:45 +0200	[thread overview]
Message-ID: <8634i9y1wa.fsf@gnu.org> (raw)
In-Reply-To: <m28qs1hda1.fsf@gmail.com> (message from Gerd Möllmann on Fri, 27 Dec 2024 07:04:54 +0100)

> Cc: 75056@debbugs.gnu.org
> From: Gerd Möllmann <gerd.moellmann@gmail.com>
> Date: Fri, 27 Dec 2024 07:04:54 +0100
> 
> I can reproduce what you describe, I think, but I must admit that I'm a
> bit at a loss at the moment. Something similar happens BTW if the server
> is a GUI Emacs. Pretty weird.
> 
> And then I found this in admin/notes/multi-tty, under known problems:
> 
>         * The single-kboard mode.
> 
> 	  If your multi-tty Emacs session seems to be frozen, you
> 	  probably have a recursive editing session or a pending
> 	  minibuffer prompt (which is a kind of recursive editing) on
> 	  another display.  To unfreeze your session, switch to that
> 	  display and complete the recursive edit, for example by
> 	  pressing C-] ('abort-recursive-edit').
> 
> 	  I am sorry to say that currently there is no way to break
> 	  out of this "single-kboard mode" from a frozen display.  If
> 	  you are unable to switch to the display that locks the
> 	  others (for example because it is on a remote computer),
> 	  then you can use emacsclient to break out of all recursive
> 	  editing sessions:
> 
> 		emacsclient -e '(top-level)'
> 
> 	  Note that this (perhaps) unintuitive behavior is by design.
> 	  Single-kboard mode is required because of an intrinsic Emacs
> 	  limitation that is very hard to eliminate.  (This limitation
> 	  is related to the single-threaded nature of Emacs.)
> 
> 	  I plan to implement better user notification and support for
> 	  breaking out of single-kboard mode from locked displays.
> 
> Also see the long list of things to do in the same file, which makes me
> a bit wary.

Can you explain how the above limitation causes the problem reported
in this bug?  That is, how do child frames trigger the bug?  Because
"normal" frames don't, AFAIU, right?  That is, one could have two or
more client TTY frames on several displays in the same Emacs session,
without having any of them stop being responsive, right?  Also, what
is the role of vertico-posframe in this scenario?

IOW, I don't yet have a clear picture of what happens, although the
limitations you found in that admin file are known to me.  AFAIK, the
single-kboard situation is still with us, search keyboard.c for
"single_kboard".

> @Eli: I think we should invoke a multi-tty expert who can tell if what
> we see here can be kind of expected with the current state of multi-tty or
> not. And maybe can tell how up-to-date admin/notes/multi-tty is in the
> first place.

We don't have such an expert on board, sadly, not for a long while.
We are on our own.





  reply	other threads:[~2024-12-27  8:18 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-24  5:43 bug#75056: 31.0.50; tty-child-frames with server / multiple clients possible hangs Len Trigg
2024-12-25 11:54 ` Eli Zaretskii
2024-12-25 11:59   ` Gerd Möllmann
2024-12-27  6:04 ` Gerd Möllmann
2024-12-27  8:18   ` Eli Zaretskii [this message]
2024-12-27  8:46     ` Gerd Möllmann
2024-12-27  8:54       ` Eli Zaretskii
2024-12-27  9:04         ` Gerd Möllmann
2024-12-27 12:28           ` Eli Zaretskii
2024-12-27 12:47             ` Gerd Möllmann
2024-12-27 13:02               ` Eli Zaretskii
2024-12-27 13:17                 ` Gerd Möllmann
2024-12-27 14:53                   ` Eli Zaretskii
2024-12-27 15:56                     ` Gerd Möllmann
2024-12-27 18:13                 ` Len Trigg
2024-12-27 18:23                   ` Len Trigg
2024-12-28  7:52                     ` Eli Zaretskii
     [not found]                 ` <CAOGVwenNt8a0HmSXTnqu5_FKkxEVMDw0hmak-MLk7Sn6up_wtg@mail.gmail.com>
2024-12-28  7:44                   ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8634i9y1wa.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=75056@debbugs.gnu.org \
    --cc=gerd.moellmann@gmail.com \
    --cc=lenbok@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).