--- Begin Message ---
Subject: |
27.0.91; Emacs aborts due to invalid pseudovector objects |
Date: |
Sat, 16 May 2020 13:33:13 +0300 |
I don't have a reproducible recipe, unfortunately.
What happens is that Emacs aborts a short time after reverting a
buffer (reverted because the file it is visiting was changed on disk).
So far, I've seen this in a C Mode buffer reverted because "git pull"
brought a modified version, and in an Info mode buffer reverted
because the manual was rebuilt after the Texinfo sources were
modified. In the latter case I captured a backtrace, see below.
The problem seem to involve invalid markers, perhaps markers that were
unchained and put on the free list (witness the PVEC_FREE object that
caused the abort in the backtrace below, where Emacs seems to be
trying to display an error message about an invalid marker).
I don't think I saw such problems in Emacs 27.0.90, so I walked
through all the changes since then till 27.0.91 release, but didn't
see anything that could explain the problem.
Needless to say, this is a serious problem, so I'd like to ask
everyone to please run the latest pretest under a debugger and report
any similar problems with all the details they can provide.
Here's the backtrace and some additional information from the session
where it happened last:
Thread 1 hit Breakpoint 3, 0x77c36bb3 in msvcrt!abort ()
from C:\WINDOWS\system32\msvcrt.dll
(gdb) bt
#0 0x77c36bb3 in msvcrt!abort () from C:\WINDOWS\system32\msvcrt.dll
#1 0x011cfdd8 in emacs_abort () at w32fns.c:10893
#2 0x01175f3a in print_vectorlike (obj=<optimized out>,
printcharfun=XIL(0x30), escapeflag=escapeflag@entry=true,
buf=buf@entry=0x82f07a "") at print.c:1830
#3 0x01172055 in print_object (obj=<optimized out>, printcharfun=XIL(0x30),
escapeflag=true) at print.c:2148
#4 0x01172f04 in print (obj=<optimized out>, printcharfun=<optimized out>,
escapeflag=<optimized out>, escapeflag@entry=true) at print.c:1147
#5 0x01173355 in Fprin1 (object=XIL(0xa00000001c9866d8),
printcharfun=<optimized out>) at print.c:653
#6 0x0117483b in print_error_message (data=<optimized out>,
stream=<optimized out>, context=<optimized out>, caller=<optimized out>)
at print.c:979
#7 0x010c13c5 in Fcommand_error_default_function (
data=XIL(0xc000000000ff92e0), context=XIL(0x80000000058e9118),
sys_signal=XIL(0x5d72548)) at keyboard.c:1029
#8 0x0114fb99 in funcall_subr (subr=<optimized out>,
numargs=<optimized out>, numargs@entry=3, args=<optimized out>,
args@entry=0x82f498) at eval.c:2872
#9 0x0114d9fd in Ffuncall (nargs=4, args=0x82f490) at eval.c:2794
#10 0x0114dca3 in Fapply (nargs=<optimized out>, args=<optimized out>)
at eval.c:2424
#11 0x0114d9fd in Ffuncall (nargs=3, args=args@entry=0x82f590) at eval.c:2794
#12 0x0118eaf7 in exec_byte_code (bytestr=<optimized out>,
vector=<optimized out>, maxdepth=<optimized out>,
args_template=<optimized out>, nargs=<optimized out>, nargs@entry=3,
args=<optimized out>, args@entry=0x82f888) at bytecode.c:633
#13 0x0115125f in funcall_lambda (fun=<optimized out>, nargs=nargs@entry=3,
arg_vector=arg_vector@entry=0x82f888) at eval.c:2989
#14 0x0114d953 in Ffuncall (nargs=nargs@entry=4, args=args@entry=0x82f880)
at eval.c:2808
#15 0x01151d29 in call3 (fn=XIL(0xa000000005e00b20),
arg1=XIL(0xc000000000ff92e0), arg2=XIL(0x80000000058e9118),
arg3=XIL(0x5d72548)) at eval.c:2668
#16 0x010c5020 in cmd_error_internal (data=XIL(0xc000000000ff92e0),
context=context@entry=0x82f92e "") at keyboard.c:984
#17 0x010c51e6 in cmd_error (data=XIL(0xc000000000ff92e0)) at keyboard.c:953
#18 0x0114c952 in internal_condition_case (
bfun=bfun@entry=0x10d0a0e <command_loop_1>, handlers=XIL(0x90),
hfun=hfun@entry=0x10c5049 <cmd_error>) at eval.c:1351
#19 0x010bdbda in command_loop_2 (ignore=XIL(0)) at keyboard.c:1091
#20 0x0114c8a6 in internal_catch (tag=XIL(0xdfb0),
func=func@entry=0x10bdbb3 <command_loop_2>, arg=XIL(0)) at eval.c:1116
#21 0x010bdb5d in command_loop () at keyboard.c:1070
#22 0x010c4bf3 in recursive_edit_1 () at keyboard.c:714
#23 0x010c4f0c in Frecursive_edit () at keyboard.c:786
#24 0x0124a4a4 in main (argc=<optimized out>, argv=<optimized out>)
at emacs.c:2054
Lisp Backtrace:
"command-error-default-function" (0x82f498)
"apply" (0x82f598)
0x5e00b20 PVEC_COMPILED
(gdb) fr 2
#2 0x01175f3a in print_vectorlike (obj=<optimized out>,
printcharfun=XIL(0x30), escapeflag=escapeflag@entry=true,
buf=buf@entry=0x82f07a "") at print.c:1830
1830 emacs_abort ();
(gdb) fr 7
#7 0x010c13c5 in Fcommand_error_default_function (
data=XIL(0xc000000000ff92e0), context=XIL(0x80000000058e9118),
sys_signal=XIL(0x5d72548)) at keyboard.c:1029
1029 print_error_message (data, Qt, SSDATA (context), signal);
(gdb) p data
$1 = XIL(0xc000000000ff92e0)
(gdb) xtype
Lisp_Cons
(gdb) xcar
$2 = 0xfd80
(gdb) xtype
Lisp_Symbol
(gdb) xsym
xsymbol xsymname
(gdb) xsymbol
$3 = (struct Lisp_Symbol *) 0x15d9f60 <lispsym+64896>
"wrong-type-argument"
(gdb) p data
$4 = XIL(0xc000000000ff92e0)
(gdb) xcdr
$5 = 0xc000000000ff9300
(gdb) xtype
Lisp_Cons
(gdb) xcar
$6 = 0x9810
(gdb) xtype
Lisp_Symbol
(gdb) xsymbol
$7 = (struct Lisp_Symbol *) 0x15d39f0 <lispsym+38928>
"markerp"
(gdb) p data
$8 = XIL(0xc000000000ff92e0)
(gdb) xcdr
$9 = 0xc000000000ff9300
(gdb) xcdr
$10 = 0xc000000000ff9310
(gdb) xtype
Lisp_Cons
(gdb) xcar
$11 = 0xa00000001c9866d8
(gdb) xtype
Lisp_Vectorlike
PVEC_FREE
(gdb) fr 17
#17 0x010c51e6 in cmd_error (data=XIL(0xc000000000ff92e0)) at keyboard.c:953
953 cmd_error_internal (data, macroerror);
In GNU Emacs 27.0.91 (build 1, i686-pc-mingw32)
of 2020-04-18 built on HOME-C4E4A596F7
Windowing system distributor 'Microsoft Corp.', version 5.1.2600
System Description: Microsoft Windows XP Service Pack 3 (v5.1.0.2600)
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Configured using:
'configure --prefix=/d/usr --with-wide-int --with-modules 'CFLAGS=-O2
-gdwarf-4 -g3''
Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY W32NOTIFY ACL GNUTLS LIBXML2
HARFBUZZ ZLIB TOOLKIT_SCROLL_BARS MODULES THREADS JSON PDUMPER LCMS2 GMP
Important settings:
value of $LANG: ENU
locale-coding-system: cp1255
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
format-spec rfc822 mml easymenu mml-sec password-cache epa derived epg
epg-config gnus-util rmail rmail-loaddefs text-property-search time-date
subr-x seq byte-opt gv bytecomp byte-compile cconv mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs
cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel dos-w32 ls-lisp disp-table term/w32-win w32-win w32-vars
term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame minibuffer cl-generic 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 charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads w32notify w32 lcms2 multi-tty make-network-process
emacs)
Memory information:
((conses 16 50536 10936)
(symbols 48 7172 1)
(strings 16 18837 2268)
(string-bytes 1 532938)
(vectors 16 9527)
(vector-slots 8 127687 7318)
(floats 8 21 170)
(intervals 40 254 84)
(buffers 888 11))
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#41321: 27.0.91; Emacs aborts due to invalid pseudovector objects |
Date: |
Sun, 27 Sep 2020 18:16:40 +0300 |
> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: eggert@cs.ucla.edu, 41321@debbugs.gnu.org, monnier@iro.umontreal.ca,
> pipcet@gmail.com
> Date: Sun, 27 Sep 2020 16:39:51 +0200
>
> > FTR, I'm now running Emacs 27.0.91 pretest patched with Paul's changes
> > in commit 68b6dad1d8e22fe700871c9a5a18da3dd496cc8a.
>
> I've just lightly skimmed this thread, but does this mean that the bug
> was fixed and this bug report can be closed?
Yes, done.
--- End Message ---