Subject: Re: bug#49261: 28.0.50; File Locking Breaks Presumptuous Toolchains

From: Lars Ingebrigtsen <[email-masked]>
Date: Thu, 08 Jul 2021 14:49:01 +0200

Lars Ingebrigtsen <[email-masked]> writes:

> This is with an -O2 build; the bug also reproduces with an -O1 build;
> I'll try that...

Here's the -O1 backtrace:

Thread 1 "bootstrap-emacs" received signal SIGSEGV, Segmentation fault.
0x00005555556f0549 in AREF (idx=6988131860, array=XIL(0x7ffff1bd901d))
    at lisp.h:731
731	  return lisp_h_XLP (o);
(gdb) bt
#0  0x00005555556f0549 in AREF (idx=6988131860, array=XIL(0x7ffff1bd901d))
    at lisp.h:731
#1  HASH_KEY (idx=3494065930, h=0x7ffff1bd8f98) at lisp.h:2374
#2  hash_lookup
    (h=0x7ffff1bd8f98, key=XIL(0x555555c76c64), hash=hash@entry=0x0)
    at fns.c:4479
#3  0x0000555555719cb9 in exec_byte_code
    (bytestr=<optimized out>, vector=<optimized out>, maxdepth=<optimized out>, args_template=args_template@entry=make_fixnum(257), nargs=nargs@entry=1, args=<optimized out>, args@entry=0x7fffffffd940) at bytecode.c:1415
#4  0x00005555556e643f in fetch_and_exec_byte_code
    (args=0x7fffffffd940, nargs=1, syms_left=make_fixnum(257), fun=XIL(0x7ffff1bc9895)) at lisp.h:731
#5  funcall_lambda
    (fun=XIL(0x7ffff1bc9895), nargs=nargs@entry=1, arg_vector=arg_vector@entry=0x7fffffffd940) at eval.c:3244
#6  0x00005555556e3bb4 in Ffuncall (nargs=2, args=args@entry=0x7fffffffd938)
    at eval.c:3043
#7  0x0000555555717cb6 in exec_byte_code
    (bytestr=<optimized out>, vector=<optimized out>, maxdepth=<optimized out>, args_template=args_template@entry=make_fixnum(0), nargs=nargs@entry=0, args=<optimized out>, args@entry=0x7fffffffe0e8) at bytecode.c:632
#8  0x00005555556e643f in fetch_and_exec_byte_code
    (args=0x7fffffffe0e8, nargs=0, syms_left=make_fixnum(0), fun=XIL(0x7ffff1bc79ed)) at lisp.h:731
#9  funcall_lambda
    (fun=XIL(0x7ffff1bc79ed), nargs=nargs@entry=0, arg_vector=arg_vector@entry=0x7fffffffe0e8) at eval.c:3244
#10 0x00005555556e3bb4 in Ffuncall (nargs=1, args=args@entry=0x7fffffffe0e0)
    at eval.c:3043
#11 0x0000555555717cb6 in exec_byte_code
    (bytestr=<optimized out>, vector=<optimized out>, maxdepth=<optimized out>, args_template=args_template@entry=make_fixnum(0), nargs=nargs@entry=0, args=<optimized out>, args@entry=0x7fffffffe4a0) at bytecode.c:632
#12 0x00005555556e643f in fetch_and_exec_byte_code
    (args=0x7fffffffe4a0, nargs=0, syms_left=make_fixnum(0), fun=XIL(0x7ffff1bc759d)) at lisp.h:731
#13 funcall_lambda
    (fun=fun@entry=XIL(0x7ffff1bc759d), nargs=nargs@entry=0, arg_vector=arg_vector@entry=0x7fffffffe4a0) at eval.c:3244
#14 0x00005555556e5aec in apply_lambda
    (fun=fun@entry=XIL(0x7ffff1bc759d), args=<optimized out>, count=count@entry=4) at eval.c:3188
#15 0x00005555556e5d64 in eval_sub (form=form@entry=XIL(0x7ffff20f4fe3))
    at eval.c:2561
#16 0x00005555556e76d7 in Feval
--Type <RET> for more, q to quit, c to continue without paging--
    (form=XIL(0x7ffff20f4fe3), lexical=lexical@entry=XIL(0)) at eval.c:2343
#17 0x0000555555670a48 in top_level_2 () at lisp.h:1002
#18 0x00005555556e2f8d in internal_condition_case
    (bfun=bfun@entry=0x555555670a33 <top_level_2>, handlers=handlers@entry=XIL(0x90), hfun=hfun@entry=0x555555673df4 <cmd_error>) at eval.c:1478
#19 0x0000555555670a03 in top_level_1 (ignore=ignore@entry=XIL(0))
    at keyboard.c:1111
#20 0x00005555556e5158 in internal_catch
    (tag=tag@entry=XIL(0xe610), func=func@entry=0x5555556709dd <top_level_1>, arg=arg@entry=XIL(0)) at eval.c:1198
#21 0x0000555555670986 in command_loop () at lisp.h:1002
#22 0x0000555555673a9c in recursive_edit_1 () at keyboard.c:720
#23 0x0000555555673d4d in Frecursive_edit () at keyboard.c:789
#24 0x000055555566fea2 in main (argc=13, argv=0x7fffffffe8b8) at emacs.c:2308

Lisp Backtrace:
"command-line-1" (0xffffd940)
"command-line" (0xffffe0e8)
"normal-top-level" (0xffffe4a0)
(gdb) fr 16
#16 0x00005555556e76d7 in Feval (form=XIL(0x7ffff20f4fe3), 
    lexical=lexical@entry=XIL(0)) at eval.c:2343
2343	  return unbind_to (count, eval_sub (form));
(gdb) pp form
#<INVALID_LISP_OBJECT 0x7ffff20f4fe3>
(gdb) 

Same invalid object.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no