Package: emacs;
Reported by: Benjamin Schwehn <bschwehn <at> gmail.com>
Date: Fri, 22 Sep 2023 10:23:02 UTC
Severity: normal
Found in version 29.1.50
Done: Po Lu <luangruo <at> yahoo.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 66151 in the body.
You can then email your comments to 66151 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 10:23:02 GMT) Full text and rfc822 format available.Benjamin Schwehn <bschwehn <at> gmail.com>
:bug-gnu-emacs <at> gnu.org
.
(Fri, 22 Sep 2023 10:23:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Benjamin Schwehn <bschwehn <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 22 Sep 2023 12:22:08 +0200
Hi, I have emacs daemon reproducibly crashing in this scenario: - emacs running as daemon via systemd user service - running "emacsclient -nc" via ssh -X session - stop X server on client machine or cut network connection between client and server - run emacsclient -nc again Result: emacs window opens for about a second, then the daemon crashes. The daemon then automatically restarts via the systemd service and once it is up again, emacsclient works fine again. Log in journalctl: 11:10:18 emacs[267232]: Backtrace: 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x1a81e1)[0x5584b348c1e1] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x51635)[0x5584b3335635] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x5206d)[0x5584b333606d] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x2edfb1)[0x5584b35d1fb1] 11:10:18 emacs[267232]: /lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x7f21b6fc5520] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x138684)[0x5584b341c684] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x2c1a7c)[0x5584b35a5a7c] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x2c2e9b)[0x5584b35a6e9b] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x228234)[0x5584b350c234] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x228147)[0x5584b350c147] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x21897d)[0x5584b34fc97d] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x228147)[0x5584b350c147] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x218e55)[0x5584b34fce55] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x228147)[0x5584b350c147] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x217ccd)[0x5584b34fbccd] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x228147)[0x5584b350c147] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x228147)[0x5584b350c147] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x229045)[0x5584b350d045] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x226da3)[0x5584b350ada3] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x22991d)[0x5584b350d91d] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x224a73)[0x5584b3508a73] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x224c7c)[0x5584b3508c7c] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x226da3)[0x5584b350ada3] 11:10:18 emacs[267232]: /usr/local/lib/emacs/29.1.50/native-lisp/29.1.50-962049e0/server-0cc44189-b99afbb0.eln(F7365727665722d65786563757465_server_execute_0+0x868)[0x7f21b06b7fc8] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x224fe2)[0x5584b3508fe2] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x2720d7)[0x5584b35560d7] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x226da3)[0x5584b350ada3] 11:10:18 emacs[267232]: /usr/local/lib/emacs/29.1.50/native-lisp/29.1.50-962049e0/server-0cc44189-b99afbb0.eln(F7365727665722d657865637574652d636f6e74696e756174696f6e_server_execute_continuation_0+0x> 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x226da3)[0x5584b350ada3] 11:10:18 emacs[267232]: /usr/local/lib/emacs/29.1.50/native-lisp/29.1.50-962049e0/server-0cc44189-b99afbb0.eln(F7365727665722d70726f636573732d66696c746572_server_process_filter_0+0xe33)[0x7f21b06b5e3> 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x226da3)[0x5584b350ada3] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x227410)[0x5584b350b410] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x27c3d1)[0x5584b35603d1] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x2231dc)[0x5584b35071dc] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x27cad6)[0x5584b3560ad6] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x283701)[0x5584b3567701] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x19401a)[0x5584b347801a] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x195e03)[0x5584b3479e03] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x1a0bc5)[0x5584b3484bc5] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x18c30d)[0x5584b347030d] 11:10:18 emacs[267232]: /usr/local/bin/emacs(+0x223147)[0x5584b3507147] 11:10:18 emacs[267232]: ... 11:10:18 systemd[907]: emacs.service: Main process exited, code=dumped, status=11/SEGV 11:10:18 systemd[907]: emacs.service: Failed with result 'core-dump'. 11:10:18 systemd[907]: emacs.service: Consumed 48.123s CPU time. 11:10:19 systemd[907]: emacs.service: Scheduled restart job, restart counter is at 1. 11:10:19 systemd[907]: Stopped Emacs text editor. 11:10:19 systemd[907]: emacs.service: Consumed 48.123s CPU time. sed -n 's/.*(\(.*\)).*$/\1/p' /tmp/emacscrashlog |\ addr2line -C -f -i -p -e /usr/local/bin/emacs emacs_backtrace at /home/ben/install/emacs/emacs/src/sysdep.c:2304 terminate_due_to_signal at /home/ben/install/emacs/emacs/src/emacs.c:458 deliver_process_signal at /home/ben/install/emacs/emacs/src/sysdep.c:1741 (inlined by) deliver_fatal_signal at /home/ben/install/emacs/emacs/src/sysdep.c:1789 deliver_thread_signal.constprop.0 at /home/ben/install/emacs/emacs/src/sysdep.c:1765 ?? ??:0 make_lisp_ptr at /home/ben/install/emacs/emacs/src/lisp.h:1364 (inlined by) realize_default_face at /home/ben/install/emacs/emacs/src/xfaces.c:5802 (inlined by) realize_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:5736 recompute_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:682 (inlined by) recompute_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:677 (inlined by) free_realized_fontsets at /home/ben/install/emacs/emacs/src/fontset.c:1345 Fset_fontset_font at /home/ben/install/emacs/emacs/src/fontset.c:1696 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2515 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) FletX at /home/ben/install/emacs/emacs/src/eval.c:958 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) Flet at /home/ben/install/emacs/emacs/src/eval.c:1026 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) funcall_lambda at /home/ben/install/emacs/emacs/src/eval.c:3233 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 funcall_nil at /home/ben/install/emacs/emacs/src/eval.c:2679 run_hook_with_args at /home/ben/install/emacs/emacs/src/eval.c:2822 Frun_hooks at /home/ben/install/emacs/emacs/src/eval.c:2700 (discriminator 3) Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 ?? ??:0 funcall_subr at /home/ben/install/emacs/emacs/src/eval.c:3046 exec_byte_code at /home/ben/install/emacs/emacs/src/bytecode.c:809 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 ?? ??:0 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 safe_free at /home/ben/install/emacs/emacs/src/lisp.h:5373 (inlined by) Fapply at /home/ben/install/emacs/emacs/src/eval.c:2668 read_process_output_call at /home/ben/install/emacs/emacs/src/process.c:6071 internal_condition_case_1 at /home/ben/install/emacs/emacs/src/eval.c:1500 read_and_dispose_of_process_output at /home/ben/install/emacs/emacs/src/process.c:6300 (inlined by) read_process_output at /home/ben/install/emacs/emacs/src/process.c:6204 wait_reading_process_output at /home/ben/install/emacs/emacs/src/process.c:5889 kbd_buffer_get_event at /home/ben/install/emacs/emacs/src/keyboard.c:4012 read_event_from_main_queue at /home/ben/install/emacs/emacs/src/keyboard.c:2280 (inlined by) read_decoded_event_from_main_queue at /home/ben/install/emacs/emacs/src/keyboard.c:2343 (inlined by) read_char at /home/ben/install/emacs/emacs/src/keyboard.c:2973 read_key_sequence at /home/ben/install/emacs/emacs/src/keyboard.c:10087 (discriminator 3) command_loop_1 at /home/ben/install/emacs/emacs/src/keyboard.c:1384 internal_condition_case at /home/ben/install/emacs/emacs/src/eval.c:1476 Maybe something related to font rendering? Please let me know what I cando to help track this issue down further. I had hoped using lucid would help, but the issue is the same as when building emacs with gtk. Thanks,Ben from report-emacs-bug: In GNU Emacs 29.1.50 (build 2, x86_64-pc-linux-gnu, X toolkit, cairo version 1.16.0, Xaw scroll bars) of 2023-09-22 built on g1devvap01 Repository revision: c966e7ec381fa32ad09dab4329d5ad27d87b5b98 Repository branch: emacs-29 Windowing system distributor 'Moba/X', version 11.0.11603000 System Description: Ubuntu 22.04.3 LTS Configured using: 'configure --with-native-compilation=aot --with-tree-sitter --with-x-toolkit=lucid --with-json --without-xaw3d --with-sound=no --enable-link-time-optimization' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM XINPUT2 XPM LUCID ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Org Minor modes in effect: evil-traces-mode: t projectile-mode: t +emacs-lisp-non-package-mode: t flyspell-lazy-mode: t flyspell-mode: t evil-org-mode: t org-auto-tangle-mode: t +word-wrap-mode: t org-indent-mode: t solaire-global-mode: t yas-global-mode: t yas-minor-mode: t doom-modeline-mode: t which-key-mode: t savehist-mode: t better-jumper-mode: t better-jumper-local-mode: t company-box-mode: t global-company-mode: t company-mode: t vertico-mode: t all-the-icons-completion-mode: t marginalia-mode: t evil-goggles-mode: t evil-escape-mode: t evil-snipe-override-mode: t evil-snipe-mode: t evil-snipe-override-local-mode: t evil-snipe-local-mode: t recentf-mode: t save-place-mode: t global-so-long-mode: t global-git-commit-mode: t shell-dirtrack-mode: t server-mode: t gcmh-mode: t global-hl-line-mode: t hl-line-mode: t winner-mode: t smartparens-global-mode: t smartparens-mode: t global-undo-tree-mode: t undo-tree-mode: t flycheck-popup-tip-mode: t global-flycheck-mode: t flycheck-mode: t ws-butler-global-mode: t ws-butler-mode: t editorconfig-mode: t org-roam-db-autosync-mode: t whitespace-mode: t global-evil-surround-mode: t evil-surround-mode: t eros-mode: t vi-tilde-fringe-mode: t display-line-numbers-mode: t persistent-scratch-autosave-mode: t evil-mode: t evil-local-mode: t windmove-mode: t +popup-mode: t override-global-mode: t general-override-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t window-divider-mode: t size-indication-mode: t column-number-mode: t line-number-mode: t visual-line-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /home/ben/.emacs.d/.local/straight/build-29.1.50/emacsql-sqlite/emacsql-sqlite hides /home/ben/.emacs.d/.local/straight/build-29.1.50/emacsql/emacsql-sqlite /home/ben/.emacs.d/.local/straight/build-29.1.50/jsonrpc/jsonrpc hides /usr/local/share/emacs/29.1.50/lisp/jsonrpc /home/ben/.emacs.d/.local/straight/build-29.1.50/external-completion/external-completion hides /usr/local/share/emacs/29.1.50/lisp/external-completion /home/ben/.emacs.d/.local/straight/build-29.1.50/transient/transient hides /usr/local/share/emacs/29.1.50/lisp/transient /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package-delight hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package-delight /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package-diminish hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package-diminish /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package-lint hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package-lint /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package-ensure hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package-ensure /home/ben/.emacs.d/.local/straight/build-29.1.50/bind-key/bind-key hides /usr/local/share/emacs/29.1.50/lisp/use-package/bind-key /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package-core hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package-core /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package-jump hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package-jump /home/ben/.emacs.d/.local/straight/build-29.1.50/use-package/use-package-bind-key hides /usr/local/share/emacs/29.1.50/lisp/use-package/use-package-bind-key /home/ben/.emacs.d/.local/straight/build-29.1.50/xref/xref hides /usr/local/share/emacs/29.1.50/lisp/progmodes/xref /home/ben/.emacs.d/.local/straight/build-29.1.50/eglot/eglot hides /usr/local/share/emacs/29.1.50/lisp/progmodes/eglot /home/ben/.emacs.d/.local/straight/build-29.1.50/project/project hides /usr/local/share/emacs/29.1.50/lisp/progmodes/project /home/ben/.emacs.d/.local/straight/build-29.1.50/flymake/flymake hides /usr/local/share/emacs/29.1.50/lisp/progmodes/flymake /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-calc hides /usr/local/share/emacs/29.1.50/lisp/org/ob-calc /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-maxima hides /usr/local/share/emacs/29.1.50/lisp/org/ob-maxima /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-mhe hides /usr/local/share/emacs/29.1.50/lisp/org/ol-mhe /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-goto hides /usr/local/share/emacs/29.1.50/lisp/org/org-goto /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-koma-letter hides /usr/local/share/emacs/29.1.50/lisp/org/ox-koma-letter /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-core hides /usr/local/share/emacs/29.1.50/lisp/org/ob-core /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-R hides /usr/local/share/emacs/29.1.50/lisp/org/ob-R /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-awk hides /usr/local/share/emacs/29.1.50/lisp/org/ob-awk /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-archive hides /usr/local/share/emacs/29.1.50/lisp/org/org-archive /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-mobile hides /usr/local/share/emacs/29.1.50/lisp/org/org-mobile /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-ruby hides /usr/local/share/emacs/29.1.50/lisp/org/ob-ruby /home/ben/.emacs.d/.local/straight/build-29.1.50/org/oc-bibtex hides /usr/local/share/emacs/29.1.50/lisp/org/oc-bibtex /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-emacs-lisp hides /usr/local/share/emacs/29.1.50/lisp/org/ob-emacs-lisp /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-lilypond hides /usr/local/share/emacs/29.1.50/lisp/org/ob-lilypond /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-js hides /usr/local/share/emacs/29.1.50/lisp/org/ob-js /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-agenda hides /usr/local/share/emacs/29.1.50/lisp/org/org-agenda /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-clock hides /usr/local/share/emacs/29.1.50/lisp/org/org-clock /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-attach-git hides /usr/local/share/emacs/29.1.50/lisp/org/org-attach-git /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-icalendar hides /usr/local/share/emacs/29.1.50/lisp/org/ox-icalendar /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-clojure hides /usr/local/share/emacs/29.1.50/lisp/org/ob-clojure /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-org hides /usr/local/share/emacs/29.1.50/lisp/org/ob-org /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-texinfo hides /usr/local/share/emacs/29.1.50/lisp/org/ox-texinfo /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-macro hides /usr/local/share/emacs/29.1.50/lisp/org/org-macro /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-colview hides /usr/local/share/emacs/29.1.50/lisp/org/org-colview /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-ditaa hides /usr/local/share/emacs/29.1.50/lisp/org/ob-ditaa /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-lua hides /usr/local/share/emacs/29.1.50/lisp/org/ob-lua /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-octave hides /usr/local/share/emacs/29.1.50/lisp/org/ob-octave /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-eshell hides /usr/local/share/emacs/29.1.50/lisp/org/ol-eshell /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-footnote hides /usr/local/share/emacs/29.1.50/lisp/org/org-footnote /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-keys hides /usr/local/share/emacs/29.1.50/lisp/org/org-keys /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-md hides /usr/local/share/emacs/29.1.50/lisp/org/ox-md /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-groovy hides /usr/local/share/emacs/29.1.50/lisp/org/ob-groovy /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-table hides /usr/local/share/emacs/29.1.50/lisp/org/ob-table /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-pcomplete hides /usr/local/share/emacs/29.1.50/lisp/org/org-pcomplete /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-datetree hides /usr/local/share/emacs/29.1.50/lisp/org/org-datetree /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox hides /usr/local/share/emacs/29.1.50/lisp/org/ox /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-version hides /usr/local/share/emacs/29.1.50/lisp/org/org-version /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-html hides /usr/local/share/emacs/29.1.50/lisp/org/ox-html /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-entities hides /usr/local/share/emacs/29.1.50/lisp/org/org-entities /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-loaddefs hides /usr/local/share/emacs/29.1.50/lisp/org/org-loaddefs /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-ctags hides /usr/local/share/emacs/29.1.50/lisp/org/org-ctags /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-fold hides /usr/local/share/emacs/29.1.50/lisp/org/org-fold /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-macs hides /usr/local/share/emacs/29.1.50/lisp/org/org-macs /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-duration hides /usr/local/share/emacs/29.1.50/lisp/org/org-duration /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-ref hides /usr/local/share/emacs/29.1.50/lisp/org/ob-ref /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-lisp hides /usr/local/share/emacs/29.1.50/lisp/org/ob-lisp /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-screen hides /usr/local/share/emacs/29.1.50/lisp/org/ob-screen /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-habit hides /usr/local/share/emacs/29.1.50/lisp/org/org-habit /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-doi hides /usr/local/share/emacs/29.1.50/lisp/org/ol-doi /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-num hides /usr/local/share/emacs/29.1.50/lisp/org/org-num /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-cycle hides /usr/local/share/emacs/29.1.50/lisp/org/org-cycle /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-refile hides /usr/local/share/emacs/29.1.50/lisp/org/org-refile /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-publish hides /usr/local/share/emacs/29.1.50/lisp/org/ox-publish /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-inlinetask hides /usr/local/share/emacs/29.1.50/lisp/org/org-inlinetask /home/ben/.emacs.d/.local/straight/build-29.1.50/org/oc-csl hides /usr/local/share/emacs/29.1.50/lisp/org/oc-csl /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-ocaml hides /usr/local/share/emacs/29.1.50/lisp/org/ob-ocaml /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-attach hides /usr/local/share/emacs/29.1.50/lisp/org/org-attach /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob hides /usr/local/share/emacs/29.1.50/lisp/org/ob /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-java hides /usr/local/share/emacs/29.1.50/lisp/org/ob-java /home/ben/.emacs.d/.local/straight/build-29.1.50/org/oc hides /usr/local/share/emacs/29.1.50/lisp/org/oc /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-lob hides /usr/local/share/emacs/29.1.50/lisp/org/ob-lob /home/ben/.emacs.d/.local/straight/build-29.1.50/org/oc-biblatex hides /usr/local/share/emacs/29.1.50/lisp/org/oc-biblatex /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-eshell hides /usr/local/share/emacs/29.1.50/lisp/org/ob-eshell /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-persist hides /usr/local/share/emacs/29.1.50/lisp/org/org-persist /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org hides /usr/local/share/emacs/29.1.50/lisp/org/org /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-tangle hides /usr/local/share/emacs/29.1.50/lisp/org/ob-tangle /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-latex hides /usr/local/share/emacs/29.1.50/lisp/org/ob-latex /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-beamer hides /usr/local/share/emacs/29.1.50/lisp/org/ox-beamer /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-sql hides /usr/local/share/emacs/29.1.50/lisp/org/ob-sql /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-capture hides /usr/local/share/emacs/29.1.50/lisp/org/org-capture /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-python hides /usr/local/share/emacs/29.1.50/lisp/org/ob-python /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-list hides /usr/local/share/emacs/29.1.50/lisp/org/org-list /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-sqlite hides /usr/local/share/emacs/29.1.50/lisp/org/ob-sqlite /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-id hides /usr/local/share/emacs/29.1.50/lisp/org/org-id /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-timer hides /usr/local/share/emacs/29.1.50/lisp/org/org-timer /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-scheme hides /usr/local/share/emacs/29.1.50/lisp/org/ob-scheme /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-plot hides /usr/local/share/emacs/29.1.50/lisp/org/org-plot /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-man hides /usr/local/share/emacs/29.1.50/lisp/org/ox-man /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-eval hides /usr/local/share/emacs/29.1.50/lisp/org/ob-eval /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-feed hides /usr/local/share/emacs/29.1.50/lisp/org/org-feed /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-processing hides /usr/local/share/emacs/29.1.50/lisp/org/ob-processing /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-odt hides /usr/local/share/emacs/29.1.50/lisp/org/ox-odt /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-org hides /usr/local/share/emacs/29.1.50/lisp/org/ox-org /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-latex hides /usr/local/share/emacs/29.1.50/lisp/org/ox-latex /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-crypt hides /usr/local/share/emacs/29.1.50/lisp/org/org-crypt /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-dot hides /usr/local/share/emacs/29.1.50/lisp/org/ob-dot /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-faces hides /usr/local/share/emacs/29.1.50/lisp/org/org-faces /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-gnuplot hides /usr/local/share/emacs/29.1.50/lisp/org/ob-gnuplot /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-haskell hides /usr/local/share/emacs/29.1.50/lisp/org/ob-haskell /home/ben/.emacs.d/.local/straight/build-29.1.50/org/oc-natbib hides /usr/local/share/emacs/29.1.50/lisp/org/oc-natbib /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-css hides /usr/local/share/emacs/29.1.50/lisp/org/ob-css /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-sed hides /usr/local/share/emacs/29.1.50/lisp/org/ob-sed /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-julia hides /usr/local/share/emacs/29.1.50/lisp/org/ob-julia /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-shell hides /usr/local/share/emacs/29.1.50/lisp/org/ob-shell /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-matlab hides /usr/local/share/emacs/29.1.50/lisp/org/ob-matlab /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-forth hides /usr/local/share/emacs/29.1.50/lisp/org/ob-forth /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-compat hides /usr/local/share/emacs/29.1.50/lisp/org/org-compat /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ox-ascii hides /usr/local/share/emacs/29.1.50/lisp/org/ox-ascii /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-bbdb hides /usr/local/share/emacs/29.1.50/lisp/org/ol-bbdb /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-table hides /usr/local/share/emacs/29.1.50/lisp/org/org-table /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-fortran hides /usr/local/share/emacs/29.1.50/lisp/org/ob-fortran /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-sass hides /usr/local/share/emacs/29.1.50/lisp/org/ob-sass /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-man hides /usr/local/share/emacs/29.1.50/lisp/org/ol-man /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-exp hides /usr/local/share/emacs/29.1.50/lisp/org/ob-exp /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-rmail hides /usr/local/share/emacs/29.1.50/lisp/org/ol-rmail /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-makefile hides /usr/local/share/emacs/29.1.50/lisp/org/ob-makefile /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-w3m hides /usr/local/share/emacs/29.1.50/lisp/org/ol-w3m /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-irc hides /usr/local/share/emacs/29.1.50/lisp/org/ol-irc /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-indent hides /usr/local/share/emacs/29.1.50/lisp/org/org-indent /home/ben/.emacs.d/.local/straight/build-29.1.50/org/oc-basic hides /usr/local/share/emacs/29.1.50/lisp/org/oc-basic /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-protocol hides /usr/local/share/emacs/29.1.50/lisp/org/org-protocol /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-docview hides /usr/local/share/emacs/29.1.50/lisp/org/ol-docview /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-lint hides /usr/local/share/emacs/29.1.50/lisp/org/org-lint /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-bibtex hides /usr/local/share/emacs/29.1.50/lisp/org/ol-bibtex /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-comint hides /usr/local/share/emacs/29.1.50/lisp/org/ob-comint /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-tempo hides /usr/local/share/emacs/29.1.50/lisp/org/org-tempo /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-element hides /usr/local/share/emacs/29.1.50/lisp/org/org-element /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-gnus hides /usr/local/share/emacs/29.1.50/lisp/org/ol-gnus /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-mouse hides /usr/local/share/emacs/29.1.50/lisp/org/org-mouse /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-fold-core hides /usr/local/share/emacs/29.1.50/lisp/org/org-fold-core /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-C hides /usr/local/share/emacs/29.1.50/lisp/org/ob-C /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-info hides /usr/local/share/emacs/29.1.50/lisp/org/ol-info /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol-eww hides /usr/local/share/emacs/29.1.50/lisp/org/ol-eww /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ol hides /usr/local/share/emacs/29.1.50/lisp/org/ol /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-plantuml hides /usr/local/share/emacs/29.1.50/lisp/org/ob-plantuml /home/ben/.emacs.d/.local/straight/build-29.1.50/org/org-src hides /usr/local/share/emacs/29.1.50/lisp/org/org-src /home/ben/.emacs.d/.local/straight/build-29.1.50/org/ob-perl hides /usr/local/share/emacs/29.1.50/lisp/org/ob-perl /home/ben/.emacs.d/.local/straight/build-29.1.50/eldoc/eldoc hides /usr/local/share/emacs/29.1.50/lisp/emacs-lisp/eldoc Features: (shadow sort mail-extr emacsbug adaptive-wrap ob-shell rainbow-delimiters company-shell evil-collection-sh-script sh-script smie npm-mode json-mode json-snatcher smartparens-javascript js-mode-expansions js c-ts-common treesit smartparens-c cc-mode-expansions cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs consult-flycheck evil-collection-consult consult ucs-normalize evil-collection-evil-mc evil-mc evil-mc-command-execute evil-mc-command-record evil-mc-cursor-make evil-mc-region evil-mc-cursor-state evil-mc-undo evil-mc-vars evil-mc-known-commands evil-mc-common company-ispell company-yasnippet company-dabbrev evil-traces evil-ex image-file image-converter copilot copilot-balancer jsonrpc projectile project ibuf-ext evil-collection-ibuffer ibuffer ibuffer-loaddefs executable magit-bookmark evil-collection-bookmark bookmark delsel tabify hide-mode-line timezone orgit org-roam-dailies git-gutter-fringe fringe-helper git-gutter evil-collection-vc-git vc-git vc-dispatcher jka-compr disp-table org-eldoc org-crypt flyspell-lazy flyspell ispell toc-org evil-org org-auto-tangle org-indent vertico-directory cursor-sensor vertico-repeat mule-util oc-basic org-tempo tempo org-habit ol-bibtex bibtex auto-minor-mode doom-themes-ext-treemacs doom-themes-ext-org solaire-mode face-remap modus-operandi-theme modus-themes evil-collection-magit-todos magit-todos pcre2el rxt re-builder async evil-collection-grep grep evil-collection-compile compile magit-autoloads evil-collection-magit 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 which-func magit-diff smerge-mode evil-collection-diff-mode diff-mode magit-core magit-autorevert autorevert filenotify magit-margin magit-transient magit-process magit-mode doom-snippets doom-snippets-lib evil-collection-elisp-mode yasnippet elisp-mode doom-modeline doom-modeline-segments doom-modeline-env doom-modeline-core shrink-path f f-shortdoc s evil-collection-which-key which-key savehist better-jumper company-box company-box-doc frame-local company-box-icons company-capf company evil-collection-vertico vertico orderless all-the-icons-completion all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons marginalia evil-goggles pulse color evil-easymotion evil-escape evil-snipe recentf tree-widget saveplace evil-collection-so-long so-long git-commit magit-git magit-base crm with-editor shell transient server evil-collection-log-edit log-edit pcvs-util add-log gcmh hl-line winner smartparens-config smartparens-text smartparens undo-tree diff queue flycheck-popup-tip evil-collection-popup popup flycheck-cask flycheck-package package-lint evil-collection-imenu imenu evil-collection-finder finder finder-inf lisp-mnt evil-collection-package-menu doom-packages package url-handlers evil-collection-flycheck flycheck ws-butler editorconfig editorconfig-core editorconfig-core-handle editorconfig-fnmatch anki-editor ox-dnd ox-pandoc ht ox-org ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-ascii ox-md ox-html table ox-publish ox vigenere request org-contacts org-agenda gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo parse-time iso8601 gnus-spec gnus-int gnus-range message sendmail mailcap yank-media puny rfc822 mml mml-sec evil-collection-epa epa epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win evil-collection-gnus gnus nnheader mail-utils range mm-util mail-prsvr gnus-util text-property-search the-org-mode-expansions evil-collection-org evil-collection-org-roam org-roam-migrate org-roam-log org-roam-mode org-roam-capture org-roam-id org-roam-node org-roam-db emacsql-sqlite-builtin sqlite org-roam-utils org-roam-compat org-roam org-capture org-attach emacsql-sqlite emacsql-sqlite-common emacsql emacsql-compiler evil-collection-magit-section magit-section dash smartparens-org org-yt org-element org-persist xdg org-id org-refile org ob ob-tangle ob-ref ob-lob ob-table org-macro org-src ob-comint org-pcomplete pcomplete evil-collection-comint comint ansi-osc ansi-color org-list org-footnote org-faces org-entities time-date noutline outline ob-emacs-lisp org-table org-keys org-loaddefs find-func evil-collection-calendar cal-menu calendar cal-loaddefs avl-tree generator ol oc ob-exp whitespace git-link url-util url-parse auth-source eieio eieio-core password-cache json map url-vars evil-collection-dired dired dired-loaddefs evil-embrace evil-surround embrace expand-region text-mode-expansions er-basic-expansions expand-region-core expand-region-custom eros vi-tilde-fringe highlight-numbers parent-mode display-line-numbers hl-todo compat dtrt-indent evil-collection-custom cus-edit cus-load wid-edit evil-collection annalist persistent-scratch let-alist ob-core org-cycle org-fold org-fold-core org-compat ob-eval org-version org-macs format-spec derived evil evil-integration evil-maps evil-commands reveal evil-jumps evil-command-window evil-search evil-types evil-macros evil-repeat evil-states evil-core byte-opt advice evil-common windmove calc calc-loaddefs calc-macs thingatpt rect evil-digraphs evil-vars ring edmacro kmacro use-package-bind-key bind-key comp comp-cstr warnings icons doom-editor doom-projects doom-ui easy-mmode doom-keybinds pp cl-extra help-mode use-package-core bytecomp byte-compile general rx doom-start doom-modules cl-seq doom doom-lib cl-macs cl-loaddefs cl-lib pcase gv jansson dynamic-modules subr-x rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd 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 nadvice seq simple cl-generic indonesian philippine 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 abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo x-toolkit xinput2 x multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 1367135 93856) (symbols 48 84475 1) (strings 32 305623 26480) (string-bytes 1 12390027) (vectors 16 181428) (vector-slots 8 3776904 120599) (floats 8 2065 803) (intervals 56 3989 1021) (buffers 984 31))
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 12:23:02 GMT) Full text and rfc822 format available.Message #8 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Benjamin Schwehn <bschwehn <at> gmail.com>, Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 22 Sep 2023 15:22:15 +0300
> From: Benjamin Schwehn <bschwehn <at> gmail.com> > Date: Fri, 22 Sep 2023 12:22:08 +0200 > > Hi, > I have emacs daemon reproducibly crashing in this scenario: > > - emacs running as daemon via systemd user service > - running "emacsclient -nc" via ssh -X session > - stop X server on client machine or cut network connection between > client and server > - run emacsclient -nc again > > Result: > emacs window opens for about a second, then the daemon crashes. The > daemon then automatically restarts via the systemd service and once it > is up again, emacsclient works fine again. Does this happen with any emacsclient command in this situation? What if you don't use -c, for example, or use -t instead? From this backtrace: > deliver_thread_signal.constprop.0 at > /home/ben/install/emacs/emacs/src/sysdep.c:1765 > ?? ??:0 > make_lisp_ptr at /home/ben/install/emacs/emacs/src/lisp.h:1364 > (inlined by) realize_default_face at > /home/ben/install/emacs/emacs/src/xfaces.c:5802 > (inlined by) realize_basic_faces at > /home/ben/install/emacs/emacs/src/xfaces.c:5736 The segfault seems to be caused by the frame's output_data.x being NULL or invalid. Po Lu, is this caused by stopping the server or cutting the network connection between client and server? If so, is there any remedy? Perhaps the server should exit gracefully in this case? Btw, I don't quite understand this part: > recompute_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:682 > (inlined by) recompute_basic_faces at > /home/ben/install/emacs/emacs/src/xfaces.c:677 > (inlined by) free_realized_fontsets at > /home/ben/install/emacs/emacs/src/fontset.c:1345 > Fset_fontset_font at /home/ben/install/emacs/emacs/src/fontset.c:1696 Why do we need to call set-fontset-font here? What kind of emacsclient command line causes this?
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 13:14:01 GMT) Full text and rfc822 format available.Message #11 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 66151 <at> debbugs.gnu.org, Benjamin Schwehn <bschwehn <at> gmail.com> Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 22 Sep 2023 21:12:49 +0800
Eli Zaretskii <eliz <at> gnu.org> writes: >> deliver_thread_signal.constprop.0 at >> /home/ben/install/emacs/emacs/src/sysdep.c:1765 >> ?? ??:0 >> make_lisp_ptr at /home/ben/install/emacs/emacs/src/lisp.h:1364 >> (inlined by) realize_default_face at >> /home/ben/install/emacs/emacs/src/xfaces.c:5802 >> (inlined by) realize_basic_faces at >> /home/ben/install/emacs/emacs/src/xfaces.c:5736 > > The segfault seems to be caused by the frame's output_data.x being > NULL or invalid. Po Lu, is this caused by stopping the server or > cutting the network connection between client and server? If so, is > there any remedy? The cause is the network connection being cut. If a display disconnect transpires while Emacs is operating on live frames connected to that display, Emacs will crash, as the Xlib error handler deletes such frames promptly. There are no simple solutions or means of circumventing this problem. > Btw, I don't quite understand this part: > >> recompute_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:682 >> (inlined by) recompute_basic_faces at >> /home/ben/install/emacs/emacs/src/xfaces.c:677 >> (inlined by) free_realized_fontsets at >> /home/ben/install/emacs/emacs/src/fontset.c:1345 >> Fset_fontset_font at /home/ben/install/emacs/emacs/src/fontset.c:1696 > > Why do we need to call set-fontset-font here? What kind of > emacsclient command line causes this? I don't know, but the answer to that question might yield some information that could concievably be used to avoid the set of circumstances which precipitated this particular crash.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 13:17:02 GMT) Full text and rfc822 format available.Message #14 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org, bschwehn <at> gmail.com Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 22 Sep 2023 16:16:48 +0300
> From: Po Lu <luangruo <at> yahoo.com> > Cc: Benjamin Schwehn <bschwehn <at> gmail.com>, 66151 <at> debbugs.gnu.org > Date: Fri, 22 Sep 2023 21:12:49 +0800 > > Eli Zaretskii <eliz <at> gnu.org> writes: > > >> deliver_thread_signal.constprop.0 at > >> /home/ben/install/emacs/emacs/src/sysdep.c:1765 > >> ?? ??:0 > >> make_lisp_ptr at /home/ben/install/emacs/emacs/src/lisp.h:1364 > >> (inlined by) realize_default_face at > >> /home/ben/install/emacs/emacs/src/xfaces.c:5802 > >> (inlined by) realize_basic_faces at > >> /home/ben/install/emacs/emacs/src/xfaces.c:5736 > > > > The segfault seems to be caused by the frame's output_data.x being > > NULL or invalid. Po Lu, is this caused by stopping the server or > > cutting the network connection between client and server? If so, is > > there any remedy? > > The cause is the network connection being cut. If a display disconnect > transpires while Emacs is operating on live frames connected to that > display, Emacs will crash, as the Xlib error handler deletes such frames > promptly. There are no simple solutions or means of circumventing this > problem. I think in this case there were no live frames connected to the display, only the initial (non-GUI) daemon frame. Benjamin, is that true? > > Btw, I don't quite understand this part: > > > >> recompute_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:682 > >> (inlined by) recompute_basic_faces at > >> /home/ben/install/emacs/emacs/src/xfaces.c:677 > >> (inlined by) free_realized_fontsets at > >> /home/ben/install/emacs/emacs/src/fontset.c:1345 > >> Fset_fontset_font at /home/ben/install/emacs/emacs/src/fontset.c:1696 > > > > Why do we need to call set-fontset-font here? What kind of > > emacsclient command line causes this? > > I don't know, but the answer to that question might yield some > information that could concievably be used to avoid the set of > circumstances which precipitated this particular crash. Yes, which is why I asked Benjamin to try to provide that information ;-)
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 14:30:03 GMT) Full text and rfc822 format available.Message #17 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Benjamin Schwehn <bschwehn <at> gmail.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: Po Lu <luangruo <at> yahoo.com>, 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 22 Sep 2023 16:28:40 +0200
Thanks a lot for helping me with this! > > - emacs running as daemon via systemd user service > > - running "emacsclient -nc" via ssh -X session > > - stop X server on client machine or cut network connection between > > client and server > > - run emacsclient -nc again > > > > Result: > > emacs window opens for about a second, then the daemon crashes. > > Does this happen with any emacsclient command in this situation? What > if you don't use -c, for example, or use -t instead? emacsclient -t also causes the crash, with this backtrace (looks the same to me) emacs_backtrace at /home/ben/install/emacs/emacs/src/sysdep.c:2304 terminate_due_to_signal at /home/ben/install/emacs/emacs/src/emacs.c:458 deliver_process_signal at /home/ben/install/emacs/emacs/src/sysdep.c:1741 (inlined by) deliver_fatal_signal at /home/ben/install/emacs/emacs/src/sysdep.c:1789 deliver_thread_signal.constprop.0 at /home/ben/install/emacs/emacs/src/sysdep.c:1765 ?? ??:0 make_lisp_ptr at /home/ben/install/emacs/emacs/src/lisp.h:1364 (inlined by) realize_default_face at /home/ben/install/emacs/emacs/src/xfaces.c:5802 (inlined by) realize_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:5736 recompute_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:682 (inlined by) recompute_basic_faces at /home/ben/install/emacs/emacs/src/xfaces.c:677 (inlined by) free_realized_fontsets at /home/ben/install/emacs/emacs/src/fontset.c:1345 Fset_fontset_font at /home/ben/install/emacs/emacs/src/fontset.c:1696 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2515 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) Flet at /home/ben/install/emacs/emacs/src/eval.c:1026 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) prog_ignore at /home/ben/install/emacs/emacs/src/eval.c:447 (inlined by) Fwhile at /home/ben/install/emacs/emacs/src/eval.c:1047 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) Flet at /home/ben/install/emacs/emacs/src/eval.c:1026 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2593 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2449 eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2593 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) funcall_lambda at /home/ben/install/emacs/emacs/src/eval.c:3233 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 funcall_nil at /home/ben/install/emacs/emacs/src/eval.c:2679 run_hook_with_args at /home/ben/install/emacs/emacs/src/eval.c:2822 Frun_hooks at /home/ben/install/emacs/emacs/src/eval.c:2700 (discriminator 3) eval_sub at /home/ben/install/emacs/emacs/src/eval.c:2472 Fprogn at /home/ben/install/emacs/emacs/src/eval.c:436 (inlined by) funcall_lambda at /home/ben/install/emacs/emacs/src/eval.c:3233 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 funcall_nil at /home/ben/install/emacs/emacs/src/eval.c:2679 run_hook_with_args at /home/ben/install/emacs/emacs/src/eval.c:2822 Frun_hooks at /home/ben/install/emacs/emacs/src/eval.c:2700 (discriminator 3) Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 ?? ??:0 funcall_subr at /home/ben/install/emacs/emacs/src/eval.c:3046 exec_byte_code at /home/ben/install/emacs/emacs/src/bytecode.c:809 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 ?? ??:0 Ffuncall at /home/ben/install/emacs/emacs/src/eval.c:2997 safe_free at /home/ben/install/emacs/emacs/src/lisp.h:5373 (inlined by) Fapply at /home/ben/install/emacs/emacs/src/eval.c:2668 > > >> deliver_thread_signal.constprop.0 at > > >> /home/ben/install/emacs/emacs/src/sysdep.c:1765 > > >> ?? ??:0 > > >> make_lisp_ptr at /home/ben/install/emacs/emacs/src/lisp.h:1364 > > >> (inlined by) realize_default_face at > > >> /home/ben/install/emacs/emacs/src/xfaces.c:5802 > > >> (inlined by) realize_basic_faces at > > >> /home/ben/install/emacs/emacs/src/xfaces.c:5736 > > > > > > The segfault seems to be caused by the frame's output_data.x being > > > NULL or invalid. Po Lu, is this caused by stopping the server or > > > cutting the network connection between client and server? If so, is > > > there any remedy? > > > > The cause is the network connection being cut. If a display disconnect > > transpires while Emacs is operating on live frames connected to that > > display, Emacs will crash, as the Xlib error handler deletes such frames > > promptly. There are no simple solutions or means of circumventing this > > problem. > > I think in this case there were no live frames connected to the > display, only the initial (non-GUI) daemon frame. Benjamin, is that > true? The crash is triggered when a live frame was connected when the network connection was cut, but the crash happens only later, the next time I open a frame. But I am not fully sure I correctly understand the question. Let me try to explain better the circumstances: I have emacs running in server mode on a VM. I have a windows machine running an X server. Both machines are connected via a VPN which somtimes loses connection. The issues comes after this connection loss. To reproduce I do this: 1. ssh -X into the machine and run emacsclient -nc. Emacs frame opens on the client (windows) machine. 2. While the frame is open, I disconnect (C-d, C-c in the terminal that has the ssh -X connection). 3. I reconnect to the server via ssh. At this point, the emacs server process has not yet crashed. 4. I run emacsclient -nc 5. On the client machine, an emacs frame opens and does some initial draw, then the server process crashes If in step 4, I run emacclient -t instead, the server process also crashes. I can't see an initial draw happening in this case. If in step 2, I first close the frame, then disconnect, the crash in step 5 does not happen (neither for -nc nor -t) and opening a frame works fine. It's not a terrible issue for me, but annoyingly happens every time the VPN connection is lost (~twice a day) and I have emacs open (~all the time :)). Thanks, Ben
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 15:08:01 GMT) Full text and rfc822 format available.Message #20 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Benjamin Schwehn <bschwehn <at> gmail.com> Cc: luangruo <at> yahoo.com, 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 22 Sep 2023 18:07:49 +0300
> From: Benjamin Schwehn <bschwehn <at> gmail.com> > Date: Fri, 22 Sep 2023 16:28:40 +0200 > Cc: Po Lu <luangruo <at> yahoo.com>, 66151 <at> debbugs.gnu.org > > > Does this happen with any emacsclient command in this situation? What > > if you don't use -c, for example, or use -t instead? > > emacsclient -t also causes the crash, with this backtrace (looks the same to me) > > emacs_backtrace at /home/ben/install/emacs/emacs/src/sysdep.c:2304 > terminate_due_to_signal at /home/ben/install/emacs/emacs/src/emacs.c:458 > deliver_process_signal at /home/ben/install/emacs/emacs/src/sysdep.c:1741 > (inlined by) deliver_fatal_signal at > /home/ben/install/emacs/emacs/src/sysdep.c:1789 > deliver_thread_signal.constprop.0 at > /home/ben/install/emacs/emacs/src/sysdep.c:1765 > ?? ??:0 > make_lisp_ptr at /home/ben/install/emacs/emacs/src/lisp.h:1364 > (inlined by) realize_default_face at > /home/ben/install/emacs/emacs/src/xfaces.c:5802 So this means we are somehow handling the original GUI frame. > The crash is triggered when a live frame was connected when the network > connection was cut, but the crash happens only later, the next time I open a > frame. But I am not fully sure I correctly understand the question. Let me try > to explain better the circumstances: > > I have emacs running in server mode on a VM. I have a windows machine running an > X server. Both machines are connected via a VPN which somtimes loses connection. > The issues comes after this connection loss. To reproduce I do this: > > 1. ssh -X into the machine and run emacsclient -nc. Emacs frame opens on the > client (windows) machine. > 2. While the frame is open, I disconnect (C-d, C-c in the terminal that has the > ssh -X connection). > 3. I reconnect to the server via ssh. At this point, the emacs server process > has not yet crashed. > 4. I run emacsclient -nc > 5. On the client machine, an emacs frame opens and does some initial draw, then > the server process crashes > > If in step 4, I run emacclient -t instead, the server process also crashes. I > can't see an initial draw happening in this case. > > If in step 2, I first close the frame, then disconnect, the crash in step 5 does > not happen (neither for -nc nor -t) and opening a frame works fine. I think this confirms what Po Lu was saying: Emacs cannot recover when you close the connection while some frame using that connection is still on display. You should close all such frames before disconnecting. > It's not a terrible issue for me, but annoyingly happens every time the VPN > connection is lost (~twice a day) and I have emacs open (~all the time :)). Why is the VPN connection lost so frequently?
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 16:52:02 GMT) Full text and rfc822 format available.Message #23 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Benjamin Schwehn <bschwehn <at> gmail.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: luangruo <at> yahoo.com, 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 22 Sep 2023 18:51:09 +0200
On Fri, 22 Sept 2023 at 17:07, Eli Zaretskii <eliz <at> gnu.org> wrote: > I think this confirms what Po Lu was saying: Emacs cannot recover when > you close the connection while some frame using that connection is > still on display. You should close all such frames before > disconnecting. Ok, sounds like there is no easy fix, thanks for the explanation! I am curious though, before switching to lucid, emacs logged this during startup as systemd service: Warning: due to a long standing Gtk+ bug https://gitlab.gnome.org/GNOME/gtk/issues/221 Emacs might crash when run in daemon mode and the X11 connection is unexpectedly lost. Using an Emacs configured with --with-x-toolkit=lucid does not have this problem. Do you happen to know what (if any) difference using lucid or gtk does in this use case? > > It's not a terrible issue for me, but annoyingly happens every time the VPN > > connection is lost (~twice a day) and I have emacs open (~all the time :)). > > Why is the VPN connection lost so frequently? Well, it is a work provided setup I have no control over. Half the disconnects are due to me missing the mandatory re-authentication every x hours, the other half I don't know. I had quickly experimented with xpra (https://github.com/Xpra-org/xpra), which should keep a persistent X11 connection. But it increased latency too much for my liking. Ben
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 22 Sep 2023 23:44:02 GMT) Full text and rfc822 format available.Message #26 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Benjamin Schwehn <bschwehn <at> gmail.com> Cc: 66151 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org> Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Sat, 23 Sep 2023 07:42:51 +0800
Benjamin Schwehn <bschwehn <at> gmail.com> writes: > difference using lucid or gtk does in this use case? There is a good chance of recovery if a display connection is cut within a non-GTK build, so long as the disconnect transpires while Emacs is reading input, rather than operating on a frame connected to that display.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Tue, 09 Apr 2024 22:54:01 GMT) Full text and rfc822 format available.Message #29 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: 66151 <at> debbugs.gnu.org Date: Tue, 9 Apr 2024 10:02:45 -0500
[Message part 1 (text/plain, inline)]
Hi, I am able to reproduce this bug without launching a new emacsclient. Steps to reproduce: - Start emacs daemon. - Connect using emacsclient -c. - Connect remotely to the daemon and run another emacsclient -c using X forwarding. - Crash the X forwarding connection created in the previous step. - Go back to the emacsclient running locally on the daemon and run (set-fontset-font t '(#xe000 . #xf8ff) "Symbols Nerd Font Mono") The reason that Ben was seeing a crash with a new emacsclient is because he is using Doom (an Emacs framework) that attached a function to server-after-make-hook that called set-fontset-font in the above way. As Eli said, there is really no good reason to run such a hook after the first frame, and this behavior has been fixed in Doom. (To Ben: try upgrading Doom and see if it fixes your issue, if not let me know!) Surprisingly, the segfault still happens even if i explicitly call delete-frame on the dead frame before calling set-fontset-font. Also, I am unable to reproduce this bug without Doom (i.e. launching the daemon with -Q). I am confused as to why emacs doesn't automatically clean up frames that have been disconnected like this. If emacs survives a crash of the X server, it should be able to identify that the display is dead (e.g. by checking the validity of output_data.x) and remove it from the (frame-list), preventing any subsequent commands from acting on these frames. It has to do something more than what delete-frame does, as that does not fix the issue (even though it removes the frame from the (frame-list)). Note: using GTK is very different, as emacs crashes *without* having to run set-fontset-font (i.e. emacs crashes when the X forwarding connection crashes). With lucid, emacs continues to run fine with the exception of this bug for me.
[Message part 2 (text/html, inline)]
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Tue, 09 Apr 2024 22:54:02 GMT) Full text and rfc822 format available.Message #32 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Tue, 9 Apr 2024 10:16:09 -0500
Hi, I am able to reproduce this bug without launching a new emacsclient. Steps to reproduce: - Start emacs daemon. - Connect using emacsclient -c. - Connect remotely to the daemon and run another emacsclient -c using X forwarding. - Crash the X forwarding connection created in the previous step. - Go back to the emacsclient running locally on the daemon and run (set-fontset-font t '(#xe000 . #xf8ff) "Symbols Nerd Font Mono") The reason that Ben was seeing a crash with a new emacsclient is because he is using Doom (an Emacs framework) that attached a function to server-after-make-hook that called set-fontset-font in the above way. As Eli said, there is really no good reason to run such a hook after the first frame, and this behavior has been fixed in Doom. (To Ben: try upgrading Doom and see if it fixes your issue, if not let me know!) Surprisingly, the segfault still happens even if I explicitly call delete-frame on the dead frame before calling set-fontset-font. Also, I am unable to reproduce this bug without Doom (i.e. launching the daemon with -Q). I am confused as to why emacs doesn't automatically clean up frames that have been disconnected like this. If emacs survives a crash of the X server, it should be able to identify that the display is dead (e.g. by checking the validity of output_data.x) and remove it from the (frame-list), preventing any subsequent commands from acting on these frames. It has to do something more than what delete-frame does, as that does not fix the issue (even though it removes the frame from the (frame-list)). Note: using GTK is very different, as emacs crashes *without* having to run set-fontset-font (i.e. emacs crashes when the X forwarding connection crashes). With lucid, emacs continues to run fine with the exception of this bug for me.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Tue, 09 Apr 2024 22:54:02 GMT) Full text and rfc822 format available.Message #35 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Tue, 9 Apr 2024 12:28:03 -0500
Hi, I am able to reproduce this bug without launching a new emacsclient. Steps to reproduce: - Start emacs daemon. - Connect using emacsclient -c. - Connect remotely to the daemon and run another emacsclient -c using X forwarding. - Crash the X forwarding connection created in the previous step. - Go back to the emacsclient running locally on the daemon and run (set-fontset-font t '(#xe000 . #xf8ff) "Symbols Nerd Font Mono") The reason that Ben was seeing a crash with a new emacsclient is because he is using Doom (an Emacs framework) that attached a function to server-after-make-hook that called set-fontset-font in the above way. As Eli said, there is really no good reason to run such a hook after the first frame, and this behavior has been fixed in Doom. (To Ben: try upgrading Doom and see if it fixes your issue, if not let me know!) Surprisingly, the segfault still happens even if I explicitly call delete-frame on the dead frame before calling set-fontset-font. Also, I am unable to reproduce this bug without Doom (i.e. launching the daemon with -Q). I am confused as to why emacs doesn't automatically clean up frames that have been disconnected like this. If emacs survives a crash of the X server, it should be able to identify that the display is dead (e.g. by checking the validity of output_data.x) and remove it from the (frame-list), preventing any subsequent commands from acting on these frames. It has to do something more than what delete-frame does, as that does not fix the issue (even though it removes the frame from the (frame-list)). Note: using GTK is very different, as emacs crashes *without* having to run set-fontset-font (i.e. emacs crashes when the X forwarding connection crashes). With lucid, emacs continues to run fine with the exception of this bug for me.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Tue, 09 Apr 2024 22:55:02 GMT) Full text and rfc822 format available.Message #38 received at submit <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org> Cc: "luangruo <at> yahoo.com" <luangruo <at> yahoo.com>, "eliz <at> gnu.org" <eliz <at> gnu.org>, "bschwehn <at> gmail.com" <bschwehn <at> gmail.com> Subject: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Tue, 9 Apr 2024 20:36:33 +0000
Hi, I am able to reproduce this bug without launching a new emacsclient. Steps to reproduce: - Start emacs daemon. - Connect using emacsclient -c. - Connect remotely to the daemon and run another emacsclient -c using X forwarding. - Crash the X forwarding connection created in the previous step. - Go back to the emacsclient running locally on the daemon and run (set-fontset-font t '(#xe000 . #xf8ff) "Symbols Nerd Font Mono") The reason why Ben was seeing a crash with a new emacsclient is because he is using Doom (an Emacs framework) that attached a function to server-after-make-hook that called set-fontset-font in the above way. As Eli said, there is really no good reason to run such a hook after the first frame, and this behavior has been fixed in Doom. (To Ben: try upgrading Doom and see if it fixes your issue, if not let me know!) Surprisingly, the segfault still happens even if I explicitly call delete-frame on the dead frame before calling set-fontset-font. Also, I am unable to reproduce this bug without Doom (i.e. launching the daemon with -Q). I am confused as to why emacs doesn't automatically clean up frames that have been disconnected like this. If emacs survives a crash of the X server, it should be able to identify that the display is dead (e.g. by checking the validity of output_data.x) and remove it from the (frame-list), preventing any subsequent commands from acting on these frames. It has to do something more than what delete-frame does, as that does not fix the issue (even though it removes the frame from the (frame-list)). Note: using GTK is very different, as emacs crashes *without* having to run set-fontset-font (i.e. emacs crashes when the X forwarding connection crashes). With lucid, emacs continues to run fine with the exception of this bug for me.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Wed, 10 Apr 2024 02:03:02 GMT) Full text and rfc822 format available.Message #41 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: George P <georgepanagopo <at> gmail.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Wed, 10 Apr 2024 10:02:06 +0800
George P <georgepanagopo <at> gmail.com> writes: > Hi, > > I am able to reproduce this bug without launching a new emacsclient. > Steps to reproduce: > > - Start emacs daemon. > - Connect using emacsclient -c. > - Connect remotely to the daemon and run another emacsclient -c using > X forwarding. > - Crash the X forwarding connection created in the previous step. > - Go back to the emacsclient running locally on the daemon and run > (set-fontset-font t '(#xe000 . #xf8ff) "Symbols Nerd Font Mono") > > The reason that Ben was seeing a crash with a new emacsclient is > because he is using Doom (an Emacs framework) that attached a function > to server-after-make-hook that called set-fontset-font in the above > way. As Eli said, there is really no good reason to run such a hook > after the first frame, and this behavior has been fixed in Doom. (To > Ben: try upgrading Doom and see if it fixes your issue, if not let me > know!) > > Surprisingly, the segfault still happens even if I explicitly call > delete-frame on the dead frame before calling set-fontset-font. Also, > I am unable to reproduce this bug without Doom (i.e. launching the > daemon with -Q). > > I am confused as to why emacs doesn't automatically clean up frames > that have been disconnected like this. If emacs survives a crash of > the X server, it should be able to identify that the display is dead > (e.g. by checking the validity of output_data.x) and remove it from > the (frame-list), preventing any subsequent commands from acting on > these frames. It has to do something more than what delete-frame does, > as that does not fix the issue (even though it removes the frame from > the (frame-list)). > > Note: using GTK is very different, as emacs crashes *without* having > to run set-fontset-font (i.e. emacs crashes when the X forwarding > connection crashes). With lucid, emacs continues to run fine with the > exception of this bug for me. I cannot reproduce this crash, but I suspect the culprit is to be found in the retention of the remote frame beyond the destruction of the X server connection, which is not detected when Emacs returns to the event loop, and remains unnoticed until set-fontset-font prompts a request to be issued that flushes the now-destroyed connection. Whatever code issues this request is not robust against abrupt destruction of frames by the IO error handler and consequently crashes attempting to dereference the dead frame. Please attach GDB to the running Emacs daemon and post a backtrace from such a crash--with any luck, the code responsible will be rather pathological and easily addressable.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Wed, 10 Apr 2024 15:44:03 GMT) Full text and rfc822 format available.Message #44 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Wed, 10 Apr 2024 10:42:43 -0500
This is the trace I get (similar to Ben's): Thread 1 "emacs" received signal SIGSEGV, Segmentation fault. 0x0000000000506a94 in realize_basic_faces () (gdb) where #0 0x0000000000506a94 in realize_basic_faces () #1 0x000000000050979d in recompute_basic_faces () #2 0x000000000068b172 in Fset_fontset_font () #3 0x00000000005ecdc6 in eval_sub () #4 0x00000000005eef49 in Feval () #5 0x00007ffff23830d8 in F6576616c2d65787072657373696f6e_eval_expression_0 () from /nix/store/1db10dgbfwzb5q3m78f497arkpv34y21-emacs-29.1/bin/../lib/emacs/29.1/native-lisp/29.1-41778d84/preloaded/simple-fab5b0cf-a050dc2b.eln #6 0x00000000005e8d61 in Ffuncall () #7 0x00000000005e4c41 in Ffuncall_interactively () #8 0x00000000005e8d61 in Ffuncall () #9 0x00000000005e8f80 in Fapply () #10 0x00000000005e65c3 in Fcall_interactively () #11 0x00007ffff23876dd in F636f6d6d616e642d65786563757465_command_execute_0 () from /nix/store/1db10dgbfwzb5q3m78f497arkpv34y21-emacs-29.1/bin/../lib/emacs/29.1/native-lisp/29.1-41778d84/preloaded/simple-fab5b0cf-a050dc2b.eln #12 0x00000000005e8d61 in Ffuncall () #13 0x000000000056c05c in command_loop_1 () #14 0x00000000005e75af in internal_condition_case () #15 0x0000000000556ec6 in command_loop_2 () #16 0x00000000005e7513 in internal_catch () #17 0x0000000000556e61 in command_loop () #18 0x000000000055b9eb in recursive_edit_1 () #19 0x000000000055bd6f in Frecursive_edit () #20 0x000000000042d184 in main () This is probably not that useful without debug symbols though....
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Thu, 11 Apr 2024 00:51:03 GMT) Full text and rfc822 format available.Message #47 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: George P <georgepanagopo <at> gmail.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Thu, 11 Apr 2024 08:50:06 +0800
George P <georgepanagopo <at> gmail.com> writes: > This is the trace I get (similar to Ben's): > > Thread 1 "emacs" received signal SIGSEGV, Segmentation fault. > 0x0000000000506a94 in realize_basic_faces () > (gdb) where > #0 0x0000000000506a94 in realize_basic_faces () > #1 0x000000000050979d in recompute_basic_faces () > #2 0x000000000068b172 in Fset_fontset_font () > #3 0x00000000005ecdc6 in eval_sub () > #4 0x00000000005eef49 in Feval () > #5 0x00007ffff23830d8 in F6576616c2d65787072657373696f6e_eval_expression_0 () > from /nix/store/1db10dgbfwzb5q3m78f497arkpv34y21-emacs-29.1/bin/../lib/emacs/29.1/native-lisp/29.1-41778d84/preloaded/simple-fab5b0cf-a050dc2b.eln > #6 0x00000000005e8d61 in Ffuncall () > #7 0x00000000005e4c41 in Ffuncall_interactively () > #8 0x00000000005e8d61 in Ffuncall () > #9 0x00000000005e8f80 in Fapply () > #10 0x00000000005e65c3 in Fcall_interactively () > #11 0x00007ffff23876dd in F636f6d6d616e642d65786563757465_command_execute_0 () > from /nix/store/1db10dgbfwzb5q3m78f497arkpv34y21-emacs-29.1/bin/../lib/emacs/29.1/native-lisp/29.1-41778d84/preloaded/simple-fab5b0cf-a050dc2b.eln > #12 0x00000000005e8d61 in Ffuncall () > #13 0x000000000056c05c in command_loop_1 () > #14 0x00000000005e75af in internal_condition_case () > #15 0x0000000000556ec6 in command_loop_2 () > #16 0x00000000005e7513 in internal_catch () > #17 0x0000000000556e61 in command_loop () > #18 0x000000000055b9eb in recursive_edit_1 () > #19 0x000000000055bd6f in Frecursive_edit () > #20 0x000000000042d184 in main () > > This is probably not that useful without debug symbols though.... Yes, please install them and generate a new backtrace.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 12 Apr 2024 02:04:02 GMT) Full text and rfc822 format available.Message #50 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Thu, 11 Apr 2024 22:03:06 -0400
Here is the new trace: Thread 1 "emacs" received signal SIGSEGV, Segmentation fault. 0x0000000000537fb2 in realize_default_face (f=0x9ff1650) at xfaces.c:5864 5864 XSETFONT (font_object, FRAME_FONT (f)); Missing separate debuginfos, use: dnf debuginfo-install GConf2-3.2.6-22.el8.x86_64 bzip2-libs-1.0.6-26.el8.x86_64 cairo-1.15.12-6.el8.x86_64 dbus-glib-0.110-2.el8.x86_64 dbus-libs-1.12.8-26.el8.x86_64 dconf-0.28.0-4.el8.x86_64 expat-2.2.5-11.el8.x86_64 fontconfig-2.13.1-4.el8.x86_64 freetype-2.9.1-9.el8.x86_64 glib2-2.56.4-161.el8.x86_64 gmp-6.1.2-10.el8.x86_64 gnutls-3.6.16-8.el8_9.1.x86_64 graphite2-1.3.10-10.el8.x86_64 harfbuzz-1.7.5-3.el8.x86_64 jbigkit-libs-2.1-14.el8.x86_64 libICE-1.0.9-15.el8.x86_64 libSM-1.2.3-1.el8.x86_64 libX11-1.6.8-6.el8.x86_64 libX11-xcb-1.6.8-6.el8.x86_64 libXau-1.0.9-3.el8.x86_64 libXaw-1.0.13-10.el8.x86_64 libXcomposite-0.4.4-14.el8.x86_64 libXcursor-1.1.15-3.el8.x86_64 libXfixes-5.0.3-7.el8.x86_64 libXi-1.7.10-1.el8.x86_64 libXinerama-1.1.4-1.el8.x86_64 libXmu-1.1.3-1.el8.x86_64 libXpm-3.5.12-9.el8_7.x86_64 libXrandr-1.5.2-1.el8.x86_64 libXrender-0.9.10-7.el8.x86_64 libXt-1.1.5-12.el8.x86_64 libacl-2.2.53-1.el8.x86_64 libattr-2.4.48-3.el8.x86_64 libblkid-2.32.1-43.el8.x86_64 libcap-2.48-6.el8_9.x86_64 libffi-3.1-24.el8.x86_64 libgcrypt-1.8.5-7.el8_6.x86_64 libgpg-error-1.31-1.el8.x86_64 libjpeg-turbo-1.5.3-12.el8.x86_64 libmount-2.32.1-43.el8.x86_64 libpng-1.6.34-5.el8.x86_64 libselinux-2.9-8.el8.x86_64 libtasn1-4.13-4.el8_7.x86_64 libtiff-4.0.9-29.el8_8.x86_64 libunistring-0.9.9-3.el8.x86_64 libuuid-2.32.1-43.el8.x86_64 libwebp-1.0.0-9.el8_9.1.x86_64 libxcb-1.13.1-1.el8.x86_64 libxml2-2.9.7-9.el8.11.deshaw.x86_64 lz4-libs-1.8.3-3.el8_4.x86_64 nettle-3.4.1-7.el8.x86_64 p11-kit-0.23.22-1.el8.x86_64 pcre-8.42-6.el8.x86_64 pcre2-10.32-3.el8_6.x86_64 sqlite-libs-3.26.0-19.el8_9.x86_64 systemd-libs-239-78.el8.x86_64 zlib-1.2.11-25.el8.x86_64 (gdb) where #0 0x0000000000537fb2 in realize_default_face (f=0x9ff1650) at xfaces.c:5864 #1 0x0000000000537c3e in realize_basic_faces (f=0x9ff1650) at xfaces.c:5798 #2 0x000000000052aced in recompute_basic_faces (f=0x9ff1650) at xfaces.c:719 #3 0x000000000071d794 in free_realized_fontsets (base=0x7fffec5a731d) at fontset.c:1372 #4 0x000000000071ebf7 in Fset_fontset_font (fontset=0x30, characters=0x7fffeb3b7bc3, font_spec=0x15e66cd, frame=0xf3a095, add=0x0) at fontset.c:1720 #5 0x000000000066ba2f in eval_sub (form=0x7fffeb3b7be3) at eval.c:2539 #6 0x000000000066b1d3 in Feval (form=0x7fffeb3b7be3, lexical=0x30) at eval.c:2389 #7 0x000000000066d170 in funcall_subr (subr=0xce3580 <Seval>, numargs=2, args=0x7fffebd4c1b0) at eval.c:3092 #8 0x00000000006bf470 in exec_byte_code (fun=0x7fffec2b86e5, args_template=513, nargs=2, args=0x7fffebd4c4c0) at bytecode.c:814 #9 0x000000000066d76e in funcall_lambda (fun=0x2c39e95, nargs=0, arg_vector=0x7fffffffba60) at eval.c:3194 #10 0x000000000066cc24 in funcall_general (fun=0x2c39e95, numargs=0, args=0x7fffffffba60) at eval.c:2972 #11 0x000000000066cea9 in Ffuncall (nargs=1, args=0x7fffffffba58) at eval.c:3022 #12 0x0000000000665f0c in call0 (fn=0x2c39e95) at lisp.h:3503 #13 0x0000000000668dcb in Fhandler_bind_1 (nargs=3, args=0x7fffebd4c128) at eval.c:1403 #14 0x000000000066d369 in funcall_subr (subr=0xce3440 <Shandler_bind_1>, numargs=3, args=0x7fffebd4c128) at eval.c:3113 #15 0x00000000006bf470 in exec_byte_code (fun=0x7fffec2b17e5, args_template=1025, nargs=4, args=0x7fffffffc2c0) at bytecode.c:814 #16 0x000000000066d76e in funcall_lambda (fun=0x7fffec2b17e5, nargs=4, arg_vector=0x7fffffffc2a0) at eval.c:3194 #17 0x000000000066cc24 in funcall_general (fun=0x7fffec2b17e5, numargs=4, args=0x7fffffffc2a0) at eval.c:2972 #18 0x000000000066cea9 in Ffuncall (nargs=5, args=0x7fffffffc298) at eval.c:3022 #19 0x0000000000662c69 in Ffuncall_interactively (nargs=5, args=0x7fffffffc298) at callint.c:250 #20 0x000000000066d369 in funcall_subr (subr=0xce2cc0 <Sfuncall_interactively>, numargs=5, args=0x7fffffffc298) at eval.c:3113 #21 0x000000000066cbd8 in funcall_general (fun=0xce2cc5 <Sfuncall_interactively+5>, numargs=5, args=0x7fffffffc298) at eval.c:2968 #22 0x000000000066cea9 in Ffuncall (nargs=6, args=0x7fffffffc290) at eval.c:3022 #23 0x000000000066c358 in Fapply (nargs=3, args=0x7fffffffc3d0) at eval.c:2693 #24 0x0000000000663085 in Fcall_interactively (function=0x7fffeb5542f0, record_flag=0x0, keys=0x70ae4a5) at callint.c:342 #25 0x000000000066d19f in funcall_subr (subr=0xce2d00 <Scall_interactively>, numargs=3, args=0x7fffebd4c070) at eval.c:3094 #26 0x00000000006bf470 in exec_byte_code (fun=0x7fffec92a33d, args_template=1025, nargs=1, args=0x7fffffffcda0) at bytecode.c:814 #27 0x000000000066d76e in funcall_lambda (fun=0x7fffec92a33d, nargs=1, arg_vector=0x7fffffffcd98) at eval.c:3194 #28 0x000000000066cc24 in funcall_general (fun=0x7fffec92a33d, numargs=1, args=0x7fffffffcd98) at eval.c:2972 #29 0x000000000066cea9 in Ffuncall (nargs=2, args=0x7fffffffcd90) at eval.c:3022 #30 0x00000000005aac1f in command_loop_1 () at keyboard.c:1549 #31 0x0000000000669463 in internal_condition_case (bfun=0x5aa419 <command_loop_1>, handlers=0x90, hfun=0x5a99e3 <cmd_error>) at eval.c:1537 #32 0x00000000005aa088 in command_loop_2 (handlers=0x90) at keyboard.c:1167 #33 0x000000000066897e in internal_catch (tag=0x10c20, func=0x5aa065 <command_loop_2>, arg=0x90) at eval.c:1217 #34 0x00000000005aa020 in command_loop () at keyboard.c:1145 #35 0x00000000005a9592 in recursive_edit_1 () at keyboard.c:753 #36 0x00000000005a973a in Frecursive_edit () at keyboard.c:836 #37 0x00000000005a5c81 in main (argc=2, argv=0x7fffffffd1e8) at emacs.c:2618 (gdb) print f->output_data $1 = {tty = 0x0, x = 0x0, w32 = 0x0, ns = 0x0, pgtk = 0x0, haiku = 0x0, android = 0x0} This is using the master branch on commit 0fab2649e288c7a350018293443e709eba6b0fe2. Let me know if you want me to do more digging in gdb. On Wed, Apr 10, 2024 at 8:50 PM Po Lu <luangruo <at> yahoo.com> wrote: > > George P <georgepanagopo <at> gmail.com> writes: > > > This is the trace I get (similar to Ben's): > > > > Thread 1 "emacs" received signal SIGSEGV, Segmentation fault. > > 0x0000000000506a94 in realize_basic_faces () > > (gdb) where > > #0 0x0000000000506a94 in realize_basic_faces () > > #1 0x000000000050979d in recompute_basic_faces () > > #2 0x000000000068b172 in Fset_fontset_font () > > #3 0x00000000005ecdc6 in eval_sub () > > #4 0x00000000005eef49 in Feval () > > #5 0x00007ffff23830d8 in F6576616c2d65787072657373696f6e_eval_expression_0 () > > from /nix/store/1db10dgbfwzb5q3m78f497arkpv34y21-emacs-29.1/bin/../lib/emacs/29.1/native-lisp/29.1-41778d84/preloaded/simple-fab5b0cf-a050dc2b.eln > > #6 0x00000000005e8d61 in Ffuncall () > > #7 0x00000000005e4c41 in Ffuncall_interactively () > > #8 0x00000000005e8d61 in Ffuncall () > > #9 0x00000000005e8f80 in Fapply () > > #10 0x00000000005e65c3 in Fcall_interactively () > > #11 0x00007ffff23876dd in F636f6d6d616e642d65786563757465_command_execute_0 () > > from /nix/store/1db10dgbfwzb5q3m78f497arkpv34y21-emacs-29.1/bin/../lib/emacs/29.1/native-lisp/29.1-41778d84/preloaded/simple-fab5b0cf-a050dc2b.eln > > #12 0x00000000005e8d61 in Ffuncall () > > #13 0x000000000056c05c in command_loop_1 () > > #14 0x00000000005e75af in internal_condition_case () > > #15 0x0000000000556ec6 in command_loop_2 () > > #16 0x00000000005e7513 in internal_catch () > > #17 0x0000000000556e61 in command_loop () > > #18 0x000000000055b9eb in recursive_edit_1 () > > #19 0x000000000055bd6f in Frecursive_edit () > > #20 0x000000000042d184 in main () > > > > This is probably not that useful without debug symbols though.... > > Yes, please install them and generate a new backtrace.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Sat, 13 Apr 2024 01:53:02 GMT) Full text and rfc822 format available.Message #53 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: George P <georgepanagopo <at> gmail.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Sat, 13 Apr 2024 09:51:49 +0800
George P <georgepanagopo <at> gmail.com> writes: > Here is the new trace: > > Thread 1 "emacs" received signal SIGSEGV, Segmentation fault. > 0x0000000000537fb2 in realize_default_face (f=0x9ff1650) at xfaces.c:5864 > 5864 XSETFONT (font_object, FRAME_FONT (f)); > Missing separate debuginfos, use: dnf debuginfo-install > GConf2-3.2.6-22.el8.x86_64 bzip2-libs-1.0.6-26.el8.x86_64 > cairo-1.15.12-6.el8.x86_64 dbus-glib-0.110-2.el8.x86_64 > dbus-libs-1.12.8-26.el8.x86_64 dconf-0.28.0-4.el8.x86_64 > expat-2.2.5-11.el8.x86_64 fontconfig-2.13.1-4.el8.x86_64 > freetype-2.9.1-9.el8.x86_64 glib2-2.56.4-161.el8.x86_64 > gmp-6.1.2-10.el8.x86_64 gnutls-3.6.16-8.el8_9.1.x86_64 > graphite2-1.3.10-10.el8.x86_64 harfbuzz-1.7.5-3.el8.x86_64 > jbigkit-libs-2.1-14.el8.x86_64 libICE-1.0.9-15.el8.x86_64 > libSM-1.2.3-1.el8.x86_64 libX11-1.6.8-6.el8.x86_64 > libX11-xcb-1.6.8-6.el8.x86_64 libXau-1.0.9-3.el8.x86_64 > libXaw-1.0.13-10.el8.x86_64 libXcomposite-0.4.4-14.el8.x86_64 > libXcursor-1.1.15-3.el8.x86_64 libXfixes-5.0.3-7.el8.x86_64 > libXi-1.7.10-1.el8.x86_64 libXinerama-1.1.4-1.el8.x86_64 > libXmu-1.1.3-1.el8.x86_64 libXpm-3.5.12-9.el8_7.x86_64 > libXrandr-1.5.2-1.el8.x86_64 libXrender-0.9.10-7.el8.x86_64 > libXt-1.1.5-12.el8.x86_64 libacl-2.2.53-1.el8.x86_64 > libattr-2.4.48-3.el8.x86_64 libblkid-2.32.1-43.el8.x86_64 > libcap-2.48-6.el8_9.x86_64 libffi-3.1-24.el8.x86_64 > libgcrypt-1.8.5-7.el8_6.x86_64 libgpg-error-1.31-1.el8.x86_64 > libjpeg-turbo-1.5.3-12.el8.x86_64 libmount-2.32.1-43.el8.x86_64 > libpng-1.6.34-5.el8.x86_64 libselinux-2.9-8.el8.x86_64 > libtasn1-4.13-4.el8_7.x86_64 libtiff-4.0.9-29.el8_8.x86_64 > libunistring-0.9.9-3.el8.x86_64 libuuid-2.32.1-43.el8.x86_64 > libwebp-1.0.0-9.el8_9.1.x86_64 libxcb-1.13.1-1.el8.x86_64 > libxml2-2.9.7-9.el8.11.deshaw.x86_64 lz4-libs-1.8.3-3.el8_4.x86_64 > nettle-3.4.1-7.el8.x86_64 p11-kit-0.23.22-1.el8.x86_64 > pcre-8.42-6.el8.x86_64 pcre2-10.32-3.el8_6.x86_64 > sqlite-libs-3.26.0-19.el8_9.x86_64 systemd-libs-239-78.el8.x86_64 > zlib-1.2.11-25.el8.x86_64 > (gdb) where > #0 0x0000000000537fb2 in realize_default_face (f=0x9ff1650) at xfaces.c:5864 > #1 0x0000000000537c3e in realize_basic_faces (f=0x9ff1650) at xfaces.c:5798 > #2 0x000000000052aced in recompute_basic_faces (f=0x9ff1650) at xfaces.c:719 > #3 0x000000000071d794 in free_realized_fontsets (base=0x7fffec5a731d) > at fontset.c:1372 > #4 0x000000000071ebf7 in Fset_fontset_font (fontset=0x30, > characters=0x7fffeb3b7bc3, font_spec=0x15e66cd, frame=0xf3a095, > add=0x0) at fontset.c:1720 > #5 0x000000000066ba2f in eval_sub (form=0x7fffeb3b7be3) at eval.c:2539 > #6 0x000000000066b1d3 in Feval (form=0x7fffeb3b7be3, lexical=0x30) at > eval.c:2389 > #7 0x000000000066d170 in funcall_subr (subr=0xce3580 <Seval>, > numargs=2, args=0x7fffebd4c1b0) at eval.c:3092 > #8 0x00000000006bf470 in exec_byte_code (fun=0x7fffec2b86e5, > args_template=513, nargs=2, args=0x7fffebd4c4c0) at bytecode.c:814 > #9 0x000000000066d76e in funcall_lambda (fun=0x2c39e95, nargs=0, > arg_vector=0x7fffffffba60) at eval.c:3194 > #10 0x000000000066cc24 in funcall_general (fun=0x2c39e95, numargs=0, > args=0x7fffffffba60) at eval.c:2972 > #11 0x000000000066cea9 in Ffuncall (nargs=1, args=0x7fffffffba58) at eval.c:3022 > #12 0x0000000000665f0c in call0 (fn=0x2c39e95) at lisp.h:3503 > #13 0x0000000000668dcb in Fhandler_bind_1 (nargs=3, > args=0x7fffebd4c128) at eval.c:1403 > #14 0x000000000066d369 in funcall_subr (subr=0xce3440 > <Shandler_bind_1>, numargs=3, args=0x7fffebd4c128) at eval.c:3113 > #15 0x00000000006bf470 in exec_byte_code (fun=0x7fffec2b17e5, > args_template=1025, nargs=4, args=0x7fffffffc2c0) at bytecode.c:814 > #16 0x000000000066d76e in funcall_lambda (fun=0x7fffec2b17e5, nargs=4, > arg_vector=0x7fffffffc2a0) at eval.c:3194 > #17 0x000000000066cc24 in funcall_general (fun=0x7fffec2b17e5, > numargs=4, args=0x7fffffffc2a0) at eval.c:2972 > #18 0x000000000066cea9 in Ffuncall (nargs=5, args=0x7fffffffc298) at eval.c:3022 > #19 0x0000000000662c69 in Ffuncall_interactively (nargs=5, > args=0x7fffffffc298) at callint.c:250 > #20 0x000000000066d369 in funcall_subr (subr=0xce2cc0 > <Sfuncall_interactively>, numargs=5, args=0x7fffffffc298) at > eval.c:3113 > #21 0x000000000066cbd8 in funcall_general (fun=0xce2cc5 > <Sfuncall_interactively+5>, numargs=5, args=0x7fffffffc298) at > eval.c:2968 > #22 0x000000000066cea9 in Ffuncall (nargs=6, args=0x7fffffffc290) at eval.c:3022 > #23 0x000000000066c358 in Fapply (nargs=3, args=0x7fffffffc3d0) at eval.c:2693 > #24 0x0000000000663085 in Fcall_interactively > (function=0x7fffeb5542f0, record_flag=0x0, keys=0x70ae4a5) at > callint.c:342 > #25 0x000000000066d19f in funcall_subr (subr=0xce2d00 > <Scall_interactively>, numargs=3, args=0x7fffebd4c070) at eval.c:3094 > #26 0x00000000006bf470 in exec_byte_code (fun=0x7fffec92a33d, > args_template=1025, nargs=1, args=0x7fffffffcda0) at bytecode.c:814 > #27 0x000000000066d76e in funcall_lambda (fun=0x7fffec92a33d, nargs=1, > arg_vector=0x7fffffffcd98) at eval.c:3194 > #28 0x000000000066cc24 in funcall_general (fun=0x7fffec92a33d, > numargs=1, args=0x7fffffffcd98) at eval.c:2972 > #29 0x000000000066cea9 in Ffuncall (nargs=2, args=0x7fffffffcd90) at eval.c:3022 > #30 0x00000000005aac1f in command_loop_1 () at keyboard.c:1549 > #31 0x0000000000669463 in internal_condition_case (bfun=0x5aa419 > <command_loop_1>, handlers=0x90, hfun=0x5a99e3 <cmd_error>) at > eval.c:1537 > #32 0x00000000005aa088 in command_loop_2 (handlers=0x90) at keyboard.c:1167 > #33 0x000000000066897e in internal_catch (tag=0x10c20, func=0x5aa065 > <command_loop_2>, arg=0x90) at eval.c:1217 > #34 0x00000000005aa020 in command_loop () at keyboard.c:1145 > #35 0x00000000005a9592 in recursive_edit_1 () at keyboard.c:753 > #36 0x00000000005a973a in Frecursive_edit () at keyboard.c:836 > #37 0x00000000005a5c81 in main (argc=2, argv=0x7fffffffd1e8) at emacs.c:2618 > (gdb) print f->output_data > $1 = {tty = 0x0, x = 0x0, w32 = 0x0, ns = 0x0, pgtk = 0x0, haiku = > 0x0, android = 0x0} > > This is using the master branch on commit > 0fab2649e288c7a350018293443e709eba6b0fe2. Let me know if you want me > to do more digging in gdb. Yes please--this backtrace doesn't convey enough information to establish when the disconnect is first detected, so please place another breakpoint on `x_io_error_quitter', repeat this exercise, and post backtraces from both the new and the existing breakpoint.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Sat, 13 Apr 2024 07:48:03 GMT) Full text and rfc822 format available.Message #56 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Sat, 13 Apr 2024 03:46:25 -0400
[Message part 1 (text/plain, inline)]
I have attached the full backtraces for breakpoints on `x_io_error_quitter`, `delete_frame`, and the crash point at the same commit as before. Hope it helps! On Fri, Apr 12, 2024 at 9:52 PM Po Lu <luangruo <at> yahoo.com> wrote: > > George P <georgepanagopo <at> gmail.com> writes: > > > Here is the new trace: > > > > Thread 1 "emacs" received signal SIGSEGV, Segmentation fault. > > 0x0000000000537fb2 in realize_default_face (f=0x9ff1650) at xfaces.c:5864 > > 5864 XSETFONT (font_object, FRAME_FONT (f)); > > Missing separate debuginfos, use: dnf debuginfo-install > > GConf2-3.2.6-22.el8.x86_64 bzip2-libs-1.0.6-26.el8.x86_64 > > cairo-1.15.12-6.el8.x86_64 dbus-glib-0.110-2.el8.x86_64 > > dbus-libs-1.12.8-26.el8.x86_64 dconf-0.28.0-4.el8.x86_64 > > expat-2.2.5-11.el8.x86_64 fontconfig-2.13.1-4.el8.x86_64 > > freetype-2.9.1-9.el8.x86_64 glib2-2.56.4-161.el8.x86_64 > > gmp-6.1.2-10.el8.x86_64 gnutls-3.6.16-8.el8_9.1.x86_64 > > graphite2-1.3.10-10.el8.x86_64 harfbuzz-1.7.5-3.el8.x86_64 > > jbigkit-libs-2.1-14.el8.x86_64 libICE-1.0.9-15.el8.x86_64 > > libSM-1.2.3-1.el8.x86_64 libX11-1.6.8-6.el8.x86_64 > > libX11-xcb-1.6.8-6.el8.x86_64 libXau-1.0.9-3.el8.x86_64 > > libXaw-1.0.13-10.el8.x86_64 libXcomposite-0.4.4-14.el8.x86_64 > > libXcursor-1.1.15-3.el8.x86_64 libXfixes-5.0.3-7.el8.x86_64 > > libXi-1.7.10-1.el8.x86_64 libXinerama-1.1.4-1.el8.x86_64 > > libXmu-1.1.3-1.el8.x86_64 libXpm-3.5.12-9.el8_7.x86_64 > > libXrandr-1.5.2-1.el8.x86_64 libXrender-0.9.10-7.el8.x86_64 > > libXt-1.1.5-12.el8.x86_64 libacl-2.2.53-1.el8.x86_64 > > libattr-2.4.48-3.el8.x86_64 libblkid-2.32.1-43.el8.x86_64 > > libcap-2.48-6.el8_9.x86_64 libffi-3.1-24.el8.x86_64 > > libgcrypt-1.8.5-7.el8_6.x86_64 libgpg-error-1.31-1.el8.x86_64 > > libjpeg-turbo-1.5.3-12.el8.x86_64 libmount-2.32.1-43.el8.x86_64 > > libpng-1.6.34-5.el8.x86_64 libselinux-2.9-8.el8.x86_64 > > libtasn1-4.13-4.el8_7.x86_64 libtiff-4.0.9-29.el8_8.x86_64 > > libunistring-0.9.9-3.el8.x86_64 libuuid-2.32.1-43.el8.x86_64 > > libwebp-1.0.0-9.el8_9.1.x86_64 libxcb-1.13.1-1.el8.x86_64 > > libxml2-2.9.7-9.el8.11.deshaw.x86_64 lz4-libs-1.8.3-3.el8_4.x86_64 > > nettle-3.4.1-7.el8.x86_64 p11-kit-0.23.22-1.el8.x86_64 > > pcre-8.42-6.el8.x86_64 pcre2-10.32-3.el8_6.x86_64 > > sqlite-libs-3.26.0-19.el8_9.x86_64 systemd-libs-239-78.el8.x86_64 > > zlib-1.2.11-25.el8.x86_64 > > (gdb) where > > #0 0x0000000000537fb2 in realize_default_face (f=0x9ff1650) at xfaces.c:5864 > > #1 0x0000000000537c3e in realize_basic_faces (f=0x9ff1650) at xfaces.c:5798 > > #2 0x000000000052aced in recompute_basic_faces (f=0x9ff1650) at xfaces.c:719 > > #3 0x000000000071d794 in free_realized_fontsets (base=0x7fffec5a731d) > > at fontset.c:1372 > > #4 0x000000000071ebf7 in Fset_fontset_font (fontset=0x30, > > characters=0x7fffeb3b7bc3, font_spec=0x15e66cd, frame=0xf3a095, > > add=0x0) at fontset.c:1720 > > #5 0x000000000066ba2f in eval_sub (form=0x7fffeb3b7be3) at eval.c:2539 > > #6 0x000000000066b1d3 in Feval (form=0x7fffeb3b7be3, lexical=0x30) at > > eval.c:2389 > > #7 0x000000000066d170 in funcall_subr (subr=0xce3580 <Seval>, > > numargs=2, args=0x7fffebd4c1b0) at eval.c:3092 > > #8 0x00000000006bf470 in exec_byte_code (fun=0x7fffec2b86e5, > > args_template=513, nargs=2, args=0x7fffebd4c4c0) at bytecode.c:814 > > #9 0x000000000066d76e in funcall_lambda (fun=0x2c39e95, nargs=0, > > arg_vector=0x7fffffffba60) at eval.c:3194 > > #10 0x000000000066cc24 in funcall_general (fun=0x2c39e95, numargs=0, > > args=0x7fffffffba60) at eval.c:2972 > > #11 0x000000000066cea9 in Ffuncall (nargs=1, args=0x7fffffffba58) at eval.c:3022 > > #12 0x0000000000665f0c in call0 (fn=0x2c39e95) at lisp.h:3503 > > #13 0x0000000000668dcb in Fhandler_bind_1 (nargs=3, > > args=0x7fffebd4c128) at eval.c:1403 > > #14 0x000000000066d369 in funcall_subr (subr=0xce3440 > > <Shandler_bind_1>, numargs=3, args=0x7fffebd4c128) at eval.c:3113 > > #15 0x00000000006bf470 in exec_byte_code (fun=0x7fffec2b17e5, > > args_template=1025, nargs=4, args=0x7fffffffc2c0) at bytecode.c:814 > > #16 0x000000000066d76e in funcall_lambda (fun=0x7fffec2b17e5, nargs=4, > > arg_vector=0x7fffffffc2a0) at eval.c:3194 > > #17 0x000000000066cc24 in funcall_general (fun=0x7fffec2b17e5, > > numargs=4, args=0x7fffffffc2a0) at eval.c:2972 > > #18 0x000000000066cea9 in Ffuncall (nargs=5, args=0x7fffffffc298) at eval.c:3022 > > #19 0x0000000000662c69 in Ffuncall_interactively (nargs=5, > > args=0x7fffffffc298) at callint.c:250 > > #20 0x000000000066d369 in funcall_subr (subr=0xce2cc0 > > <Sfuncall_interactively>, numargs=5, args=0x7fffffffc298) at > > eval.c:3113 > > #21 0x000000000066cbd8 in funcall_general (fun=0xce2cc5 > > <Sfuncall_interactively+5>, numargs=5, args=0x7fffffffc298) at > > eval.c:2968 > > #22 0x000000000066cea9 in Ffuncall (nargs=6, args=0x7fffffffc290) at eval.c:3022 > > #23 0x000000000066c358 in Fapply (nargs=3, args=0x7fffffffc3d0) at eval.c:2693 > > #24 0x0000000000663085 in Fcall_interactively > > (function=0x7fffeb5542f0, record_flag=0x0, keys=0x70ae4a5) at > > callint.c:342 > > #25 0x000000000066d19f in funcall_subr (subr=0xce2d00 > > <Scall_interactively>, numargs=3, args=0x7fffebd4c070) at eval.c:3094 > > #26 0x00000000006bf470 in exec_byte_code (fun=0x7fffec92a33d, > > args_template=1025, nargs=1, args=0x7fffffffcda0) at bytecode.c:814 > > #27 0x000000000066d76e in funcall_lambda (fun=0x7fffec92a33d, nargs=1, > > arg_vector=0x7fffffffcd98) at eval.c:3194 > > #28 0x000000000066cc24 in funcall_general (fun=0x7fffec92a33d, > > numargs=1, args=0x7fffffffcd98) at eval.c:2972 > > #29 0x000000000066cea9 in Ffuncall (nargs=2, args=0x7fffffffcd90) at eval.c:3022 > > #30 0x00000000005aac1f in command_loop_1 () at keyboard.c:1549 > > #31 0x0000000000669463 in internal_condition_case (bfun=0x5aa419 > > <command_loop_1>, handlers=0x90, hfun=0x5a99e3 <cmd_error>) at > > eval.c:1537 > > #32 0x00000000005aa088 in command_loop_2 (handlers=0x90) at keyboard.c:1167 > > #33 0x000000000066897e in internal_catch (tag=0x10c20, func=0x5aa065 > > <command_loop_2>, arg=0x90) at eval.c:1217 > > #34 0x00000000005aa020 in command_loop () at keyboard.c:1145 > > #35 0x00000000005a9592 in recursive_edit_1 () at keyboard.c:753 > > #36 0x00000000005a973a in Frecursive_edit () at keyboard.c:836 > > #37 0x00000000005a5c81 in main (argc=2, argv=0x7fffffffd1e8) at emacs.c:2618 > > (gdb) print f->output_data > > $1 = {tty = 0x0, x = 0x0, w32 = 0x0, ns = 0x0, pgtk = 0x0, haiku = > > 0x0, android = 0x0} > > > > This is using the master branch on commit > > 0fab2649e288c7a350018293443e709eba6b0fe2. Let me know if you want me > > to do more digging in gdb. > > Yes please--this backtrace doesn't convey enough information to > establish when the disconnect is first detected, so please place another > breakpoint on `x_io_error_quitter', repeat this exercise, and post > backtraces from both the new and the existing breakpoint.
[gdb-trace-66151.txt (text/plain, attachment)]
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Sat, 13 Apr 2024 11:46:02 GMT) Full text and rfc822 format available.Message #59 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: George P <georgepanagopo <at> gmail.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Sat, 13 Apr 2024 19:45:24 +0800
George P <georgepanagopo <at> gmail.com> writes: > I have attached the full backtraces for breakpoints on > `x_io_error_quitter`, `delete_frame`, and the crash point at the same > commit as before. Hope it helps! Thanks. It appears that my first diagnosis missed the mark, but no matter: I've now installed a fix on master, please test.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Sat, 13 Apr 2024 17:58:01 GMT) Full text and rfc822 format available.Message #62 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Sat, 13 Apr 2024 13:56:04 -0400
[Message part 1 (text/plain, inline)]
Thanks a lot for your efforts, but unfortunately the crash persists. I have attached the same backtraces as before but on commit 17e26cf57e1. Please let me know if you need more information. On Sat, Apr 13, 2024 at 7:45 AM Po Lu <luangruo <at> yahoo.com> wrote: > > George P <georgepanagopo <at> gmail.com> writes: > > > I have attached the full backtraces for breakpoints on > > `x_io_error_quitter`, `delete_frame`, and the crash point at the same > > commit as before. Hope it helps! > > Thanks. It appears that my first diagnosis missed the mark, but no > matter: I've now installed a fix on master, please test.
[gdb-trace-66151-2.txt (text/plain, attachment)]
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Thu, 18 Apr 2024 10:41:21 GMT) Full text and rfc822 format available.Message #65 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: luangruo <at> yahoo.com, George P <georgepanagopo <at> gmail.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Thu, 18 Apr 2024 13:40:23 +0300
> Cc: 66151 <at> debbugs.gnu.org > From: George P <georgepanagopo <at> gmail.com> > Date: Sat, 13 Apr 2024 13:56:04 -0400 > > Thanks a lot for your efforts, but unfortunately the crash persists. I > have attached the same backtraces as before but on commit 17e26cf57e1. > > Please let me know if you need more information. Thanks. Po Lu, how should we go about making some progress here?
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 19 Apr 2024 09:08:01 GMT) Full text and rfc822 format available.Message #68 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 66151 <at> debbugs.gnu.org, George P <georgepanagopo <at> gmail.com> Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 19 Apr 2024 17:07:19 +0800
Eli Zaretskii <eliz <at> gnu.org> writes: >> Cc: 66151 <at> debbugs.gnu.org >> From: George P <georgepanagopo <at> gmail.com> >> Date: Sat, 13 Apr 2024 13:56:04 -0400 >> >> Thanks a lot for your efforts, but unfortunately the crash persists. I >> have attached the same backtraces as before but on commit 17e26cf57e1. >> >> Please let me know if you need more information. > > Thanks. > > Po Lu, how should we go about making some progress here? Thanks. My hands are quite full and will remain so into the next week, but if this crude attempt to sidestep the crash works, it should suffice until I establish why dead frames are still being retained in Vfontset_table. George? diff --git a/src/fontset.c b/src/fontset.c index d27fa22015e..d969e5f1180 100644 --- a/src/fontset.c +++ b/src/fontset.c @@ -1366,10 +1366,11 @@ free_realized_fontsets (Lisp_Object base) if (CHAR_TABLE_P (this) && EQ (FONTSET_BASE (this), base)) { Fclear_face_cache (Qt); - /* This is in case some Lisp calls this function and then - proceeds with calling some other function, like font-at, - which needs the basic faces. */ - recompute_basic_faces (XFRAME (FONTSET_FRAME (this))); + if (!FRAME_LIVE_P (XFRAME (FONTSET_FRAME (this)))) + /* This is in case some Lisp calls this function and then + proceeds with calling some other function, like font-at, + which needs the basic faces. */ + recompute_basic_faces (XFRAME (FONTSET_FRAME (this))); break; } }
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 19 Apr 2024 11:17:04 GMT) Full text and rfc822 format available.Message #71 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org, georgepanagopo <at> gmail.com Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 19 Apr 2024 14:15:39 +0300
> From: Po Lu <luangruo <at> yahoo.com> > Cc: George P <georgepanagopo <at> gmail.com>, 66151 <at> debbugs.gnu.org > Date: Fri, 19 Apr 2024 17:07:19 +0800 > > Eli Zaretskii <eliz <at> gnu.org> writes: > > > Po Lu, how should we go about making some progress here? > > Thanks. My hands are quite full and will remain so into the next week, > but if this crude attempt to sidestep the crash works, it should suffice > until I establish why dead frames are still being retained in > Vfontset_table. George? > > diff --git a/src/fontset.c b/src/fontset.c > index d27fa22015e..d969e5f1180 100644 > --- a/src/fontset.c > +++ b/src/fontset.c > @@ -1366,10 +1366,11 @@ free_realized_fontsets (Lisp_Object base) > if (CHAR_TABLE_P (this) && EQ (FONTSET_BASE (this), base)) > { > Fclear_face_cache (Qt); > - /* This is in case some Lisp calls this function and then > - proceeds with calling some other function, like font-at, > - which needs the basic faces. */ > - recompute_basic_faces (XFRAME (FONTSET_FRAME (this))); > + if (!FRAME_LIVE_P (XFRAME (FONTSET_FRAME (this)))) > + /* This is in case some Lisp calls this function and then > + proceeds with calling some other function, like font-at, > + which needs the basic faces. */ > + recompute_basic_faces (XFRAME (FONTSET_FRAME (this))); > break; > } > } Are you sure it should be !FRAME_LIVE_P ? Why would we condition the call to recompute_basic_faces on the fact that the relevant frame is no longer alive? What am I missing?
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Fri, 19 Apr 2024 12:01:04 GMT) Full text and rfc822 format available.Message #74 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 66151 <at> debbugs.gnu.org, georgepanagopo <at> gmail.com Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Fri, 19 Apr 2024 20:00:24 +0800
Eli Zaretskii <eliz <at> gnu.org> writes: > Are you sure it should be !FRAME_LIVE_P? No, it should be the express opposite. > Why would we condition the call to recompute_basic_faces on the fact > that the relevant frame is no longer alive? What am I missing? Nothing, if my hurried preparation of the patch counts as nothing... It was altogether less successful than my simultaneous preparation for rush hour traffic.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Sat, 27 Apr 2024 08:39:15 GMT) Full text and rfc822 format available.Message #77 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: georgepanagopo <at> gmail.com, Po Lu <luangruo <at> yahoo.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Sat, 27 Apr 2024 11:37:36 +0300
Ping! George, could you please try Po Lu's suggestion and report back? > From: Po Lu <luangruo <at> yahoo.com> > Cc: georgepanagopo <at> gmail.com, 66151 <at> debbugs.gnu.org > Date: Fri, 19 Apr 2024 20:00:24 +0800 > > Eli Zaretskii <eliz <at> gnu.org> writes: > > > Are you sure it should be !FRAME_LIVE_P? > > No, it should be the express opposite. > > > Why would we condition the call to recompute_basic_faces on the fact > > that the relevant frame is no longer alive? What am I missing? > > Nothing, if my hurried preparation of the patch counts as nothing... It > was altogether less successful than my simultaneous preparation for rush > hour traffic. >
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Sun, 05 May 2024 16:27:02 GMT) Full text and rfc822 format available.Message #80 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: George P <georgepanagopo <at> gmail.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: Po Lu <luangruo <at> yahoo.com>, 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Sun, 5 May 2024 12:25:45 -0400
Sorry for the late reply! I can confirm that the crash goes away with the above patch on the latest master (with !FRAME_LIVE_P replaced with FRAME_LIVE_P of course). I do not know if there are any other side effects of the dead frame being retained in Vfontset_table. On Sat, Apr 27, 2024 at 4:37 AM Eli Zaretskii <eliz <at> gnu.org> wrote: > > Ping! George, could you please try Po Lu's suggestion and report > back? > > > From: Po Lu <luangruo <at> yahoo.com> > > Cc: georgepanagopo <at> gmail.com, 66151 <at> debbugs.gnu.org > > Date: Fri, 19 Apr 2024 20:00:24 +0800 > > > > Eli Zaretskii <eliz <at> gnu.org> writes: > > > > > Are you sure it should be !FRAME_LIVE_P? > > > > No, it should be the express opposite. > > > > > Why would we condition the call to recompute_basic_faces on the fact > > > that the relevant frame is no longer alive? What am I missing? > > > > Nothing, if my hurried preparation of the patch counts as nothing... It > > was altogether less successful than my simultaneous preparation for rush > > hour traffic. > >
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Mon, 06 May 2024 11:04:01 GMT) Full text and rfc822 format available.Message #83 received at 66151 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: luangruo <at> yahoo.com, George P <georgepanagopo <at> gmail.com> Cc: 66151 <at> debbugs.gnu.org Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Mon, 06 May 2024 14:02:29 +0300
> From: George P <georgepanagopo <at> gmail.com> > Date: Sun, 5 May 2024 12:25:45 -0400 > Cc: Po Lu <luangruo <at> yahoo.com>, 66151 <at> debbugs.gnu.org > > Sorry for the late reply! I can confirm that the crash goes away with > the above patch on the latest master (with !FRAME_LIVE_P replaced with > FRAME_LIVE_P of course). > > I do not know if there are any other side effects of the dead frame > being retained in Vfontset_table. Thanks. So I guess we can now close this bug (after installing the change)?
Po Lu <luangruo <at> yahoo.com>
:Benjamin Schwehn <bschwehn <at> gmail.com>
:Message #88 received at 66151-done <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 66151-done <at> debbugs.gnu.org, George P <georgepanagopo <at> gmail.com> Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Tue, 07 May 2024 08:49:21 +0800
Eli Zaretskii <eliz <at> gnu.org> writes: >> From: George P <georgepanagopo <at> gmail.com> >> Date: Sun, 5 May 2024 12:25:45 -0400 >> Cc: Po Lu <luangruo <at> yahoo.com>, 66151 <at> debbugs.gnu.org >> >> Sorry for the late reply! I can confirm that the crash goes away with >> the above patch on the latest master (with !FRAME_LIVE_P replaced with >> FRAME_LIVE_P of course). >> >> I do not know if there are any other side effects of the dead frame >> being retained in Vfontset_table. > > Thanks. > > So I guess we can now close this bug (after installing the change)? Yes, now done.
bug-gnu-emacs <at> gnu.org
:bug#66151
; Package emacs
.
(Tue, 07 May 2024 20:28:02 GMT) Full text and rfc822 format available.Message #91 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Benjamin Schwehn <bschwehn <at> gmail.com> To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org> Cc: George P <georgepanagopo <at> gmail.com> Subject: Re: bug#66151: 29.1.50; daemon crashing after X forwarding disconnects Date: Tue, 7 May 2024 22:26:36 +0200
On Tue, 9 Apr 2024 at 22:36, George P <georgepanagopo <at> gmail.com> wrote: >(To Ben: try upgrading Doom and see if it fixes your issue, if not let me know!) I can confirm that I have not seen this crash since upgrading Doom. Thank you very much for this investigation! Ben
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Wed, 05 Jun 2024 11:24:08 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.