unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Jonathan Mitchell <mitchell.jkyle@gmail.com>
Cc: 56527@debbugs.gnu.org
Subject: bug#56527: 28.1; Crash on macOS with magit
Date: Thu, 14 Jul 2022 08:20:01 +0300	[thread overview]
Message-ID: <83edyouv7i.fsf@gnu.org> (raw)
In-Reply-To: <CAAnK0TYDO6ZkrVyqdS+959urvHoOjrZQzP_8mirKKj-M6BCuQA@mail.gmail.com> (message from Jonathan Mitchell on Wed, 13 Jul 2022 17:16:21 -0500)

> From: Jonathan Mitchell <mitchell.jkyle@gmail.com>
> Date: Wed, 13 Jul 2022 17:16:21 -0500
> Cc: 56527@debbugs.gnu.org
> 
> I built a debug version of emacs-28 with this configuration:
> `configure --enable-checking=all --enable-check-lisp-object-type
>  'CFLAGS=-O0 -g3' --without-png --without-rsvg`.
> 
> I was in magit repeatedly pressing the "l" key (bound to magit-log in
> magit-log-mode-map) when it crashed this time. The LLDB trace is
> below.
> 
> (lldb) target create "./emacs"
> Current executable set to '/Users/kyle/emacs/src/emacs' (arm64).
> (lldb) run
> Process 77095 launched: '/Users/kyle/emacs/src/emacs' (arm64)
> 
> alloc.c:3139: Emacs fatal error: assertion failed: ! PSEUDOVEC_STRUCT
> (vector, Lisp_Marker)->buffer
> Process 77095 stopped
> * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
>     frame #0: 0x00000001bdae6d98 libsystem_kernel.dylib`__pthread_kill + 8
> libsystem_kernel.dylib`__pthread_kill:
> ->  0x1bdae6d98 <+8>:  b.lo   0x1bdae6db8               ; <+40>
>     0x1bdae6d9c <+12>: pacibsp
>     0x1bdae6da0 <+16>: stp    x29, x30, [sp, #-0x10]!
>     0x1bdae6da4 <+20>: mov    x29, sp
> Target 0: (emacs) stopped.
> (lldb) xbacktrace
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (unsigned char *) data = <parent failed to evaluate: parent failed to
> evaluate: parent is NULL>
> (lldb) bt
> * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
>   * frame #0: 0x00000001bdae6d98 libsystem_kernel.dylib`__pthread_kill + 8
>     frame #1: 0x00000001bdb1bee0 libsystem_pthread.dylib`pthread_kill + 288
>     frame #2: 0x00000001bda1e680 libsystem_c.dylib`raise + 32
>     frame #3: 0x0000000100478d70 emacs`terminate_due_to_signal(sig=6,
> backtrace_limit=40) at emacs.c:437:3
>     frame #4: 0x00000001004791f4 emacs`emacs_abort at sysdep.c:2282:3
>     frame #5: 0x0000000100405488 emacs`ns_term_shutdown(sig=6) at
> nsterm.m:5367:7
>     frame #6: 0x00000001001a0788 emacs`shut_down_emacs(sig=6, stuff=->
> ) at emacs.c:2796:3
>     frame #7: 0x0000000100478cf8 emacs`terminate_due_to_signal(sig=6,
> backtrace_limit=2147483647) at emacs.c:420:11
>     frame #8: 0x00000001004796b8 emacs`die(msg="! PSEUDOVEC_STRUCT
> (vector, Lisp_Marker)->buffer", file="alloc.c", line=3139) at
> alloc.c:7481:3
>     frame #9: 0x0000000100289520
> emacs`cleanup_vector(vector=0x0000000102931240) at alloc.c:3139:7
>     frame #10: 0x0000000100288c50 emacs`sweep_vectors at alloc.c:3218:5
>     frame #11: 0x0000000100281278 emacs`gc_sweep at alloc.c:7245:3
>     frame #12: 0x000000010027f8c8 emacs`garbage_collect at alloc.c:6178:3
>     frame #13: 0x000000010027f170 emacs`maybe_garbage_collect at alloc.c:6045:5
>     frame #14: 0x00000001002d5c9c emacs`maybe_gc at lisp.h:5142:5

This is not a crash, it's an abort inside GC, so it seems like a
different problem.  Of course, it could be that this abort in a debug
build caught the reason for the crash in your original build.

Anyway, the next step is to establish what is this bad object that
causes the abort:

>     frame #8: 0x00000001004796b8 emacs`die(msg="! PSEUDOVEC_STRUCT
> (vector, Lisp_Marker)->buffer", file="alloc.c", line=3139) at
> alloc.c:7481:3
>     frame #9: 0x0000000100289520
> emacs`cleanup_vector(vector=0x0000000102931240) at alloc.c:3139:7

That 'vector' -- what is it and where did it come from?  Can you
examine its components and show their contents?

Thanks.





  reply	other threads:[~2022-07-14  5:20 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-12 23:27 bug#56527: 28.1; Crash on macOS with magit Jonathan Mitchell
2022-07-13 11:24 ` Eli Zaretskii
2022-07-13 22:16   ` Jonathan Mitchell
2022-07-14  5:20     ` Eli Zaretskii [this message]
2022-07-14  6:11       ` Jonathan Mitchell
2022-07-14  7:11         ` Eli Zaretskii
2022-07-14 15:21           ` Jonathan Mitchell
2022-07-14 16:12             ` Eli Zaretskii
2022-07-14 16:18               ` Jonathan Mitchell
2022-07-14 16:51                 ` Eli Zaretskii
2022-07-14 18:42                   ` Jonathan Mitchell
2022-07-14 19:09                     ` Eli Zaretskii
2022-07-16  8:13                       ` Gerd Möllmann
2022-07-16  8:30                         ` Eli Zaretskii
2022-07-17 15:41                           ` Jonathan Mitchell
2022-07-17 16:03                             ` Eli Zaretskii
2022-07-17 17:19                               ` Jonathan Mitchell
2022-07-17 17:41                                 ` Eli Zaretskii
2022-07-17 17:36                             ` Gerd Möllmann
2022-07-17 18:20                               ` Eli Zaretskii
2022-07-17 20:25                                 ` Alan Third
2022-07-18 12:34                                   ` Eli Zaretskii
2022-07-19 10:44                                     ` Lars Ingebrigtsen
2022-07-19 13:05                                       ` Eli Zaretskii
2022-07-19 19:12                                         ` Jonathan Mitchell
2022-07-19 19:14                                           ` Eli Zaretskii
2022-08-19 12:08                                             ` Lars Ingebrigtsen

Reply instructions:

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

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

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

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

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

  git send-email \
    --in-reply-to=83edyouv7i.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=56527@debbugs.gnu.org \
    --cc=mitchell.jkyle@gmail.com \
    /path/to/YOUR_REPLY

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

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

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

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