From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Andrii Kolomoiets Newsgroups: gmane.emacs.bugs Subject: bug#38748: 28.0.50; crash on MacOS 10.15.2 Date: Thu, 09 Jan 2020 15:51:24 +0200 Message-ID: References: <20191226130420.GB71460@breton.holly.idiocy.org> <83fth7qa3a.fsf@gnu.org> <83blrtq2j0.fsf@gnu.org> <83sgl3lyii.fsf@gnu.org> <834kxej6lc.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="106085"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (darwin) Cc: jguenther@gmail.com, rpluim@gmail.com, alan@idiocy.org, pipcet@gmail.com, 38748@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jan 09 14:52:54 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1ipYEW-0005Gn-0n for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 09 Jan 2020 14:52:20 +0100 Original-Received: from localhost ([::1]:60752 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ipYEU-0000FN-ME for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 09 Jan 2020 08:52:18 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:58615) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ipYEH-00006S-5d for bug-gnu-emacs@gnu.org; Thu, 09 Jan 2020 08:52:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ipYEF-00047T-2T for bug-gnu-emacs@gnu.org; Thu, 09 Jan 2020 08:52:04 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:45992) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ipYEE-00046N-T0 for bug-gnu-emacs@gnu.org; Thu, 09 Jan 2020 08:52:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ipYEE-0005nX-Rg for bug-gnu-emacs@gnu.org; Thu, 09 Jan 2020 08:52:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Andrii Kolomoiets Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 09 Jan 2020 13:52:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38748 X-GNU-PR-Package: emacs X-Debbugs-Original-Cc: jguenther@gmail.com, bug-gnu-emacs@gnu.org, alan@idiocy.org, Pip Cet , 38748@debbugs.gnu.org, Robert Pluim Original-Received: via spool by 38748-submit@debbugs.gnu.org id=B38748.157857789522216 (code B ref 38748); Thu, 09 Jan 2020 13:52:02 +0000 Original-Received: (at 38748) by debbugs.gnu.org; 9 Jan 2020 13:51:35 +0000 Original-Received: from localhost ([127.0.0.1]:51961 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ipYDm-0005mG-U4 for submit@debbugs.gnu.org; Thu, 09 Jan 2020 08:51:35 -0500 Original-Received: from mail-lj1-f182.google.com ([209.85.208.182]:36612) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ipYDl-0005ly-Lj for 38748@debbugs.gnu.org; Thu, 09 Jan 2020 08:51:34 -0500 Original-Received: by mail-lj1-f182.google.com with SMTP id r19so7326657ljg.3 for <38748@debbugs.gnu.org>; Thu, 09 Jan 2020 05:51:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=raDBjrHKjz+zYvU1TB05cIjqGyZ9OWRN/flawJkO288=; b=ZvpOiQVg18+1ZIHhXVe9jzT924sr74tqkDs/4CqtkrQLgeXpFHC4QKWhVFHeQCxPyZ +3N7EjJs4p5U3M6Zfib797IY/jVd8hJCcEMtuzryhmI9MUk7ZwyKtfBvPgMbgqZzv1Bl ybH34EIWth2CUK555GVwn1uluyB7QmXFmXCBBW/uWNFwvnScG++umW2t7BYR6lq0hsMj HFwL4gqrK8mcCRYkasI9BRZphvhtYdFwhSw1Wx2zUfgtPNhCr6d4WYGsvOxpmW4176p5 RMrwDKuOQVQUHcznEwFDhwLSNjSvrIFE5zXXYEa8aeBcjaIw6gQgQGeSeecghN6eFBj4 D/ZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=raDBjrHKjz+zYvU1TB05cIjqGyZ9OWRN/flawJkO288=; b=F4Nm2r8Aer/8uencYrb+ydhxYRSbDwJccnI9nFhNAm8MIbRyt3f56f2ZescT6EAq7e BTJNBO8seHJaN8HcMZVdG62mZqRgRTi2DlBuX6uTkRQnFGtG2Wc4FVKJCdmlJ5jf1Pes /q6+NU9u5iXdxJhgKwC6UEUqqwPAzhdebWtHCKviLY0Mdwbo/VzN7PO0W6TAxQgSQLn3 QmssjYGJjQv5mvxy6ixFHxOEo9e/xiJUufwKwuRLAXhmzDNjFY8BzPwWmU+kGArOpAFC +RC29r+vhRKYuDvTBkU/9jW8y1Vwub0dsP9fWBmaXrC6KzjvIHZS0uH8wOEXFN2Ky5R+ g0Eg== X-Gm-Message-State: APjAAAWJIyrnypUVffrp1osKSw3cJxvQfgTbc+QvFATBWL8FwHOYHu/d Y1FAs1/+FHq78yNDxiIJCKfkLEPk X-Google-Smtp-Source: APXvYqwXqhQJzCxtmkKV3cDgPIksOPYc5V1/M8QK1SAGz850jAAWHg9etC0j/0iXsTdZ/KMpk1x3Kg== X-Received: by 2002:a2e:9a01:: with SMTP id o1mr6331685lji.247.1578577887262; Thu, 09 Jan 2020 05:51:27 -0800 (PST) Original-Received: from muffinmac.local (188-42-207-82.ip.ukrtel.net. [82.207.42.188]) by smtp.gmail.com with ESMTPSA id t9sm3095139lfl.51.2020.01.09.05.51.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Jan 2020 05:51:26 -0800 (PST) In-Reply-To: (Eli Zaretskii's message of "Thu, 09 Jan 2020 12:07:54 +0200") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:174409 Archived-At: --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Eli Zaretskii writes: > On January 9, 2020 9:51:43 AM GMT+02:00, Robert Pluim = wrote: >> said: >>> As another data point, I=CA=BCm writing this from an emacs with 'ok >>> =3D true', which has not crashed yet.... >>=20 >> scratch that, it crashed this morning. >>=20 >> Robert > > Thanks for trying. > > A stab in the dark: does it help to rename the variable 'ok' in > face_inherited_attr to some other name, like 'ok1'? > > Also, can I please see one backtrace with all the call-stack frames, > starting from 'main' and ending at 'handle_fatal_signal'? The > original report shows only the top-most 511 frames, and the other one > has a lot of ?? (missing symbols) in it. > > And finally, are all the crashes inside GC, or do some happen outside > it? I made an assumption that gdb is indeed working incorrectly for me because: - It can't print last_marked - It shows a lot of ?? in call-stack - Emacs is not crashing if running not under gdb - Emacs keep working after continuing execution after gdb reaches terminate_due_to_signal breakpoint So I tried to use lldb. Under lldb the crash is not occured on commit with 'ok =3D false'. Also I came up with code to reproduce crash under 'emacs -Q' at least on my machine. Here is the '~/emacs-crash.el' content: (make-frame `((parent-frame . ,(window-frame)))) (make-frame `((parent-frame . ,(window-frame)))) (make-frame `((parent-frame . ,(window-frame)))) (make-frame `((parent-frame . ,(window-frame)))) (delete-frame) (delete-frame) (delete-frame) (delete-frame) (garbage-collect) This code is start crashing on the commit bb42f6ef10cb250a9263b17a8794e950a563d5d0 Though I can't use xTYPE commands under lldb please see attached lldb output. It has all the call-stack frames starting from 'main'. --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=lldb.txt > lldb ./emacs (lldb) target create "./emacs" Current executable set to './emacs' (x86_64). (lldb) r -Q -l ~/emacs-crash.el Process 79102 launched: '/Users/mad/workspace/emacs/src/emacs' (x86_64) 2020-01-09 15:03:04.568377+0200 emacs[79102:1831680] flock failed to lock maps file: errno = 35 2020-01-09 15:03:04.568728+0200 emacs[79102:1831680] flock failed to lock maps file: errno = 35 2020-01-09 15:03:04.902490+0200 emacs[79102:1831645] SecTaskLoadEntitlements failed error=22 cs_flags=20, pid=79102 2020-01-09 15:03:04.902599+0200 emacs[79102:1831645] SecTaskCopyDebugDescription: emacs[79102]/0#-1 LF=0 2020-01-09 15:03:04.903630+0200 emacs[79102:1831645] SecTaskLoadEntitlements failed error=22 cs_flags=20, pid=79102 2020-01-09 15:03:04.903710+0200 emacs[79102:1831645] SecTaskCopyDebugDescription: emacs[79102]/0#-1 LF=0 Process 79102 stopped * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0x7fff2ea65d3f) frame #0: 0x00000001002b2c33 emacs`set_vector_marked(v=0x00007fff2ea65d3f) at alloc.c:3738:5 3735 pdumper_set_marked (v); 3736 } 3737 else -> 3738 XMARK_VECTOR (v); 3739 } 3740 3741 static bool Target 0: (emacs) stopped. (lldb) thread backtrace * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0x7fff2ea65d3f) * frame #0: 0x00000001002b2c33 emacs`set_vector_marked(v=0x00007fff2ea65d3f) at alloc.c:3738:5 frame #1: 0x00000001002b2d85 emacs`mark_vectorlike(header=0x00007fff2ea65d3f) at alloc.c:6149:3 frame #2: 0x00000001002b28a3 emacs`mark_frame(ptr=0x0000000101a67990) at alloc.c:6322:9 frame #3: 0x00000001002b0e40 emacs`mark_object(arg=(i = 0x0000000101a67995)) at alloc.c:6528:13 frame #4: 0x00000001002b2dd3 emacs`mark_vectorlike(header=0x0000000101a7a4d0) at alloc.c:6158:5 frame #5: 0x00000001002b282d emacs`mark_frame(ptr=0x0000000101a7a4d0) at alloc.c:6314:3 frame #6: 0x00000001002b0e40 emacs`mark_object(arg=(i = 0x0000000101b98b93)) at alloc.c:6528:13 frame #7: 0x00000001002add8c emacs`mark_maybe_object(obj=(i = 0x0000000101b98b93)) at alloc.c:4577:2 frame #8: 0x00000001002ade93 emacs`mark_memory(start=0x00007ffeefbf88a0, end=0x00007ffeefbff6a8) at alloc.c:4723:2 frame #9: 0x00000001002adddd emacs`mark_stack(bottom="", end="?\x88???") at alloc.c:4930:3 frame #10: 0x0000000100418e41 emacs`mark_one_thread(thread=0x000000010097f528) at thread.c:630:3 frame #11: 0x00000001004176d3 emacs`mark_threads_callback(ignore=0x0000000000000000) at thread.c:661:7 frame #12: 0x00000001002adef4 emacs`flush_stack_call_func(func=(emacs`mark_threads_callback at thread.c:652), arg=0x0000000000000000) at alloc.c:4957:3 frame #13: 0x0000000100417624 emacs`mark_threads at thread.c:668:3 frame #14: 0x00000001002afdb6 emacs`garbage_collect at alloc.c:5947:3 frame #15: 0x00000001002b1acc emacs`Fgarbage_collect at alloc.c:6062:3 frame #16: 0x0000000100301a16 emacs`eval_sub(form=(i = 0x0000000101982413)) at eval.c:2270:15 frame #17: 0x000000010037a944 emacs`readevalloop_eager_expand_eval(val=(i = 0x0000000101982413), macroexpand=(i = 0x00000000023a5b38)) at lread.c:1928:13 frame #18: 0x0000000100371e56 emacs`readevalloop(readcharfun=(i = 0x000000010131f4d5), infile0=0x0000000000000000, sourcename=(i = 0x0000000101326584), printflag=false, unibyte=(i = 0x0000000000000000), readfun=(i = 0x0000000000000000), start=(i = 0x0000000000000000), end=(i = 0x0000000000000000)) at lread.c:2110:15 frame #19: 0x00000001003728f8 emacs`Feval_buffer(buffer=(i = 0x000000010131f4d5), printflag=(i = 0x0000000000000000), filename=(i = 0x00000001012125e4), unibyte=(i = 0x0000000000000000), do_allow_print=(i = 0x0000000000000030)) at lread.c:2183:3 frame #20: 0x00000001003114ad emacs`funcall_subr(subr=0x0000000100549cf8, numargs=5, args=0x00007ffeefbf97d0) at eval.c:2879:19 frame #21: 0x000000010030f9f2 emacs`Ffuncall(nargs=6, args=0x00007ffeefbf97c8) at eval.c:2794:11 frame #22: 0x000000010039f4cb emacs`exec_byte_code(bytestr=(i = 0x00000001029989b4), vector=(i = 0x00000001029980cd), maxdepth=(i = 0x000000000000001a), args_template=(i = 0x0000000000000000), nargs=0, args=0x0000000000000000) at bytecode.c:633:12 frame #23: 0x0000000100312206 emacs`funcall_lambda(fun=(i = 0x000000010299809d), nargs=4, arg_vector=0x00007ffeefbfa858) at eval.c:3067:13 frame #24: 0x000000010030fa42 emacs`Ffuncall(nargs=5, args=0x00007ffeefbfa850) at eval.c:2796:11 frame #25: 0x0000000100310c13 emacs`call4(fn=(i = 0x0000000001f70978), arg1=(i = 0x00000001012125e4), arg2=(i = 0x00000001012125e4), arg3=(i = 0x0000000000000000), arg4=(i = 0x0000000000000030)) at eval.c:2676:10 frame #26: 0x000000010036e10e emacs`Fload(file=(i = 0x0000000101212454), noerror=(i = 0x0000000000000000), nomessage=(i = 0x0000000000000030), nosuffix=(i = 0x0000000000000000), must_suffix=(i = 0x0000000000000000)) at lread.c:1386:10 frame #27: 0x00000001003114ad emacs`funcall_subr(subr=0x0000000100549cc8, numargs=3, args=0x00007ffeefbfb198) at eval.c:2879:19 frame #28: 0x000000010030f9f2 emacs`Ffuncall(nargs=4, args=0x00007ffeefbfb190) at eval.c:2794:11 frame #29: 0x000000010039f4cb emacs`exec_byte_code(bytestr=(i = 0x000000010305fb5c), vector=(i = 0x000000010305e6fd), maxdepth=(i = 0x0000000000000066), args_template=(i = 0x0000000000000406), nargs=1, args=0x00007ffeefbfc5d8) at bytecode.c:633:12 frame #30: 0x0000000100311a6d emacs`funcall_lambda(fun=(i = 0x000000010305e6cd), nargs=1, arg_vector=0x00007ffeefbfc5d0) at eval.c:2989:11 frame #31: 0x000000010030fa42 emacs`Ffuncall(nargs=2, args=0x00007ffeefbfc5c8) at eval.c:2796:11 frame #32: 0x000000010039f4cb emacs`exec_byte_code(bytestr=(i = 0x0000000103063904), vector=(i = 0x000000010305fdad), maxdepth=(i = 0x000000000000003a), args_template=(i = 0x0000000000000002), nargs=0, args=0x00007ffeefbfdc38) at bytecode.c:633:12 frame #33: 0x0000000100311a6d emacs`funcall_lambda(fun=(i = 0x000000010305fd7d), nargs=0, arg_vector=0x00007ffeefbfdc38) at eval.c:2989:11 frame #34: 0x000000010030fa42 emacs`Ffuncall(nargs=1, args=0x00007ffeefbfdc30) at eval.c:2796:11 frame #35: 0x000000010039f4cb emacs`exec_byte_code(bytestr=(i = 0x00000001030645cc), vector=(i = 0x0000000103063ad5), maxdepth=(i = 0x0000000000000032), args_template=(i = 0x0000000000000002), nargs=0, args=0x00007ffeefbfecc0) at bytecode.c:633:12 frame #36: 0x0000000100311a6d emacs`funcall_lambda(fun=(i = 0x0000000103063aa5), nargs=0, arg_vector=0x00007ffeefbfecc0) at eval.c:2989:11 frame #37: 0x000000010030bd8e emacs`apply_lambda(fun=(i = 0x0000000103063aa5), args=(i = 0x0000000000000000), count=4) at eval.c:2926:9 frame #38: 0x0000000100301c9d emacs`eval_sub(form=(i = 0x0000000103211b63)) at eval.c:2318:12 frame #39: 0x000000010030a2ed emacs`Feval(form=(i = 0x0000000103211b63), lexical=(i = 0x0000000000000000)) at eval.c:2102:28 frame #40: 0x00000001001e8b3a emacs`top_level_2 at keyboard.c:1100:10 frame #41: 0x00000001003085dd emacs`internal_condition_case(bfun=(emacs`top_level_2 at keyboard.c:1099), handlers=(i = 0x0000000000000090), hfun=(emacs`cmd_error at keyboard.c:919)) at eval.c:1355:25 frame #42: 0x00000001001e8751 emacs`top_level_1(ignore=(i = 0x0000000000000000)) at keyboard.c:1108:5 frame #43: 0x00000001003079a8 emacs`internal_catch(tag=(i = 0x000000000000c8a0), func=(emacs`top_level_1 at keyboard.c:1105), arg=(i = 0x0000000000000000)) at eval.c:1116:25 frame #44: 0x00000001001c46ec emacs`command_loop at keyboard.c:1069:2 frame #45: 0x00000001001c44f7 emacs`recursive_edit_1 at keyboard.c:714:9 frame #46: 0x00000001001c4996 emacs`Frecursive_edit at keyboard.c:786:3 frame #47: 0x00000001001c1520 emacs`main(argc=4, argv=0x00007ffeefbff6e8) at emacs.c:2054:3 frame #48: 0x00007fff63a7c7fd libdyld.dylib`start + 1 frame #49: 0x00007fff63a7c7fd libdyld.dylib`start + 1 (lldb) p last_marked_index (int) $0 = 468 (lldb) p last_marked[467] (Lisp_Object) $1 = (i = 0x0000000000000000) --=-=-=--