GNU bug report logs - #75710
31.0.50; feature/igc: crash report on Arch Linux, 2025-01-20

Previous Next

Package: emacs;

Reported by: Oliver Reiter <oliver.reiter <at> snapdragon.cc>

Date: Mon, 20 Jan 2025 23:33:02 UTC

Severity: normal

Found in version 31.0.50

Done: Pip Cet <pipcet <at> protonmail.com>

To reply to this bug, email your comments to 75710 AT debbugs.gnu.org.
There is no need to reopen the bug first.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#75710; Package emacs. (Mon, 20 Jan 2025 23:33:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Oliver Reiter <oliver.reiter <at> snapdragon.cc>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 20 Jan 2025 23:33:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
To: bug-gnu-emacs <at> gnu.org
Subject: 31.0.50; feature/igc: crash report on Arch Linux, 2025-01-20
Date: Mon, 20 Jan 2025 22:49:02 +0100
Dear all,

I opened emacs and started editing an .R file when I experienced this
crash:

Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=40) at /home/reitero/build/sources/emacs/emacs/src/emacs.c:432
432	{
(gdb) bt
#0  terminate_due_to_signal (sig=6, backtrace_limit=40) at /home/reitero/build/sources/emacs/emacs/src/emacs.c:432
#1  0x00005555556d3525 in emacs_abort () at /home/reitero/build/sources/emacs/emacs/src/sysdep.c:2390
#2  0x000055555579f3a1 in fix_lisp_obj (ss=ss <at> entry=0x7fffffffbce8, pobj=pobj <at> entry=0x7fffaa0c5168) at /home/reitero/build/sources/emacs/emacs/src/igc.c:1099
#3  0x000055555579fc1b in fix_cons (ss=ss <at> entry=0x7fffffffbce8, cons=cons <at> entry=0x7fffaa0c5158) at /home/reitero/build/sources/emacs/emacs/src/igc.c:1889
#4  0x00005555557a1a38 in dflt_scan_obj (ss=ss <at> entry=0x7fffffffbce8, base_start=base_start <at> entry=0x7fffaa0c5158, base_limit=base_limit <at> entry=0x7fffaa0c5170, closure=closure <at> entry=0x0)
    at /home/reitero/build/sources/emacs/emacs/src/igc.c:1996
#5  0x00005555557a1c2f in dflt_scanx (ss=ss <at> entry=0x7fffffffbce8, base_start=<optimized out>, base_limit=0x7fffaa0c5170, closure=closure <at> entry=0x0) at /home/reitero/build/sources/emacs/emacs/src/igc.c:2088
#6  0x00005555557a1c6b in dflt_scan (ss=0x7fffffffbce8, base_start=<optimized out>, base_limit=<optimized out>) at /home/reitero/build/sources/emacs/emacs/src/igc.c:2099
#7  0x0000555555835165 in amcSegScan ()
#8  0x0000555555864340 in traceScanSegRes ()
#9  0x000055555586452a in traceScanSeg ()
#10 0x0000555555865386 in TraceAdvance ()
#11 0x0000555555865b4d in TracePoll ()
#12 0x0000555555865db9 in ArenaPoll ()
#13 0x00005555558661a3 in mps_ap_fill ()
#14 0x00005555557a0cd7 in alloc_impl (size=size <at> entry=24, type=type <at> entry=IGC_OBJ_CONS, ap=0x7fffe8001980) at /home/reitero/build/sources/emacs/emacs/src/igc.c:3976
#15 0x00005555557a0dc6 in alloc (size=size <at> entry=24, type=type <at> entry=IGC_OBJ_CONS) at /home/reitero/build/sources/emacs/emacs/src/igc.c:4004
#16 0x00005555557a0de7 in igc_make_cons (car=0x2aaa69da0e30, cdr=0x7fffa992e6bb) at /home/reitero/build/sources/emacs/emacs/src/igc.c:4033
#17 0x000055555570df6c in Fcons (car=<optimized out>, cdr=<optimized out>) at /home/reitero/build/sources/emacs/emacs/src/alloc.c:2870
#18 0x000055555572f7a3 in funcall_subr (subr=subr <at> entry=0x7fffbeac8998, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffc208) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3183
#19 0x000055555572dfcb in funcall_general (fun=0x7fffbeac899d, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffc208) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#20 0x000055555572e0e3 in Ffuncall (nargs=2, args=0x7fffffffc200) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#21 0x00005555557346b3 in mapcar1 (leni=leni <at> entry=15, vals=vals <at> entry=0x7fffffffc260, fn=fn <at> entry=0x7fffbeac899d, seq=seq <at> entry=0x7fffb5c82e4b) at /home/reitero/build/sources/emacs/emacs/src/fns.c:3391
#22 0x0000555555738493 in Fmapcar (function=0x7fffbeac899d, sequence=0x7fffb5c82e4b) at /home/reitero/build/sources/emacs/emacs/src/fns.c:3511
#23 0x00007fffc7f84458 in F6576696c2d6d6f64652d666f722d6b65796d6170_evil_mode_for_keymap_0 () from /home/reitero/.config/emacs/.local.igc/cache/eln/31.0.50-d8b03b85/evil-core-b0b3fed6-7d34b371.eln
#24 0x000055555572f7b7 in funcall_subr (subr=subr <at> entry=0x7fffaea82480, numargs=numargs <at> entry=2, args=args <at> entry=0x7fffffffc4f8) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3185
#25 0x000055555572dfcb in funcall_general (fun=0x7fffaea82485, numargs=numargs <at> entry=2, args=args <at> entry=0x7fffffffc4f8) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#26 0x000055555572e0e3 in Ffuncall (nargs=3, args=0x7fffffffc4f0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#27 0x00007fffc7f84794 in F6576696c2d73746174652d617578696c696172792d6b65796d617073_evil_state_auxiliary_keymaps_0 ()
   from /home/reitero/.config/emacs/.local.igc/cache/eln/31.0.50-d8b03b85/evil-core-b0b3fed6-7d34b371.eln
#28 0x000055555572f7a3 in funcall_subr (subr=subr <at> entry=0x7fffaea821d8, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffc6d8) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3183
#29 0x000055555572dfcb in funcall_general (fun=0x7fffaea821dd, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffc6d8) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#30 0x000055555572e0e3 in Ffuncall (nargs=2, args=0x7fffffffc6d0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#31 0x00007fffc7f83812 in F6576696c2d73746174652d6b65796d617073_evil_state_keymaps_0 () from /home/reitero/.config/emacs/.local.igc/cache/eln/31.0.50-d8b03b85/evil-core-b0b3fed6-7d34b371.eln
#32 0x000055555572f8a2 in funcall_subr (subr=subr <at> entry=0x7fffaea82590, numargs=numargs <at> entry=2, args=args <at> entry=0x7fffffffcbb8) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3206
#33 0x000055555572dfcb in funcall_general (fun=0x7fffaea82595, numargs=numargs <at> entry=2, args=args <at> entry=0x7fffffffcbb8) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#34 0x000055555572e0e3 in Ffuncall (nargs=nargs <at> entry=3, args=args <at> entry=0x7fffffffcbb0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#35 0x000055555572fc7b in Fapply (nargs=3, args=0x7fffffffcbb0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:2744
#36 0x00007fffc7f83b10 in F6576696c2d73746174652d6b65796d617073_evil_state_keymaps_0 () from /home/reitero/.config/emacs/.local.igc/cache/eln/31.0.50-d8b03b85/evil-core-b0b3fed6-7d34b371.eln
#37 0x000055555572f8a2 in funcall_subr (subr=subr <at> entry=0x7fffaea82590, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffcdd8) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3206
#38 0x000055555572dfcb in funcall_general (fun=0x7fffaea82595, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffcdd8) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#39 0x000055555572e0e3 in Ffuncall (nargs=2, args=0x7fffffffcdd0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#40 0x00007fffc7f83ddf in F6576696c2d6e6f726d616c697a652d6b65796d617073_evil_normalize_keymaps_0 () from /home/reitero/.config/emacs/.local.igc/cache/eln/31.0.50-d8b03b85/evil-core-b0b3fed6-7d34b371.eln
#41 0x000055555572f7a3 in funcall_subr (subr=subr <at> entry=0x7fffaea82e80, numargs=numargs <at> entry=0, args=args <at> entry=0x7fffffffd018) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3183
#42 0x000055555572dfcb in funcall_general (fun=0x7fffaea82e85, numargs=numargs <at> entry=0, args=args <at> entry=0x7fffffffd018) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#43 0x000055555572e0e3 in Ffuncall (nargs=1, args=0x7fffffffd010) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#44 0x00007fffc7f5e898 in F6576696c2d6e6f726d616c2d7374617465_evil_normal_state_0 () from /home/reitero/.config/emacs/.local.igc/cache/eln/31.0.50-d8b03b85/evil-states-2dd1009e-c78caef2.eln
#45 0x000055555572f7a3 in funcall_subr (subr=subr <at> entry=0x7fffaea6a948, numargs=numargs <at> entry=0, args=args <at> entry=0x7fffffffd4f0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3183
#46 0x000055555572dfcb in funcall_general (fun=0x7fffaea6a94d, numargs=numargs <at> entry=0, args=args <at> entry=0x7fffffffd4f0) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#47 0x000055555572e0e3 in Ffuncall (nargs=1, args=0x7fffffffd4e8) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#48 0x0000555555728f38 in Ffuncall_interactively (nargs=1, args=0x7fffffffd4e8) at /home/reitero/build/sources/emacs/emacs/src/callint.c:250
#49 0x000055555572f8a2 in funcall_subr (subr=subr <at> entry=0x555555e195a0 <Sfuncall_interactively>, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffd4e8) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3206
#50 0x000055555572dfcb in funcall_general (fun=0x555555e195a5 <Sfuncall_interactively+5>, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffd4e8) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#51 0x000055555572e0e3 in Ffuncall (nargs=nargs <at> entry=2, args=args <at> entry=0x7fffffffd4e0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#52 0x000055555572fc5d in Fapply (nargs=3, args=0x7fffffffd4e0) at /home/reitero/build/sources/emacs/emacs/src/eval.c:2740
#53 0x00005555557292e2 in Fcall_interactively (function=0x2aaa68ca21b8, record_flag=0x0, keys=0x7fffa96e231d) at /home/reitero/build/sources/emacs/emacs/src/callint.c:342
#54 0x00007fffe0000925 in F636f6d6d616e642d65786563757465_command_execute_0 () from /home/reitero/build/sources/emacs/emacs/src/../native-lisp/31.0.50-d8b03b85/preloaded/simple-fab5b0cf-eda3ce07.eln
#55 0x000055555572f7eb in funcall_subr (subr=subr <at> entry=0x7fffeb814a38, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffd758) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3189
#56 0x000055555572dfcb in funcall_general (fun=0x7fffeb814a3d, numargs=numargs <at> entry=1, args=args <at> entry=0x7fffffffd758) at /home/reitero/build/sources/emacs/emacs/src/lisp.h:2335
#57 0x000055555572e0e3 in Ffuncall (nargs=2, args=0x7fffffffd750) at /home/reitero/build/sources/emacs/emacs/src/eval.c:3115
#58 0x00005555556b7ce2 in command_loop_1 () at /home/reitero/build/sources/emacs/emacs/src/keyboard.c:1556
#59 0x000055555572c919 in internal_condition_case (bfun=0x5555556b77e1 <command_loop_1>, handlers=<optimized out>, hfun=0x5555556b486c <cmd_error>) at /home/reitero/build/sources/emacs/emacs/src/eval.c:1627
#60 0x00005555556b4a97 in command_loop_2 (handlers=handlers <at> entry=0xa8) at /home/reitero/build/sources/emacs/emacs/src/keyboard.c:1174
#61 0x000055555572c857 in internal_catch (tag=<optimized out>, func=0x5555556b4a75 <command_loop_2>, arg=0xa8) at /home/reitero/build/sources/emacs/emacs/src/eval.c:1306
#62 0x00005555556b5c77 in command_loop () at /home/reitero/build/sources/emacs/emacs/src/keyboard.c:1152
#63 0x00005555556b5d0e in recursive_edit_1 () at /home/reitero/build/sources/emacs/emacs/src/keyboard.c:760
#64 0x00005555556b5eac in Frecursive_edit () at /home/reitero/build/sources/emacs/emacs/src/keyboard.c:843
#65 0x00005555556b7316 in main (argc=<optimized out>, argv=0x7fffffffdb68) at /home/reitero/build/sources/emacs/emacs/src/emacs.c:2658

Lisp Backtrace:
0xbeac8998 PVEC_SUBR
"evil-mode-for-keymap" (0xffffc4f8)
"evil-state-auxiliary-keymaps" (0xffffc6d8)
"evil-state-keymaps" (0xffffcbb8)
"evil-state-keymaps" (0xffffcdd8)
"evil-normalize-keymaps" (0xffffd018)
"evil-normal-state" (0xffffd4f0)
"funcall-interactively" (0xffffd4e8)
"command-execute" (0xffffd758)

In GNU Emacs 31.0.50 (build 4, x86_64-pc-linux-gnu, GTK+ Version
 3.24.43, cairo version 1.18.2) of 2025-01-20 built on wilap
Repository revision: 35437854166f8d0c1deceb7aba50f27cc838b490
Repository branch: feature/igc
System Description: Arch Linux

Configured using:
 'configure 'CFLAGS=-g3 -ggdb -Og -fno-omit-frame-pointer'
 CPPFLAGS=-I/home/reitero/.local/lib/mps
 LDFLAGS=-L/home/reitero/.local/lib/mps --prefix=/usr --sysconfdir=/etc
 --libexecdir=/usr/lib --localstatedir=/var --with-mps=yes
 --with-gameuser=root:games --with-pgtk --with-xft --with-harfbuzz
 --with-modules --without-compress-install --without-m17n-flt
 --with-libotf --without-imagemagick --without-gsettings --without-gconf
 --with-native-compilation=aot --with-tree-sitter
 --enable-link-time-optimization'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM HARFBUZZ JPEG LCMS2
LIBOTF LIBSYSTEMD LIBXML2 MODULES MPS NATIVE_COMP NOTIFY INOTIFY PDUMPER
PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP XIM GTK3 ZLIB

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




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75710; Package emacs. (Wed, 22 Jan 2025 10:36:01 GMT) Full text and rfc822 format available.

Message #8 received at 75710 <at> debbugs.gnu.org (full text, mbox):

From: Pip Cet <pipcet <at> protonmail.com>
To: 75710 <at> debbugs.gnu.org
Cc: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
Subject: Re: bug#75710: 31.0.50;
 feature/igc: crash report on Arch Linux, 2025-01-20
Date: Wed, 22 Jan 2025 10:35:09 +0000
"Oliver Reiter via \"Bug reports for GNU Emacs, the Swiss army knife of text editors\"" <bug-gnu-emacs <at> gnu.org> writes:

> Dear all,
>
> I opened emacs and started editing an .R file when I experienced this
> crash:

Thanks for the report!  While we would like to investigate this further
if you can access the GDB data, there is a possible, but unlikely,
explanation in bug#75754.

Can you confirm whether you have access to the GDB session?  I would
recommend generating a coredump file using "gcore" and saving it along
with the emacs executable and emacs.pdmp file so we can investigate this
further.

The reason I consider the explanation unlikely is that the styled_format
bug would most likely result in strings being moved by the GC, but this
crash happened while scanning a cons cell.  It's still possible: we'll
have to investigate whether the elisp you ran might have been a heavy
user of styled_format.

Can you please let me know which commit is in use by this build?

Thanks!

Pip





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75710; Package emacs. (Wed, 22 Jan 2025 11:50:02 GMT) Full text and rfc822 format available.

Message #11 received at 75710 <at> debbugs.gnu.org (full text, mbox):

From: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
To: Pip Cet <pipcet <at> protonmail.com>
Cc: 75710 <at> debbugs.gnu.org
Subject: Re: bug#75710: 31.0.50; feature/igc: crash report on Arch Linux,
 2025-01-20
Date: Wed, 22 Jan 2025 12:49:11 +0100
[Message part 1 (text/plain, inline)]
Pip Cet <pipcet <at> protonmail.com> writes:

> "Oliver Reiter via \"Bug reports for GNU Emacs, the Swiss army knife of text editors\"" <bug-gnu-emacs <at> gnu.org> writes:
>
>> Dear all,
>>
>> I opened emacs and started editing an .R file when I experienced this
>> crash:
>
> Thanks for the report!  While we would like to investigate this further
> if you can access the GDB data, there is a possible, but unlikely,
> explanation in bug#75754.
>
> Can you confirm whether you have access to the GDB session?  I would
> recommend generating a coredump file using "gcore" and saving it along
> with the emacs executable and emacs.pdmp file so we can investigate this
> further.

I do have the coredump and haven't rebuild emacs yet.

> The reason I consider the explanation unlikely is that the styled_format
> bug would most likely result in strings being moved by the GC, but this
> crash happened while scanning a cons cell.  It's still possible: we'll
> have to investigate whether the elisp you ran might have been a heavy
> user of styled_format.
>
> Can you please let me know which commit is in use by this build?

Its

commit 35437854166f8d0c1deceb7aba50f27cc838b490 (HEAD -> feature/igc, origin/feature/igc)
Author: Stefan Kangas <stefankangas <at> gmail.com>
Date:   Mon Jan 20 03:33:29 2025 +0100

Avoid case_Lisp_Int macro in igc.c

>
> Thanks!
>
> Pip

Happy to help,

Oliver

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75710; Package emacs. (Wed, 22 Jan 2025 12:57:01 GMT) Full text and rfc822 format available.

Message #14 received at 75710 <at> debbugs.gnu.org (full text, mbox):

From: Pip Cet <pipcet <at> protonmail.com>
To: 75710 <at> debbugs.gnu.org
Cc: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
Subject: Re: bug#75710: 31.0.50;
 feature/igc: crash report on Arch Linux, 2025-01-20
Date: Wed, 22 Jan 2025 12:56:31 +0000
"Oliver Reiter via \"Bug reports for GNU Emacs, the Swiss army knife of text editors\"" <bug-gnu-emacs <at> gnu.org> writes:

> Dear all,
>
> I opened emacs and started editing an .R file when I experienced this
> crash:

Responding to this again now I've had time to look at the backtrace:

> Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=40) at /home/reitero/build/sources/emacs/emacs/src/emacs.c:432
> 432	{
> (gdb) bt
> #0  terminate_due_to_signal (sig=6, backtrace_limit=40) at /home/reitero/build/sources/emacs/emacs/src/emacs.c:432
> #1  0x00005555556d3525 in emacs_abort () at /home/reitero/build/sources/emacs/emacs/src/sysdep.c:2390
> #2  0x000055555579f3a1 in fix_lisp_obj (ss=ss <at> entry=0x7fffffffbce8, pobj=pobj <at> entry=0x7fffaa0c5168) at /home/reitero/build/sources/emacs/emacs/src/igc.c:1099
> #3  0x000055555579fc1b in fix_cons (ss=ss <at> entry=0x7fffffffbce8, cons=cons <at> entry=0x7fffaa0c5158) at /home/reitero/build/sources/emacs/emacs/src/igc.c:1889
> #4  0x00005555557a1a38 in dflt_scan_obj (ss=ss <at> entry=0x7fffffffbce8, base_start=base_start <at> entry=0x7fffaa0c5158, base_limit=base_limit <at> entry=0x7fffaa0c5170, closure=closure <at> entry=0x0)
>     at /home/reitero/build/sources/emacs/emacs/src/igc.c:1996
> #5  0x00005555557a1c2f in dflt_scanx (ss=ss <at> entry=0x7fffffffbce8, base_start=<optimized out>, base_limit=0x7fffaa0c5170, closure=closure <at> entry=0x0) at /home/reitero/build/sources/emacs/emacs/src/igc.c:2088
> #6  0x00005555557a1c6b in dflt_scan (ss=0x7fffffffbce8, base_start=<optimized out>, base_limit=<optimized out>) at /home/reitero/build/sources/emacs/emacs/src/igc.c:2099

I originally thought this indicated that a cons cell must have
moved.  Upon reflection, that's not necessarily likely: we scanned a
cons whose cdr contained nonsensical data that should never have been in
a cons cell; so something overwrote what MPS thought of a cons cell, and
probably some memory before and after it, and we might have been in a
middle of a segment and the previous object scanned by pure luck (or the
corruption might have started at the header word).

> Lisp Backtrace:
> 0xbeac8998 PVEC_SUBR
> "evil-mode-for-keymap" (0xffffc4f8)
> "evil-state-auxiliary-keymaps" (0xffffc6d8)
> "evil-state-keymaps" (0xffffcbb8)
> "evil-state-keymaps" (0xffffcdd8)
> "evil-normalize-keymaps" (0xffffd018)
> "evil-normal-state" (0xffffd4f0)
> "funcall-interactively" (0xffffd4e8)
> "command-execute" (0xffffd758)

I looked at evil-mode (hopefully, what I'm about to say applies to the
precise version you're running, too): it appears to use Fformat quite a
bit: I loaded and started it, and it was called 845 times in that Emacs
session.  Many of the calls had more than 2 arguments, which is, I
believe, most likely required for the bug to be realistic.

While unsatisfying, my very preliminary conclusion is that there is a
significant chance that this is bug#75754.  My plan is to fix this bug
unconditionally (without #ifdef HAVE_MPS) on feature/igc because I
believe the bug is present, albeit much less likely, on master, and the
ultimate fix for bug#75754 is likely to be both very different and take
some time.

Objections to this?

> In GNU Emacs 31.0.50 (build 4, x86_64-pc-linux-gnu, GTK+ Version
>  3.24.43, cairo version 1.18.2) of 2025-01-20 built on wilap
> Repository revision: 35437854166f8d0c1deceb7aba50f27cc838b490
> Repository branch: feature/igc
> System Description: Arch Linux
>
> Configured using:
>  'configure 'CFLAGS=-g3 -ggdb -Og -fno-omit-frame-pointer'
                                ^^^

I confess I rarely build with -Og: I'm in the -O0 team, or -Os just to
see some different compiler warnings once in a while.  Thanks for
testing with this flag; it might mean you see bugs others don't.

In particular, stack marking with -O0 behaves in a more obvious fashion
than in optimized builds; while the intention of -Og is to keep
variables in the right location for debugging, I don't know how good GCC
is at doing that in practice.

Pip





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75710; Package emacs. (Wed, 22 Jan 2025 13:13:02 GMT) Full text and rfc822 format available.

Message #17 received at 75710 <at> debbugs.gnu.org (full text, mbox):

From: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
To: Pip Cet <pipcet <at> protonmail.com>
Cc: 75710 <at> debbugs.gnu.org
Subject: Re: bug#75710: 31.0.50; feature/igc: crash report on Arch Linux,
 2025-01-20
Date: Wed, 22 Jan 2025 14:12:02 +0100
[Message part 1 (text/plain, inline)]
Pip Cet <pipcet <at> protonmail.com> writes:

> While unsatisfying, my very preliminary conclusion is that there is a
> significant chance that this is bug#75754.  My plan is to fix this bug
> unconditionally (without #ifdef HAVE_MPS) on feature/igc because I
> believe the bug is present, albeit much less likely, on master, and the
> ultimate fix for bug#75754 is likely to be both very different and take
> some time.
>
> Objections to this?

If you are asking me: no objections.

>> In GNU Emacs 31.0.50 (build 4, x86_64-pc-linux-gnu, GTK+ Version
>>  3.24.43, cairo version 1.18.2) of 2025-01-20 built on wilap
>> Repository revision: 35437854166f8d0c1deceb7aba50f27cc838b490
>> Repository branch: feature/igc
>> System Description: Arch Linux
>>
>> Configured using:
>>  'configure 'CFLAGS=-g3 -ggdb -Og -fno-omit-frame-pointer'
>                                 ^^^
>
> I confess I rarely build with -Og: I'm in the -O0 team, or -Os just to
> see some different compiler warnings once in a while.  Thanks for
> testing with this flag; it might mean you see bugs others don't.
>
> In particular, stack marking with -O0 behaves in a more obvious fashion
> than in optimized builds; while the intention of -Og is to keep
> variables in the right location for debugging, I don't know how good GCC
> is at doing that in practice.

Thanks for the insight, I'll build with -O0 next time.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75710; Package emacs. (Wed, 22 Jan 2025 21:11:02 GMT) Full text and rfc822 format available.

Message #20 received at 75710 <at> debbugs.gnu.org (full text, mbox):

From: Pip Cet <pipcet <at> protonmail.com>
To: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
Cc: 75710 <at> debbugs.gnu.org
Subject: Re: bug#75710: 31.0.50;
 feature/igc: crash report on Arch Linux, 2025-01-20
Date: Wed, 22 Jan 2025 21:09:58 +0000
"Oliver Reiter" <oliver.reiter <at> snapdragon.cc> writes:

> Pip Cet <pipcet <at> protonmail.com> writes:
>
>> While unsatisfying, my very preliminary conclusion is that there is a
>> significant chance that this is bug#75754.  My plan is to fix this bug
>> unconditionally (without #ifdef HAVE_MPS) on feature/igc because I
>> believe the bug is present, albeit much less likely, on master, and the
>> ultimate fix for bug#75754 is likely to be both very different and take
>> some time.
>>
>> Objections to this?
>
> If you are asking me: no objections.

A preliminary workaround for bug#75754 has been installed on
feature/igc, erring on the side of protecting too many objects rather
than too few of them.

I would ask you to please try the current branch, and to report any
further crashes you may see as a new bug; I may be wrong about all your
crashes being due to this bug, but maybe I'm right about one of them :-)

Thanks for the reports, again!

If you don't see a crash, can you let us know (without a new bug,
ideally) in a few days, and then we can mark these as probably closed?

Thanks!

>>> In GNU Emacs 31.0.50 (build 4, x86_64-pc-linux-gnu, GTK+ Version
>>>  3.24.43, cairo version 1.18.2) of 2025-01-20 built on wilap
>>> Repository revision: 35437854166f8d0c1deceb7aba50f27cc838b490
>>> Repository branch: feature/igc
>>> System Description: Arch Linux
>>>
>>> Configured using:
>>>  'configure 'CFLAGS=-g3 -ggdb -Og -fno-omit-frame-pointer'
>>                                 ^^^
>>
>> I confess I rarely build with -Og: I'm in the -O0 team, or -Os just to
>> see some different compiler warnings once in a while.  Thanks for
>> testing with this flag; it might mean you see bugs others don't.
>>
>> In particular, stack marking with -O0 behaves in a more obvious fashion
>> than in optimized builds; while the intention of -Og is to keep
>> variables in the right location for debugging, I don't know how good GCC
>> is at doing that in practice.
>
> Thanks for the insight, I'll build with -O0 next time.

I wasn't trying to get you to do that.  Not going to stop you either, of
course.  All options need to be tested; we just need to find the right
balance between expanding our tests to find all possible crashes and
gathering data on the stability and usability of IGC by running a few
common builds and hoping they don't crash all the time.

Pip





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#75710; Package emacs. (Wed, 22 Jan 2025 21:34:01 GMT) Full text and rfc822 format available.

Message #23 received at 75710 <at> debbugs.gnu.org (full text, mbox):

From: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
To: Pip Cet <pipcet <at> protonmail.com>
Cc: 75710 <at> debbugs.gnu.org
Subject: Re: bug#75710: 31.0.50; feature/igc: crash report on Arch Linux,
 2025-01-20
Date: Wed, 22 Jan 2025 22:32:52 +0100
[Message part 1 (text/plain, inline)]
Pip Cet <pipcet <at> protonmail.com> writes:

> "Oliver Reiter" <oliver.reiter <at> snapdragon.cc> writes:
>
>> Pip Cet <pipcet <at> protonmail.com> writes:
>>
>>> While unsatisfying, my very preliminary conclusion is that there is a
>>> significant chance that this is bug#75754.  My plan is to fix this bug
>>> unconditionally (without #ifdef HAVE_MPS) on feature/igc because I
>>> believe the bug is present, albeit much less likely, on master, and the
>>> ultimate fix for bug#75754 is likely to be both very different and take
>>> some time.
>>>
>>> Objections to this?
>>
>> If you are asking me: no objections.
>
> A preliminary workaround for bug#75754 has been installed on
> feature/igc, erring on the side of protecting too many objects rather
> than too few of them.
>
> I would ask you to please try the current branch, and to report any
> further crashes you may see as a new bug; I may be wrong about all your
> crashes being due to this bug, but maybe I'm right about one of them :-)
>
> Thanks for the reports, again!
>
> If you don't see a crash, can you let us know (without a new bug,
> ideally) in a few days, and then we can mark these as probably closed?
>
> Thanks!

Will do, and thank you!

>>>> In GNU Emacs 31.0.50 (build 4, x86_64-pc-linux-gnu, GTK+ Version
>>>>  3.24.43, cairo version 1.18.2) of 2025-01-20 built on wilap
>>>> Repository revision: 35437854166f8d0c1deceb7aba50f27cc838b490
>>>> Repository branch: feature/igc
>>>> System Description: Arch Linux
>>>>
>>>> Configured using:
>>>>  'configure 'CFLAGS=-g3 -ggdb -Og -fno-omit-frame-pointer'
>>>                                 ^^^
>>>
>>> I confess I rarely build with -Og: I'm in the -O0 team, or -Os just to
>>> see some different compiler warnings once in a while.  Thanks for
>>> testing with this flag; it might mean you see bugs others don't.
>>>
>>> In particular, stack marking with -O0 behaves in a more obvious fashion
>>> than in optimized builds; while the intention of -Og is to keep
>>> variables in the right location for debugging, I don't know how good GCC
>>> is at doing that in practice.
>>
>> Thanks for the insight, I'll build with -O0 next time.
>
> I wasn't trying to get you to do that.  Not going to stop you either, of
> course.  All options need to be tested; we just need to find the right
> balance between expanding our tests to find all possible crashes and
> gathering data on the stability and usability of IGC by running a few
> common builds and hoping they don't crash all the time.
>
> Pip

Reply sent to Pip Cet <pipcet <at> protonmail.com>:
You have taken responsibility. (Sat, 01 Feb 2025 23:26:02 GMT) Full text and rfc822 format available.

Notification sent to Oliver Reiter <oliver.reiter <at> snapdragon.cc>:
bug acknowledged by developer. (Sat, 01 Feb 2025 23:26:02 GMT) Full text and rfc822 format available.

Message #28 received at 75710-done <at> debbugs.gnu.org (full text, mbox):

From: Pip Cet <pipcet <at> protonmail.com>
To: Oliver Reiter <oliver.reiter <at> snapdragon.cc>
Cc: 75710-done <at> debbugs.gnu.org
Subject: Re: bug#75710: 31.0.50;
 feature/igc: crash report on Arch Linux, 2025-01-20
Date: Sat, 01 Feb 2025 23:24:58 +0000
"Oliver Reiter" <oliver.reiter <at> snapdragon.cc> writes:

> Pip Cet <pipcet <at> protonmail.com> writes:
>
>> "Oliver Reiter" <oliver.reiter <at> snapdragon.cc> writes:

>> If you don't see a crash, can you let us know (without a new bug,
>> ideally) in a few days, and then we can mark these as probably closed?
>>
>> Thanks!
>
> Will do, and thank you!

I'm closing this bug as likely caused by the styled_format thing which
has been fixed on feature/igc (but, I note, not yet on master), and thus
fixed.

If it reappears or needs to be reopened, please do so.

Thanks for the report and the testing!

Pip





This bug report was last modified today.

Previous Next


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