Package: emacs;
Reported by: john muhl <jm <at> pub.pink>
Date: Thu, 7 Aug 2025 17:10:02 UTC
Severity: normal
Found in version 31.0.50
View this message in rfc822 format
From: john muhl <jm <at> pub.pink> To: 79193 <at> debbugs.gnu.org Subject: bug#79193: 31.0.50; feature/igc: crashes with no gui frame Date: Thu, 07 Aug 2025 12:09:19 -0500
Recently (since a0757e0ac05) Emacs has been crashing regularly when running with only tty frames. It could be a coincidence but keeping a gui frame around has let me run crash free for days, then I get rid of that frame and within a couple of hours at most Emacs crashes. I haven’t been able to find a recipe that reliably crashes but hit them in various everyday usage like C-n in a dired buffer, C-xb otherbuf TAB, C/M-v, etc. This latest crash was after pressing SPC in a gnus summary buffer to go the next unread article. I still have the crashed session attached to gdb around if there is anything else that would help. (gdb) bt full #0 terminate_due_to_signal (sig=11, backtrace_limit=40) at emacs.c:444 No locals. #1 0x000055555589a228 in handle_fatal_signal (sig=11) at sysdep.c:1793 No locals. #2 0x000055555589a2b2 in deliver_thread_signal (sig=11, handler=0x55555589a210 <handle_fatal_signal>) at sysdep.c:1785 old_errno = 2 #3 0x00005555558959ea in deliver_fatal_thread_signal (sig=11) at sysdep.c:1805 No locals. #4 0x000055555589a342 in handle_sigsegv (sig=11, siginfo=0x555555bfb7f0 <sigsegv_stack+62928>, arg=0x555555bfb6c0 <sigsegv_stack+62624>) at sysdep.c:1943 fatal = false #5 <signal handler called> No locals. #6 0x00007ffff57d0327 in __GI_kill () at ../sysdeps/unix/syscall-template.S:120 No locals. #7 0x0000555555b5f0f9 in sigHandle () No symbol table info available. #8 <signal handler called> No locals. #9 0x00005555556ca07a in line_hash_code (f=0x7fff43aae670, row=0x555556059240) at dispnew.c:1196 c = 32 face_id = 0 glyph = 0x55556d380850 end = 0x55556d3820d0 hash = 0 #10 0x00005555556c83f2 in scrolling (frame=0x7fff43aae670) at dispnew.c:5827 unchanged_at_top = 0 unchanged_at_bottom = 45 window_size = 0 changed_lines = 0 i = 0 height = 45 free_at_end_vpos = 45 current_matrix = 0x55555632fe30 desired_matrix = 0x555555ccc520 old_hash = 0x7fffffff95d0 sa_avail = 15664 sa_count = { bytes = 192 } new_hash = 0x7fffffff9684 draw_cost = 0x7fffffff9738 old_draw_cost = 0x7fffffff97ec #11 0x00005555556b9749 in write_matrix (f=0x7fff43aae670, inhibit_id_p=false, updating_menu_p=false) at dispnew.c:5772 first_row = 0 last_row = 21845 #12 0x00005555556b906d in combine_updates_for_frame (f=0x7fff43aae670, inhibit_scrolling=false) at dispnew.c:4085 root = 0x7fff43aae670 z_order = { i = 0x7fff44c58d0b } topmost_child = 0x0 #13 0x00005555556ba424 in combine_updates (roots=...) at dispnew.c:4135 root = 0x7fff43aae670 #14 0x000055555570f6f6 in redisplay_internal () at xdisp.c:17807 tty_root_frames = { i = 0x7fff44c4d4cb } MAX_HSCROLL_RETRIES = MAX_HSCROLL_RETRIES MAX_GARBAGED_FRAME_RETRIES = MAX_GARBAGED_FRAME_RETRIES w = 0x7fff467b0748 sw = 0x7fff467b0748 fr = 0x7fff4399e000 must_finish = true match_p = true tlbufpos = { charpos = 6192, bytepos = 6197 } tlendpos = { charpos = 0, bytepos = 0 } number_of_visible_frames = 2 sf = 0x7fff4399e000 polling_stopped_here = true tail = { i = 0x0 } frame = { i = 0x7fff43aae675 } hscroll_retries = 0 garbaged_frame_retries = 0 consider_all_windows_p = true update_miniwindow_p = true count = { bytes = 96 } previous_frame = 0x7fff4399e000 current_matrices_cleared = false new_count = 32767 #15 0x00005555557179b9 in redisplay () at xdisp.c:16850 No locals. #16 0x000055555585d1d0 in read_char (commandflag=1, map=..., prev_event=..., used_mouse_menu=0x7fffffffd4df, end_time=0x0) at keyboard.c:2689 echo_current = true c = { i = 0x0 } local_getcjmp = {{ __jmpbuf = {55832, 0, 160, 55832, 93824999301240, 55832, 55832, 55832}, __mask_was_saved = 55832, __saved_mask = { __val = {55832, 140737488342704, 93824995580517, 0, 192, 140734347075432, 140734347075435, 160, 445, 118, 563, 6, 557, 2, 140734576048900, 1030} } }} save_jump = {{ __jmpbuf = {14323566176, 24, 140737488342304, 93824997369764, 59136, 12884901912, 140734347075432, 140734347075435}, __mask_was_saved = -12976, __saved_mask = { __val = {93824997369689, 140734347075432, 140734347075411, 55832, 140734347075435, 140737488342400, 93824996183549, 96, 140734347075411, 55832, 140734347075435, 140737488342704, 93824995566605, 0, 140734576049085, 56} } }} tem = { i = 0x7fffe8001a00 } save = { i = 0x7fff44c3df68 } previous_echo_area_message = { i = 0x0 } also_record = { i = 0x0 } reread = false recorded = false polling_stopped_here = false orig_kboard = 0x555556c4a1b0 jmpcount = { bytes = 1 } c_volatile = { i = 0x38 } #17 0x0000555555859b1a in read_key_sequence (keybuf=0x7fffffffd9f0, prompt=..., dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, prevent_redisplay=false, disable_text_conversion_p=false) at keyboard.c:11197 interrupted_kboard = 0x555556c4a1b0 interrupted_frame = 0x7fff4399e000 key = { i = 0x7d2 } used_mouse_menu = false echo_local_start = 0 last_real_key_start = 0 keys_local_start = 0 new_binding = { i = 0x0 } count = { bytes = 96 } t = 0 echo_start = 0 keys_start = 0 current_binding = { i = 0x7fff44c3df6b } first_unbound = 31 mock_input = 0 used_mouse_menu_history = {false <repeats 30 times>} fkey = { parent = { i = 0x7fff439da8ab }, map = { i = 0x7fff439da8ab }, start = 0, end = 0 } keytran = { parent = { i = 0x7fff4398eeab }, map = { i = 0x7fff4398eeab }, start = 0, end = 0 } indec = { parent = { i = 0x7fff439da893 }, map = { i = 0x7fff439da893 }, start = 0, end = 0 } shift_translated = false delayed_switch_frame = { i = 0x0 } original_uppercase = { i = 0x0 } original_uppercase_position = -1 starting_buffer = 0x7fff46678f50 fake_prefixed_keys = { i = 0x0 } first_event = { i = 0x0 } second_event = { i = 0x0 } #18 0x00005555558577a6 in command_loop_1 () at keyboard.c:1441 keybuf = {{ i = 0x82 }, { i = 0x555555958162 <builtin_lisp_symbol+34> }, { i = 0x56069dd0 }, { i = 0x0 }, { i = 0x7fffffffda90 }, { i = 0x555555958bd1 <unbind_to+305> }, { i = 0x0 }, { i = 0x0 }, { i = 0x555556069e30 }, { i = 0x0 }, { i = 0x0 }, { i = 0xc }, { i = 0x13e80 }, { i = 0x38 }, { i = 0x7fff46678f55 }, { i = 0x0 }, { i = 0x0 }, { i = 0x0 }, { i = 0x60 }, { i = 0x0 }, { i = 0x7fffffffdbf0 }, { i = 0x555555858ca3 <cmd_error+915> }, { i = 0x555556c4a1b0 }, { i = 0x555556c4a1b0 }, { i = 0x56069dd0 }, { i = 0x7fff44a6ed68 }, { i = 0x0 }, { i = 0x0 }, { i = 0x0 }, { i = 0x0 }} i = 1 last_pt = 6192 cmd = { i = 0x2aa9edeab5a8 } prev_modiff = 8343 prev_buffer = 0x7fff46678f50 #19 0x000055555595ebd1 in internal_condition_case (bfun=0x5555558571c0 <command_loop_1>, handlers=..., hfun=0x555555858910 <cmd_error>) at eval.c:1713 val = { i = 0x0 } c = 0x555555cc74b0 #20 0x0000555555857173 in command_loop_2 (handlers=...) at keyboard.c:1180 val = { i = 0x2 } #21 0x000055555595dc6f in internal_catch (tag=..., func=0x555555857150 <command_loop_2>, arg=...) at eval.c:1393 val = { i = 0xa8 } c = 0x555555cc7320 #22 0x000055555585638e in command_loop () at keyboard.c:1158 No locals. #23 0x0000555555856160 in recursive_edit_1 () at keyboard.c:766 count = { bytes = 32 } val = { i = 0x55555595e141 <record_unwind_protect+129> } #24 0x00005555558566af in Frecursive_edit () at keyboard.c:849 count = { bytes = 0 } buffer = { i = 0x0 } #25 0x00005555558529dc in main (argc=1, argv=0x7fffffffe248) at emacs.c:2651 stack_bottom_variable = 0x555555c7d560 old_argc = 1 dump_file = 0x0 no_loadup = false junk = 0x0 dname_arg = 0x0 ch_to_dir = 0x0 original_pwd = 0x0 dump_mode = 0x0 skip_args = 0 temacs = 0x0 attempt_load_pdump = true only_version = false rlim = { rlim_cur = 10022912, rlim_max = 18446744073709551615 } lc_all = 0x0 sockfd = -1 module_assertions = false Lisp Backtrace: "redisplay_internal (C function)" (0x0) In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.49, cairo version 1.18.4) of 2025-08-03 built on nano Repository revision: 92f52805f9e99068ff07148a3a76b1d97e77adbf Repository branch: feature/igc System Description: Void Linux Configured using: 'configure CC=clang 'CFLAGS=-O0 -g3' CPPFLAGS=-I/home/jm/opt/mps 'LDFLAGS=-L/home/jm/opt/mps -fuse-ld=lld' --enable-check=yes,glyphs --enable-check-lisp-object-type --with-mps --with-pgtk --without-native-compilation' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF LIBXML2 MODULES MPS NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3 ZLIB Important settings: value of $LC_COLLATE: C value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: bug-reference-prog-mode: t checkdoc-minor-mode: t outline-minor-mode: t whitespace-mode: t flyspell-mode: t midnight-mode: t kill-ring-deindent-mode: t global-paren-face-mode: t paren-face-mode: t global-kkp-mode: t desktop-save-mode: t cua-mode: t auto-insert-mode: t savehist-mode: t save-place-mode: t repeat-mode: t global-auto-revert-mode: t electric-pair-mode: t delete-selection-mode: t minibuffer-electric-default-mode: t global-completion-preview-mode: t completion-preview-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-quote-mode: t electric-indent-mode: t mouse-wheel-mode: t prettify-symbols-mode: t tab-bar-history-mode: t file-name-shadow-mode: t context-menu-mode: t global-font-lock-mode: t font-lock-mode: t minibuffer-regexp-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t auto-save-visited-mode: t abbrev-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail browse-url xdg url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mail-source utf7 nnoo parse-time iso8601 gnus-spec gnus-int gnus-range gnus-win emacsbug message mailcap yank-media puny rfc822 mml mml-sec epa derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums vc-git diff-mode track-changes files-x vc vc-dispatcher bug-reference checkdoc lisp-mnt thingatpt noutline outline disp-table whitespace flyspell ispell auth-source-pass url-parse url-vars auth-source cl-seq eieio eieio-core cl-macs password-cache json map server noco-theme unspecified-theme most-faces color time window-x dired-x dired dired-loaddefs help-at-pt cursor-sensor midnight indent-aux gnus nnheader gnus-util text-property-search time-date subr-x mail-utils range mm-util mail-prsvr paren-face kkp term/xterm xterm byte-opt gv bytecomp byte-compile compat desktop frameset cua-base autoinsert fennel-mode-autoloads gauge-autoloads gauge indent-bars-autoloads kkp-autoloads nanoid-autoloads paren-face-autoloads unspecified-theme-autoloads most-faces-autoloads xr-autoloads rx blase-theme cl-extra help-mode blase-defaults-theme savehist saveplace repeat autorevert filenotify elec-pair delsel easy-mmode blase-completion-theme minibuf-eldef completion-preview site-start cus-edit pp cus-start cus-load icons wid-edit cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win touch-screen pgtk-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 dynamic-setting system-font-setting font-render-setting cairo gtk pgtk lcms2 multi-tty move-toolbar make-network-process tty-child-frames mps emacs) Memory information: ((conses 24 0 0) (symbols 56 0 0) (strings 40 0 0) (string-bytes 1 0) (vectors 24 0) (vector-slots 8 0 0) (floats 24 0 0) (intervals 64 0 0) (buffers 1072 0))
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.