GNU bug report logs - #18473
24.4.50; SEGFAULT when vconcatting more than 2048 vectors

Previous Next

Package: emacs;

Reported by: Michael Welsh Duggan <md5i <at> md5i.com>

Date: Sun, 14 Sep 2014 02:38:01 UTC

Severity: normal

Found in version 24.4.50

Done: Paul Eggert <eggert <at> cs.ucla.edu>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 18473 in the body.
You can then email your comments to 18473 AT debbugs.gnu.org in the normal way.

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#18473; Package emacs. (Sun, 14 Sep 2014 02:38:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Michael Welsh Duggan <md5i <at> md5i.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 14 Sep 2014 02:38:02 GMT) Full text and rfc822 format available.

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

From: Michael Welsh Duggan <md5i <at> md5i.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.4.50; SEGFAULT when vconcatting more than 2048 vectors
Date: Sat, 13 Sep 2014 22:37:17 -0400
[Message part 1 (text/plain, inline)]
With attached foo.el:

[foo.el (application/emacs-lisp, attachment)]
[Message part 3 (text/plain, inline)]
emacs -Q -l foo.el
(testbug 2049)
C-j

SEGFAULT


Output from backtrace full:

(gdb) backtrace full
#0  __GI___libc_free (mem=0x11bf625000000) at malloc.c:2929
        ar_ptr = <optimized out>
        p = <optimized out>
        hook = 0x0
#1  0x0000000000526532 in xfree (block=<optimized out>) at alloc.c:790
No locals.
#2  0x00000000005279ab in free_save_value (save=12877840) at alloc.c:3710
No locals.
#3  0x000000000053fb45 in unbind_to (count=count <at> entry=27, value=12414258)
    at eval.c:3217
        quitf = 12414258
#4  0x000000000054026f in eval_sub (form=form <at> entry=12783478) at eval.c:2155
        vals = 0xc48010
        argnum = <optimized out>
        sa_must_free = false
        numargs = <optimized out>
        args_left = 12414258
        i = <optimized out>
        maxargs = <optimized out>
        argvals = {1, 5440526, 0, 5516524, 15006773, 12518338, 12518336, 
          12414258}
        fun = <optimized out>
        val = 13148125
        original_args = 12783446
#5  0x0000000000541b78 in Feval (form=12783478, lexical=<optimized out>)
    at eval.c:1999
No locals.
#6  0x000000000054030d in eval_sub (form=<optimized out>) at eval.c:2184
        numargs = <optimized out>
        args_left = 12414258
        i = 2
        maxargs = 2
        argvals = {12783478, 12414258, 12529442, 1, 140737488344632, 5508598, 
          8704233, 12414258}
        fun = 11593589
        val = <optimized out>
        original_args = 19579014
#7  0x0000000000540691 in Fprogn (body=19578294) at eval.c:461
        val = <optimized out>
#8  0x0000000000540129 in eval_sub (form=<optimized out>) at eval.c:2129
        numargs = <optimized out>
        args_left = 19603974
        i = <optimized out>
        maxargs = <optimized out>
        argvals = {12023840, 13091888, 1, 1, 1, 5439051, 12776818, 5434546}
        fun = 11594741
        val = <optimized out>
        original_args = 19603974
#9  0x0000000000541590 in Funwind_protect (args=19603782) at eval.c:1208
        val = <optimized out>
#10 0x0000000000540129 in eval_sub (form=<optimized out>) at eval.c:2129
        numargs = <optimized out>
        args_left = 19603782
        i = <optimized out>
        maxargs = <optimized out>
        argvals = {15006773, 19, 0, 1, 140737488345040, 12414258, 8704233, 1}
        fun = 11593877
        val = <optimized out>
        original_args = 19603782
#11 0x0000000000540691 in Fprogn (body=19603574, body <at> entry=19603590)
    at eval.c:461
        val = <optimized out>
#12 0x0000000000535811 in Fsave_current_buffer (args=19603590)
    at editfns.c:955
No locals.
#13 0x0000000000540129 in eval_sub (form=<optimized out>) at eval.c:2129
        numargs = <optimized out>
        args_left = 19603590
        i = <optimized out>
        maxargs = <optimized out>
        argvals = {1, 2, 16, 5508598, 140737488345320, 19784198, 18609637, 17}
        fun = 11591717
        val = <optimized out>
        original_args = 19603590
#14 0x0000000000540691 in Fprogn (body=19603558) at eval.c:461
        val = <optimized out>
#15 0x0000000000542cc7 in Flet (args=19603542) at eval.c:969
        temps = 0x7fffffffd890
        tem = <optimized out>
        lexenv = 12414258
        elt = <optimized out>
        varlist = <optimized out>
        argnum = 1
        sa_must_free = false
#16 0x0000000000540129 in eval_sub (form=<optimized out>) at eval.c:2129
        numargs = <optimized out>
        args_left = 19603542
        i = <optimized out>
        maxargs = <optimized out>
        argvals = {1, 32, 9063264, 5507010, 140737488345680, 12859291, 
          9063269, 15}
        fun = 11594117
        val = <optimized out>
        original_args = 19603542
#17 0x0000000000540691 in Fprogn (body=19603414) at eval.c:461
        val = <optimized out>
#18 0x0000000000540970 in funcall_lambda (fun=fun <at> entry=19603510, 
    nargs=nargs <at> entry=1, arg_vector=arg_vector <at> entry=0x7fffffffda40)
    at eval.c:2953
        val = <optimized out>
        syms_left = 12414258
        lexenv = 12414258
        i = 1
        optional = false
        rest = false
#19 0x00000000005414f5 in apply_lambda (fun=fun <at> entry=19603510, 
    args=<optimized out>) at eval.c:2835
        args_left = 12414258
        i = 1
        arg_vector = 0x7fffffffda40
        tem = <optimized out>
        sa_must_free = false
#20 0x0000000000540517 in eval_sub (form=form <at> entry=19784198) at eval.c:2256
        fun = 19603510
        val = <optimized out>
        original_args = 19783990
#21 0x0000000000541b78 in Feval (form=19784198, lexical=<optimized out>)
    at eval.c:1999
No locals.
#22 0x0000000000540c11 in Ffuncall (nargs=<optimized out>, 
    args=args <at> entry=0x7fffffffdc18) at eval.c:2729
        internal_argbuf = {140737488346320, 12516066, 12516064, 12441093, 
          20593808, 1, 20, 5434584}
        fun = 11593589
        original_fun = 12519666
        numargs = <optimized out>
        val = <optimized out>
        internal_args = 0x7fffffffdc20
        i = <optimized out>
#23 0x00000000005718a1 in exec_byte_code (bytestr=<optimized out>, 
    vector=10128205, maxdepth=<optimized out>, 
    args_template=args_template <at> entry=1028, nargs=nargs <at> entry=1, 
    args=<optimized out>, args <at> entry=0x7fffffffddc8) at bytecode.c:920
        targets = {0x573dde <exec_byte_code+11404>, 
          0x573e29 <exec_byte_code+11479>, 0x573e2b <exec_byte_code+11481>, 
          0x573e2d <exec_byte_code+11483>, 0x573e2f <exec_byte_code+11485>, 
          0x573e2f <exec_byte_code+11485>, 0x573e6d <exec_byte_code+11547>, 
          0x573eba <exec_byte_code+11624>, 0x571438 <exec_byte_code+742>, 
          0x57143a <exec_byte_code+744>, 0x57143c <exec_byte_code+746>, 
          0x57143e <exec_byte_code+748>, 0x571440 <exec_byte_code+750>, 
          0x571440 <exec_byte_code+750>, 0x571445 <exec_byte_code+755>, 
          0x571414 <exec_byte_code+706>, 0x5716e9 <exec_byte_code+1431>, 
          0x5716eb <exec_byte_code+1433>, 0x5716ed <exec_byte_code+1435>, 
          0x5716ef <exec_byte_code+1437>, 0x5716f1 <exec_byte_code+1439>, 
          0x5716f1 <exec_byte_code+1439>, 0x571718 <exec_byte_code+1478>, 
          0x5716f6 <exec_byte_code+1444>, 0x5717f7 <exec_byte_code+1701>, 
          0x5717f9 <exec_byte_code+1703>, 0x5717fb <exec_byte_code+1705>, 
          0x5717fd <exec_byte_code+1707>, 0x5717ff <exec_byte_code+1709>, 
          0x5717ff <exec_byte_code+1709>, 0x5717c4 <exec_byte_code+1650>, 
          0x5717d5 <exec_byte_code+1667>, 0x571876 <exec_byte_code+1828>, 
          0x571878 <exec_byte_code+1830>, 0x57187a <exec_byte_code+1832>, 
          0x57187c <exec_byte_code+1834>, 0x57187e <exec_byte_code+1836>, 
          0x57187e <exec_byte_code+1836>, 0x571843 <exec_byte_code+1777>, 
          0x571854 <exec_byte_code+1794>, 0x5718f6 <exec_byte_code+1956>, 
          0x5718f8 <exec_byte_code+1958>, 0x5718fa <exec_byte_code+1960>, 
          0x5718fc <exec_byte_code+1962>, 0x5718fe <exec_byte_code+1964>, 
          0x5718fe <exec_byte_code+1964>, 0x5718c3 <exec_byte_code+1905>, 
          0x5718d4 <exec_byte_code+1922>, 0x572464 <exec_byte_code+4882>, 
          0x57230b <exec_byte_code+4537>, 0x572303 <exec_byte_code+4529>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x5725e0 <exec_byte_code+5262>, 
          0x57267c <exec_byte_code+5418>, 0x5726c8 <exec_byte_code+5494>, 
          0x57271a <exec_byte_code+5576>, 0x57276c <exec_byte_code+5658>, 
          0x571602 <exec_byte_code+1200>, 0x57164d <exec_byte_code+1275>, 
          0x5727b6 <exec_byte_code+5732>, 0x5715a4 <exec_byte_code+1106>, 
          0x57168b <exec_byte_code+1337>, 0x5727f3 <exec_byte_code+5793>, 
          0x572831 <exec_byte_code+5855>, 0x57285f <exec_byte_code+5901>, 
          0x57289d <exec_byte_code+5963>, 0x5728d5 <exec_byte_code+6019>, 
          0x57295c <exec_byte_code+6154>, 0x57298a <exec_byte_code+6200>, 
          0x5729c8 <exec_byte_code+6262>, 0x572a0a <exec_byte_code+6328>, 
          0x572a38 <exec_byte_code+6374>, 0x572a66 <exec_byte_code+6420>, 
          0x572aa4 <exec_byte_code+6482>, 0x572ae2 <exec_byte_code+6544>, 
          0x572b20 <exec_byte_code+6606>, 0x572b62 <exec_byte_code+6672>, 
          0x572b9a <exec_byte_code+6728>, 0x572bd2 <exec_byte_code+6784>, 
          0x572c59 <exec_byte_code+6919>, 0x572ca2 <exec_byte_code+6992>, 
          0x572ceb <exec_byte_code+7065>, 0x572e86 <exec_byte_code+7476>, 
          0x572ec9 <exec_byte_code+7543>, 0x572f0c <exec_byte_code+7610>, 
          0x572f4f <exec_byte_code+7677>, 0x572f92 <exec_byte_code+7744>, 
          0x572fca <exec_byte_code+7800>, 0x573014 <exec_byte_code+7874>, 
          0x57304c <exec_byte_code+7930>, 0x573084 <exec_byte_code+7986>, 
          0x5730bc <exec_byte_code+8042>, 0x57316a <exec_byte_code+8216>, 
          0x5721fa <exec_byte_code+4264>, 0x5731a7 <exec_byte_code+8277>, 
          0x5731d5 <exec_byte_code+8323>, 0x573257 <exec_byte_code+8453>, 
          0x573294 <exec_byte_code+8514>, 0x5732d1 <exec_byte_code+8575>, 
          0x5732ff <exec_byte_code+8621>, 0x57332f <exec_byte_code+8669>, 
          0x57335f <exec_byte_code+8717>, 0x573393 <exec_byte_code+8769>, 
          0x573dde <exec_byte_code+11404>, 0x5733c8 <exec_byte_code+8822>, 
          0x5733f8 <exec_byte_code+8870>, 0x573428 <exec_byte_code+8918>, 
          0x573458 <exec_byte_code+8966>, 0x573488 <exec_byte_code+9014>, 
          0x5734b8 <exec_byte_code+9062>, 0x5721fa <exec_byte_code+4264>, 
          0x573dde <exec_byte_code+11404>, 0x5734e6 <exec_byte_code+9108>, 
          0x573528 <exec_byte_code+9174>, 0x573556 <exec_byte_code+9220>, 
          0x573584 <exec_byte_code+9266>, 0x5735c2 <exec_byte_code+9328>, 
          0x573600 <exec_byte_code+9390>, 0x57362e <exec_byte_code+9436>, 
          0x57377f <exec_byte_code+9773>, 0x5737bd <exec_byte_code+9835>, 
          0x5737fb <exec_byte_code+9897>, 0x573839 <exec_byte_code+9959>, 
          0x573869 <exec_byte_code+10007>, 0x573dde <exec_byte_code+11404>, 
          0x572176 <exec_byte_code+4132>, 0x571973 <exec_byte_code+2081>, 
          0x5714b5 <exec_byte_code+867>, 0x571a44 <exec_byte_code+2290>, 
          0x571b33 <exec_byte_code+2529>, 0x571c1d <exec_byte_code+2763>, 
          0x572118 <exec_byte_code+4038>, 0x572152 <exec_byte_code+4096>, 
          0x571793 <exec_byte_code+1601>, 0x5721c9 <exec_byte_code+4215>, 
          0x57222b <exec_byte_code+4313>, 0x57228f <exec_byte_code+4413>, 
          0x5722c0 <exec_byte_code+4462>, 0x572495 <exec_byte_code+4931>, 
          0x5724eb <exec_byte_code+5017>, 0x57252d <exec_byte_code+5083>, 
          0x572580 <exec_byte_code+5166>, 0x571944 <exec_byte_code+2034>, 
          0x573897 <exec_byte_code+10053>, 0x5738d9 <exec_byte_code+10119>, 
          0x573907 <exec_byte_code+10165>, 0x573935 <exec_byte_code+10211>, 
          0x573963 <exec_byte_code+10257>, 0x573991 <exec_byte_code+10303>, 
          0x5739cf <exec_byte_code+10365>, 0x573a0d <exec_byte_code+10427>, 
          0x573a4b <exec_byte_code+10489>, 0x573a89 <exec_byte_code+10551>, 
          0x573b5c <exec_byte_code+10762>, 0x573b9a <exec_byte_code+10824>, 
          0x573bd8 <exec_byte_code+10886>, 0x573c06 <exec_byte_code+10932>, 
          0x573c44 <exec_byte_code+10994>, 0x573c82 <exec_byte_code+11056>, 
          0x573cc6 <exec_byte_code+11124>, 0x573d0a <exec_byte_code+11192>, 
          0x5730f4 <exec_byte_code+8098>, 0x57312c <exec_byte_code+8154>, 
          0x573d42 <exec_byte_code+11248>, 0x573d9f <exec_byte_code+11341>, 
          0x573dde <exec_byte_code+11404>, 0x571d07 <exec_byte_code+2997>, 
          0x571dbe <exec_byte_code+3180>, 0x571e92 <exec_byte_code+3392>, 
          0x571f66 <exec_byte_code+3604>, 0x57203f <exec_byte_code+3821>, 
          0x57290d <exec_byte_code+6075>, 0x572c0a <exec_byte_code+6840>, 
          0x573208 <exec_byte_code+8374>, 0x573f1a <exec_byte_code+11720>, 
          0x573f6a <exec_byte_code+11800>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573fcd <exec_byte_code+11899>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 
          0x574023 <exec_byte_code+11985> <repeats 64 times>}
        count = 12
        op = <optimized out>
        vectorp = 0x9a8b50 <pure+1544272>
        stack = {
          pc = 0xa7956b <pure+2398827> "\002\")\207", 
          byte_string = 10128169, 
          byte_string_start = 0xa79559 <pure+2398809> "\211\203\b", 
          next = 0x7fffffffde30
        }
        top = 0x7fffffffdc18
        result = <optimized out>
        type = <optimized out>
#24 0x00000000005407c2 in funcall_lambda (fun=10128125, nargs=nargs <at> entry=1, 
    arg_vector=arg_vector <at> entry=0x7fffffffddc8) at eval.c:2894
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
#25 0x0000000000540d43 in Ffuncall (nargs=<optimized out>, 
    args=args <at> entry=0x7fffffffddc0) at eval.c:2775
        fun = <optimized out>
        original_fun = 20487506
        numargs = 1
        val = <optimized out>
        internal_args = <optimized out>
        i = <optimized out>
#26 0x00000000005718a1 in exec_byte_code (bytestr=<optimized out>, 
    vector=10128941, maxdepth=<optimized out>, 
    args_template=args_template <at> entry=1028, nargs=nargs <at> entry=1, 
    args=<optimized out>, args <at> entry=0x7fffffffdf78) at bytecode.c:920
        targets = {0x573dde <exec_byte_code+11404>, 
          0x573e29 <exec_byte_code+11479>, 0x573e2b <exec_byte_code+11481>, 
          0x573e2d <exec_byte_code+11483>, 0x573e2f <exec_byte_code+11485>, 
          0x573e2f <exec_byte_code+11485>, 0x573e6d <exec_byte_code+11547>, 
          0x573eba <exec_byte_code+11624>, 0x571438 <exec_byte_code+742>, 
          0x57143a <exec_byte_code+744>, 0x57143c <exec_byte_code+746>, 
          0x57143e <exec_byte_code+748>, 0x571440 <exec_byte_code+750>, 
          0x571440 <exec_byte_code+750>, 0x571445 <exec_byte_code+755>, 
          0x571414 <exec_byte_code+706>, 0x5716e9 <exec_byte_code+1431>, 
          0x5716eb <exec_byte_code+1433>, 0x5716ed <exec_byte_code+1435>, 
          0x5716ef <exec_byte_code+1437>, 0x5716f1 <exec_byte_code+1439>, 
          0x5716f1 <exec_byte_code+1439>, 0x571718 <exec_byte_code+1478>, 
          0x5716f6 <exec_byte_code+1444>, 0x5717f7 <exec_byte_code+1701>, 
          0x5717f9 <exec_byte_code+1703>, 0x5717fb <exec_byte_code+1705>, 
          0x5717fd <exec_byte_code+1707>, 0x5717ff <exec_byte_code+1709>, 
          0x5717ff <exec_byte_code+1709>, 0x5717c4 <exec_byte_code+1650>, 
          0x5717d5 <exec_byte_code+1667>, 0x571876 <exec_byte_code+1828>, 
          0x571878 <exec_byte_code+1830>, 0x57187a <exec_byte_code+1832>, 
          0x57187c <exec_byte_code+1834>, 0x57187e <exec_byte_code+1836>, 
          0x57187e <exec_byte_code+1836>, 0x571843 <exec_byte_code+1777>, 
          0x571854 <exec_byte_code+1794>, 0x5718f6 <exec_byte_code+1956>, 
          0x5718f8 <exec_byte_code+1958>, 0x5718fa <exec_byte_code+1960>, 
          0x5718fc <exec_byte_code+1962>, 0x5718fe <exec_byte_code+1964>, 
          0x5718fe <exec_byte_code+1964>, 0x5718c3 <exec_byte_code+1905>, 
          0x5718d4 <exec_byte_code+1922>, 0x572464 <exec_byte_code+4882>, 
          0x57230b <exec_byte_code+4537>, 0x572303 <exec_byte_code+4529>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x5725e0 <exec_byte_code+5262>, 
          0x57267c <exec_byte_code+5418>, 0x5726c8 <exec_byte_code+5494>, 
          0x57271a <exec_byte_code+5576>, 0x57276c <exec_byte_code+5658>, 
          0x571602 <exec_byte_code+1200>, 0x57164d <exec_byte_code+1275>, 
          0x5727b6 <exec_byte_code+5732>, 0x5715a4 <exec_byte_code+1106>, 
          0x57168b <exec_byte_code+1337>, 0x5727f3 <exec_byte_code+5793>, 
          0x572831 <exec_byte_code+5855>, 0x57285f <exec_byte_code+5901>, 
          0x57289d <exec_byte_code+5963>, 0x5728d5 <exec_byte_code+6019>, 
          0x57295c <exec_byte_code+6154>, 0x57298a <exec_byte_code+6200>, 
          0x5729c8 <exec_byte_code+6262>, 0x572a0a <exec_byte_code+6328>, 
          0x572a38 <exec_byte_code+6374>, 0x572a66 <exec_byte_code+6420>, 
          0x572aa4 <exec_byte_code+6482>, 0x572ae2 <exec_byte_code+6544>, 
          0x572b20 <exec_byte_code+6606>, 0x572b62 <exec_byte_code+6672>, 
          0x572b9a <exec_byte_code+6728>, 0x572bd2 <exec_byte_code+6784>, 
          0x572c59 <exec_byte_code+6919>, 0x572ca2 <exec_byte_code+6992>, 
          0x572ceb <exec_byte_code+7065>, 0x572e86 <exec_byte_code+7476>, 
          0x572ec9 <exec_byte_code+7543>, 0x572f0c <exec_byte_code+7610>, 
          0x572f4f <exec_byte_code+7677>, 0x572f92 <exec_byte_code+7744>, 
          0x572fca <exec_byte_code+7800>, 0x573014 <exec_byte_code+7874>, 
          0x57304c <exec_byte_code+7930>, 0x573084 <exec_byte_code+7986>, 
          0x5730bc <exec_byte_code+8042>, 0x57316a <exec_byte_code+8216>, 
          0x5721fa <exec_byte_code+4264>, 0x5731a7 <exec_byte_code+8277>, 
          0x5731d5 <exec_byte_code+8323>, 0x573257 <exec_byte_code+8453>, 
          0x573294 <exec_byte_code+8514>, 0x5732d1 <exec_byte_code+8575>, 
          0x5732ff <exec_byte_code+8621>, 0x57332f <exec_byte_code+8669>, 
          0x57335f <exec_byte_code+8717>, 0x573393 <exec_byte_code+8769>, 
          0x573dde <exec_byte_code+11404>, 0x5733c8 <exec_byte_code+8822>, 
          0x5733f8 <exec_byte_code+8870>, 0x573428 <exec_byte_code+8918>, 
          0x573458 <exec_byte_code+8966>, 0x573488 <exec_byte_code+9014>, 
          0x5734b8 <exec_byte_code+9062>, 0x5721fa <exec_byte_code+4264>, 
          0x573dde <exec_byte_code+11404>, 0x5734e6 <exec_byte_code+9108>, 
          0x573528 <exec_byte_code+9174>, 0x573556 <exec_byte_code+9220>, 
          0x573584 <exec_byte_code+9266>, 0x5735c2 <exec_byte_code+9328>, 
          0x573600 <exec_byte_code+9390>, 0x57362e <exec_byte_code+9436>, 
          0x57377f <exec_byte_code+9773>, 0x5737bd <exec_byte_code+9835>, 
          0x5737fb <exec_byte_code+9897>, 0x573839 <exec_byte_code+9959>, 
          0x573869 <exec_byte_code+10007>, 0x573dde <exec_byte_code+11404>, 
          0x572176 <exec_byte_code+4132>, 0x571973 <exec_byte_code+2081>, 
          0x5714b5 <exec_byte_code+867>, 0x571a44 <exec_byte_code+2290>, 
          0x571b33 <exec_byte_code+2529>, 0x571c1d <exec_byte_code+2763>, 
          0x572118 <exec_byte_code+4038>, 0x572152 <exec_byte_code+4096>, 
          0x571793 <exec_byte_code+1601>, 0x5721c9 <exec_byte_code+4215>, 
          0x57222b <exec_byte_code+4313>, 0x57228f <exec_byte_code+4413>, 
          0x5722c0 <exec_byte_code+4462>, 0x572495 <exec_byte_code+4931>, 
          0x5724eb <exec_byte_code+5017>, 0x57252d <exec_byte_code+5083>, 
          0x572580 <exec_byte_code+5166>, 0x571944 <exec_byte_code+2034>, 
          0x573897 <exec_byte_code+10053>, 0x5738d9 <exec_byte_code+10119>, 
          0x573907 <exec_byte_code+10165>, 0x573935 <exec_byte_code+10211>, 
          0x573963 <exec_byte_code+10257>, 0x573991 <exec_byte_code+10303>, 
          0x5739cf <exec_byte_code+10365>, 0x573a0d <exec_byte_code+10427>, 
          0x573a4b <exec_byte_code+10489>, 0x573a89 <exec_byte_code+10551>, 
          0x573b5c <exec_byte_code+10762>, 0x573b9a <exec_byte_code+10824>, 
          0x573bd8 <exec_byte_code+10886>, 0x573c06 <exec_byte_code+10932>, 
          0x573c44 <exec_byte_code+10994>, 0x573c82 <exec_byte_code+11056>, 
          0x573cc6 <exec_byte_code+11124>, 0x573d0a <exec_byte_code+11192>, 
          0x5730f4 <exec_byte_code+8098>, 0x57312c <exec_byte_code+8154>, 
          0x573d42 <exec_byte_code+11248>, 0x573d9f <exec_byte_code+11341>, 
          0x573dde <exec_byte_code+11404>, 0x571d07 <exec_byte_code+2997>, 
          0x571dbe <exec_byte_code+3180>, 0x571e92 <exec_byte_code+3392>, 
          0x571f66 <exec_byte_code+3604>, 0x57203f <exec_byte_code+3821>, 
          0x57290d <exec_byte_code+6075>, 0x572c0a <exec_byte_code+6840>, 
          0x573208 <exec_byte_code+8374>, 0x573f1a <exec_byte_code+11720>, 
          0x573f6a <exec_byte_code+11800>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573fcd <exec_byte_code+11899>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 
          0x574023 <exec_byte_code+11985> <repeats 64 times>}
        count = 10
        op = <optimized out>
        vectorp = 0x9a8e30 <pure+1545008>
        stack = {
          pc = 0xa7941c <pure+2398492> "\n)B\211A\t=\204\032", 
          byte_string = 10128905, 
          byte_string_start = 0xa7940f <pure+2398479> "\b\204\b", 
          next = 0x7fffffffdfd0
        }
        top = 0x7fffffffddc0
        result = <optimized out>
        type = <optimized out>
#27 0x00000000005407c2 in funcall_lambda (fun=10128853, nargs=nargs <at> entry=1, 
    arg_vector=arg_vector <at> entry=0x7fffffffdf78) at eval.c:2894
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
#28 0x0000000000540d43 in Ffuncall (nargs=<optimized out>, 
    args=args <at> entry=0x7fffffffdf70) at eval.c:2775
        fun = <optimized out>
        original_fun = 15703282
        numargs = 1
        val = <optimized out>
        internal_args = <optimized out>
        i = <optimized out>
#29 0x00000000005718a1 in exec_byte_code (bytestr=<optimized out>, 
    vector=10126005, maxdepth=<optimized out>, 
    args_template=args_template <at> entry=1024, nargs=nargs <at> entry=1, 
    args=<optimized out>, args <at> entry=0x7fffffffe1a0) at bytecode.c:920
        targets = {0x573dde <exec_byte_code+11404>, 
          0x573e29 <exec_byte_code+11479>, 0x573e2b <exec_byte_code+11481>, 
          0x573e2d <exec_byte_code+11483>, 0x573e2f <exec_byte_code+11485>, 
          0x573e2f <exec_byte_code+11485>, 0x573e6d <exec_byte_code+11547>, 
          0x573eba <exec_byte_code+11624>, 0x571438 <exec_byte_code+742>, 
          0x57143a <exec_byte_code+744>, 0x57143c <exec_byte_code+746>, 
          0x57143e <exec_byte_code+748>, 0x571440 <exec_byte_code+750>, 
          0x571440 <exec_byte_code+750>, 0x571445 <exec_byte_code+755>, 
          0x571414 <exec_byte_code+706>, 0x5716e9 <exec_byte_code+1431>, 
          0x5716eb <exec_byte_code+1433>, 0x5716ed <exec_byte_code+1435>, 
          0x5716ef <exec_byte_code+1437>, 0x5716f1 <exec_byte_code+1439>, 
          0x5716f1 <exec_byte_code+1439>, 0x571718 <exec_byte_code+1478>, 
          0x5716f6 <exec_byte_code+1444>, 0x5717f7 <exec_byte_code+1701>, 
          0x5717f9 <exec_byte_code+1703>, 0x5717fb <exec_byte_code+1705>, 
          0x5717fd <exec_byte_code+1707>, 0x5717ff <exec_byte_code+1709>, 
          0x5717ff <exec_byte_code+1709>, 0x5717c4 <exec_byte_code+1650>, 
          0x5717d5 <exec_byte_code+1667>, 0x571876 <exec_byte_code+1828>, 
          0x571878 <exec_byte_code+1830>, 0x57187a <exec_byte_code+1832>, 
          0x57187c <exec_byte_code+1834>, 0x57187e <exec_byte_code+1836>, 
          0x57187e <exec_byte_code+1836>, 0x571843 <exec_byte_code+1777>, 
          0x571854 <exec_byte_code+1794>, 0x5718f6 <exec_byte_code+1956>, 
          0x5718f8 <exec_byte_code+1958>, 0x5718fa <exec_byte_code+1960>, 
          0x5718fc <exec_byte_code+1962>, 0x5718fe <exec_byte_code+1964>, 
          0x5718fe <exec_byte_code+1964>, 0x5718c3 <exec_byte_code+1905>, 
          0x5718d4 <exec_byte_code+1922>, 0x572464 <exec_byte_code+4882>, 
          0x57230b <exec_byte_code+4537>, 0x572303 <exec_byte_code+4529>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x5725e0 <exec_byte_code+5262>, 
          0x57267c <exec_byte_code+5418>, 0x5726c8 <exec_byte_code+5494>, 
          0x57271a <exec_byte_code+5576>, 0x57276c <exec_byte_code+5658>, 
          0x571602 <exec_byte_code+1200>, 0x57164d <exec_byte_code+1275>, 
          0x5727b6 <exec_byte_code+5732>, 0x5715a4 <exec_byte_code+1106>, 
          0x57168b <exec_byte_code+1337>, 0x5727f3 <exec_byte_code+5793>, 
          0x572831 <exec_byte_code+5855>, 0x57285f <exec_byte_code+5901>, 
          0x57289d <exec_byte_code+5963>, 0x5728d5 <exec_byte_code+6019>, 
          0x57295c <exec_byte_code+6154>, 0x57298a <exec_byte_code+6200>, 
          0x5729c8 <exec_byte_code+6262>, 0x572a0a <exec_byte_code+6328>, 
          0x572a38 <exec_byte_code+6374>, 0x572a66 <exec_byte_code+6420>, 
          0x572aa4 <exec_byte_code+6482>, 0x572ae2 <exec_byte_code+6544>, 
          0x572b20 <exec_byte_code+6606>, 0x572b62 <exec_byte_code+6672>, 
          0x572b9a <exec_byte_code+6728>, 0x572bd2 <exec_byte_code+6784>, 
          0x572c59 <exec_byte_code+6919>, 0x572ca2 <exec_byte_code+6992>, 
          0x572ceb <exec_byte_code+7065>, 0x572e86 <exec_byte_code+7476>, 
          0x572ec9 <exec_byte_code+7543>, 0x572f0c <exec_byte_code+7610>, 
          0x572f4f <exec_byte_code+7677>, 0x572f92 <exec_byte_code+7744>, 
          0x572fca <exec_byte_code+7800>, 0x573014 <exec_byte_code+7874>, 
          0x57304c <exec_byte_code+7930>, 0x573084 <exec_byte_code+7986>, 
          0x5730bc <exec_byte_code+8042>, 0x57316a <exec_byte_code+8216>, 
          0x5721fa <exec_byte_code+4264>, 0x5731a7 <exec_byte_code+8277>, 
          0x5731d5 <exec_byte_code+8323>, 0x573257 <exec_byte_code+8453>, 
          0x573294 <exec_byte_code+8514>, 0x5732d1 <exec_byte_code+8575>, 
          0x5732ff <exec_byte_code+8621>, 0x57332f <exec_byte_code+8669>, 
          0x57335f <exec_byte_code+8717>, 0x573393 <exec_byte_code+8769>, 
          0x573dde <exec_byte_code+11404>, 0x5733c8 <exec_byte_code+8822>, 
          0x5733f8 <exec_byte_code+8870>, 0x573428 <exec_byte_code+8918>, 
          0x573458 <exec_byte_code+8966>, 0x573488 <exec_byte_code+9014>, 
          0x5734b8 <exec_byte_code+9062>, 0x5721fa <exec_byte_code+4264>, 
          0x573dde <exec_byte_code+11404>, 0x5734e6 <exec_byte_code+9108>, 
          0x573528 <exec_byte_code+9174>, 0x573556 <exec_byte_code+9220>, 
          0x573584 <exec_byte_code+9266>, 0x5735c2 <exec_byte_code+9328>, 
          0x573600 <exec_byte_code+9390>, 0x57362e <exec_byte_code+9436>, 
          0x57377f <exec_byte_code+9773>, 0x5737bd <exec_byte_code+9835>, 
          0x5737fb <exec_byte_code+9897>, 0x573839 <exec_byte_code+9959>, 
          0x573869 <exec_byte_code+10007>, 0x573dde <exec_byte_code+11404>, 
          0x572176 <exec_byte_code+4132>, 0x571973 <exec_byte_code+2081>, 
          0x5714b5 <exec_byte_code+867>, 0x571a44 <exec_byte_code+2290>, 
          0x571b33 <exec_byte_code+2529>, 0x571c1d <exec_byte_code+2763>, 
          0x572118 <exec_byte_code+4038>, 0x572152 <exec_byte_code+4096>, 
          0x571793 <exec_byte_code+1601>, 0x5721c9 <exec_byte_code+4215>, 
          0x57222b <exec_byte_code+4313>, 0x57228f <exec_byte_code+4413>, 
          0x5722c0 <exec_byte_code+4462>, 0x572495 <exec_byte_code+4931>, 
          0x5724eb <exec_byte_code+5017>, 0x57252d <exec_byte_code+5083>, 
          0x572580 <exec_byte_code+5166>, 0x571944 <exec_byte_code+2034>, 
          0x573897 <exec_byte_code+10053>, 0x5738d9 <exec_byte_code+10119>, 
          0x573907 <exec_byte_code+10165>, 0x573935 <exec_byte_code+10211>, 
          0x573963 <exec_byte_code+10257>, 0x573991 <exec_byte_code+10303>, 
          0x5739cf <exec_byte_code+10365>, 0x573a0d <exec_byte_code+10427>, 
          0x573a4b <exec_byte_code+10489>, 0x573a89 <exec_byte_code+10551>, 
          0x573b5c <exec_byte_code+10762>, 0x573b9a <exec_byte_code+10824>, 
          0x573bd8 <exec_byte_code+10886>, 0x573c06 <exec_byte_code+10932>, 
          0x573c44 <exec_byte_code+10994>, 0x573c82 <exec_byte_code+11056>, 
          0x573cc6 <exec_byte_code+11124>, 0x573d0a <exec_byte_code+11192>, 
          0x5730f4 <exec_byte_code+8098>, 0x57312c <exec_byte_code+8154>, 
          0x573d42 <exec_byte_code+11248>, 0x573d9f <exec_byte_code+11341>, 
          0x573dde <exec_byte_code+11404>, 0x571d07 <exec_byte_code+2997>, 
          0x571dbe <exec_byte_code+3180>, 0x571e92 <exec_byte_code+3392>, 
          0x571f66 <exec_byte_code+3604>, 0x57203f <exec_byte_code+3821>, 
          0x57290d <exec_byte_code+6075>, 0x572c0a <exec_byte_code+6840>, 
          0x573208 <exec_byte_code+8374>, 0x573f1a <exec_byte_code+11720>, 
          0x573f6a <exec_byte_code+11800>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573fcd <exec_byte_code+11899>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 
          0x574023 <exec_byte_code+11985> <repeats 64 times>}
        count = 8
        op = <optimized out>
        vectorp = 0x9a82b8 <pure+1542072>
        stack = {
          pc = 0xa79838 <pure+2399544> "\210\301 )\207", 
          byte_string = 10125969, 
          byte_string_start = 0xa7982c <pure+2399532> "p\030\301 \210\302\001\206\v", 
          next = 0x7fffffffe430
        }
        top = 0x7fffffffdf70
        result = <optimized out>
        type = <optimized out>
#30 0x00000000005407c2 in funcall_lambda (fun=10125917, nargs=nargs <at> entry=1, 
    arg_vector=arg_vector <at> entry=0x7fffffffe1a0) at eval.c:2894
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
#31 0x0000000000540d43 in Ffuncall (nargs=nargs <at> entry=2, 
    args=args <at> entry=0x7fffffffe198) at eval.c:2775
        fun = <optimized out>
        original_fun = 20487058
        numargs = 1
        val = <optimized out>
        internal_args = <optimized out>
        i = <optimized out>
#32 0x000000000053c894 in Ffuncall_interactively (nargs=2, 
    args=0x7fffffffe198) at callint.c:270
No locals.
#33 0x0000000000540b88 in Ffuncall (nargs=nargs <at> entry=3, 
    args=args <at> entry=0x7fffffffe190) at eval.c:2706
        fun = 11592773
        original_fun = 12532130
        numargs = 2
        val = <optimized out>
        internal_args = <optimized out>
        i = <optimized out>
#34 0x000000000053e08a in Fcall_interactively (function=20487058, 
    record_flag=12414258, keys=12449013) at callint.c:876
        val = <optimized out>
        args = 0x7fffffffe190
        visargs = 0x7fffffffe1a8
        specs = <optimized out>
        filter_specs = <optimized out>
        teml = <optimized out>
        up_event = 12414258
        enable = <optimized out>
        sa_must_free = false
        next_event = <optimized out>
        prefix_arg = 12414258
        string = <optimized out>
        tem = <optimized out>
        varies = 0x7fffffffe1c0 ""
        i = 3
        nargs = 3
        mark = <optimized out>
        arg_from_tty = false
        key_count = 1
        record_then_fail = false
        save_this_command = 20487058
        save_last_command = 12454226
        save_this_original_command = 20487058
        save_real_this_command = 20487058
#35 0x0000000000540c2b in Ffuncall (nargs=<optimized out>, 
    args=args <at> entry=0x7fffffffe3a8) at eval.c:2733
        internal_argbuf = {20487058, 12414258, 0, 5440526, 40, 19761542, 
          12452338, 1}
        fun = 11592725
        original_fun = 12532562
        numargs = <optimized out>
        val = <optimized out>
        internal_args = 0x7fffffffe3b0
        i = <optimized out>
#36 0x00000000005718a1 in exec_byte_code (bytestr=<optimized out>, 
    vector=9507149, maxdepth=<optimized out>, 
    args_template=args_template <at> entry=4100, nargs=nargs <at> entry=1, 
    args=<optimized out>, args <at> entry=0x7fffffffe568) at bytecode.c:920
        targets = {0x573dde <exec_byte_code+11404>, 
          0x573e29 <exec_byte_code+11479>, 0x573e2b <exec_byte_code+11481>, 
          0x573e2d <exec_byte_code+11483>, 0x573e2f <exec_byte_code+11485>, 
          0x573e2f <exec_byte_code+11485>, 0x573e6d <exec_byte_code+11547>, 
          0x573eba <exec_byte_code+11624>, 0x571438 <exec_byte_code+742>, 
          0x57143a <exec_byte_code+744>, 0x57143c <exec_byte_code+746>, 
          0x57143e <exec_byte_code+748>, 0x571440 <exec_byte_code+750>, 
          0x571440 <exec_byte_code+750>, 0x571445 <exec_byte_code+755>, 
          0x571414 <exec_byte_code+706>, 0x5716e9 <exec_byte_code+1431>, 
          0x5716eb <exec_byte_code+1433>, 0x5716ed <exec_byte_code+1435>, 
          0x5716ef <exec_byte_code+1437>, 0x5716f1 <exec_byte_code+1439>, 
          0x5716f1 <exec_byte_code+1439>, 0x571718 <exec_byte_code+1478>, 
          0x5716f6 <exec_byte_code+1444>, 0x5717f7 <exec_byte_code+1701>, 
          0x5717f9 <exec_byte_code+1703>, 0x5717fb <exec_byte_code+1705>, 
          0x5717fd <exec_byte_code+1707>, 0x5717ff <exec_byte_code+1709>, 
          0x5717ff <exec_byte_code+1709>, 0x5717c4 <exec_byte_code+1650>, 
          0x5717d5 <exec_byte_code+1667>, 0x571876 <exec_byte_code+1828>, 
          0x571878 <exec_byte_code+1830>, 0x57187a <exec_byte_code+1832>, 
          0x57187c <exec_byte_code+1834>, 0x57187e <exec_byte_code+1836>, 
          0x57187e <exec_byte_code+1836>, 0x571843 <exec_byte_code+1777>, 
          0x571854 <exec_byte_code+1794>, 0x5718f6 <exec_byte_code+1956>, 
          0x5718f8 <exec_byte_code+1958>, 0x5718fa <exec_byte_code+1960>, 
          0x5718fc <exec_byte_code+1962>, 0x5718fe <exec_byte_code+1964>, 
          0x5718fe <exec_byte_code+1964>, 0x5718c3 <exec_byte_code+1905>, 
          0x5718d4 <exec_byte_code+1922>, 0x572464 <exec_byte_code+4882>, 
          0x57230b <exec_byte_code+4537>, 0x572303 <exec_byte_code+4529>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x5725e0 <exec_byte_code+5262>, 
          0x57267c <exec_byte_code+5418>, 0x5726c8 <exec_byte_code+5494>, 
          0x57271a <exec_byte_code+5576>, 0x57276c <exec_byte_code+5658>, 
          0x571602 <exec_byte_code+1200>, 0x57164d <exec_byte_code+1275>, 
          0x5727b6 <exec_byte_code+5732>, 0x5715a4 <exec_byte_code+1106>, 
          0x57168b <exec_byte_code+1337>, 0x5727f3 <exec_byte_code+5793>, 
          0x572831 <exec_byte_code+5855>, 0x57285f <exec_byte_code+5901>, 
          0x57289d <exec_byte_code+5963>, 0x5728d5 <exec_byte_code+6019>, 
          0x57295c <exec_byte_code+6154>, 0x57298a <exec_byte_code+6200>, 
          0x5729c8 <exec_byte_code+6262>, 0x572a0a <exec_byte_code+6328>, 
          0x572a38 <exec_byte_code+6374>, 0x572a66 <exec_byte_code+6420>, 
          0x572aa4 <exec_byte_code+6482>, 0x572ae2 <exec_byte_code+6544>, 
          0x572b20 <exec_byte_code+6606>, 0x572b62 <exec_byte_code+6672>, 
          0x572b9a <exec_byte_code+6728>, 0x572bd2 <exec_byte_code+6784>, 
          0x572c59 <exec_byte_code+6919>, 0x572ca2 <exec_byte_code+6992>, 
          0x572ceb <exec_byte_code+7065>, 0x572e86 <exec_byte_code+7476>, 
          0x572ec9 <exec_byte_code+7543>, 0x572f0c <exec_byte_code+7610>, 
          0x572f4f <exec_byte_code+7677>, 0x572f92 <exec_byte_code+7744>, 
          0x572fca <exec_byte_code+7800>, 0x573014 <exec_byte_code+7874>, 
          0x57304c <exec_byte_code+7930>, 0x573084 <exec_byte_code+7986>, 
          0x5730bc <exec_byte_code+8042>, 0x57316a <exec_byte_code+8216>, 
          0x5721fa <exec_byte_code+4264>, 0x5731a7 <exec_byte_code+8277>, 
          0x5731d5 <exec_byte_code+8323>, 0x573257 <exec_byte_code+8453>, 
          0x573294 <exec_byte_code+8514>, 0x5732d1 <exec_byte_code+8575>, 
          0x5732ff <exec_byte_code+8621>, 0x57332f <exec_byte_code+8669>, 
          0x57335f <exec_byte_code+8717>, 0x573393 <exec_byte_code+8769>, 
          0x573dde <exec_byte_code+11404>, 0x5733c8 <exec_byte_code+8822>, 
          0x5733f8 <exec_byte_code+8870>, 0x573428 <exec_byte_code+8918>, 
          0x573458 <exec_byte_code+8966>, 0x573488 <exec_byte_code+9014>, 
          0x5734b8 <exec_byte_code+9062>, 0x5721fa <exec_byte_code+4264>, 
          0x573dde <exec_byte_code+11404>, 0x5734e6 <exec_byte_code+9108>, 
          0x573528 <exec_byte_code+9174>, 0x573556 <exec_byte_code+9220>, 
          0x573584 <exec_byte_code+9266>, 0x5735c2 <exec_byte_code+9328>, 
          0x573600 <exec_byte_code+9390>, 0x57362e <exec_byte_code+9436>, 
          0x57377f <exec_byte_code+9773>, 0x5737bd <exec_byte_code+9835>, 
          0x5737fb <exec_byte_code+9897>, 0x573839 <exec_byte_code+9959>, 
          0x573869 <exec_byte_code+10007>, 0x573dde <exec_byte_code+11404>, 
          0x572176 <exec_byte_code+4132>, 0x571973 <exec_byte_code+2081>, 
          0x5714b5 <exec_byte_code+867>, 0x571a44 <exec_byte_code+2290>, 
          0x571b33 <exec_byte_code+2529>, 0x571c1d <exec_byte_code+2763>, 
          0x572118 <exec_byte_code+4038>, 0x572152 <exec_byte_code+4096>, 
          0x571793 <exec_byte_code+1601>, 0x5721c9 <exec_byte_code+4215>, 
          0x57222b <exec_byte_code+4313>, 0x57228f <exec_byte_code+4413>, 
          0x5722c0 <exec_byte_code+4462>, 0x572495 <exec_byte_code+4931>, 
          0x5724eb <exec_byte_code+5017>, 0x57252d <exec_byte_code+5083>, 
          0x572580 <exec_byte_code+5166>, 0x571944 <exec_byte_code+2034>, 
          0x573897 <exec_byte_code+10053>, 0x5738d9 <exec_byte_code+10119>, 
          0x573907 <exec_byte_code+10165>, 0x573935 <exec_byte_code+10211>, 
          0x573963 <exec_byte_code+10257>, 0x573991 <exec_byte_code+10303>, 
          0x5739cf <exec_byte_code+10365>, 0x573a0d <exec_byte_code+10427>, 
          0x573a4b <exec_byte_code+10489>, 0x573a89 <exec_byte_code+10551>, 
          0x573b5c <exec_byte_code+10762>, 0x573b9a <exec_byte_code+10824>, 
          0x573bd8 <exec_byte_code+10886>, 0x573c06 <exec_byte_code+10932>, 
          0x573c44 <exec_byte_code+10994>, 0x573c82 <exec_byte_code+11056>, 
          0x573cc6 <exec_byte_code+11124>, 0x573d0a <exec_byte_code+11192>, 
          0x5730f4 <exec_byte_code+8098>, 0x57312c <exec_byte_code+8154>, 
          0x573d42 <exec_byte_code+11248>, 0x573d9f <exec_byte_code+11341>, 
          0x573dde <exec_byte_code+11404>, 0x571d07 <exec_byte_code+2997>, 
          0x571dbe <exec_byte_code+3180>, 0x571e92 <exec_byte_code+3392>, 
          0x571f66 <exec_byte_code+3604>, 0x57203f <exec_byte_code+3821>, 
          0x57290d <exec_byte_code+6075>, 0x572c0a <exec_byte_code+6840>, 
          0x573208 <exec_byte_code+8374>, 0x573f1a <exec_byte_code+11720>, 
          0x573f6a <exec_byte_code+11800>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573fcd <exec_byte_code+11899>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 0x573dde <exec_byte_code+11404>, 
          0x573dde <exec_byte_code+11404>, 
          0x574023 <exec_byte_code+11985> <repeats 64 times>}
        count = 4
        op = <optimized out>
        vectorp = 0x911150 <pure+923216>
        stack = {
          pc = 0xabbca3 <pure+2671011> "\006\006\071\203\233", 
          byte_string = 9507113, 
          byte_string_start = 0xabbc2f <pure+2670895> "\306\020\211?\205\f", 
          next = 0x0
        }
        top = 0x7fffffffe3a8
        result = <optimized out>
        type = <optimized out>
#37 0x00000000005407c2 in funcall_lambda (fun=9507069, nargs=nargs <at> entry=1, 
    arg_vector=arg_vector <at> entry=0x7fffffffe568) at eval.c:2894
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
#38 0x0000000000540d43 in Ffuncall (nargs=nargs <at> entry=2, 
    args=args <at> entry=0x7fffffffe560) at eval.c:2775
        fun = <optimized out>
        original_fun = 12458594
        numargs = 1
        val = <optimized out>
        internal_args = <optimized out>
        i = <optimized out>
#39 0x00000000005421f8 in call1 (fn=<optimized out>, arg1=<optimized out>)
    at eval.c:2579
No locals.
#40 0x00000000004e3415 in command_loop_1 () at keyboard.c:1572
        cmd = <optimized out>
        keybuf = {40, 12441088, 12019776, 12414208, 0, 5440526, 
          140737488348784, 5506371, 12865190, 15763730, 12865190, 0, 0, 
          5508917, 12462130, 12865190, 8583969, 15763730, 15763730, 5087554, 
          12640486, 12414258, 12414258, 5087849, 15904256, 4000, 0, 0, 0, 
          5512067}
        i = <optimized out>
        prev_modiff = 52
        prev_buffer = 0xbdd600
#41 0x000000000053f358 in internal_condition_case (
    bfun=bfun <at> entry=0x4e2eeb <command_loop_1>, handlers=12466210, 
    hfun=hfun <at> entry=0x4da166 <cmd_error>) at eval.c:1350
        val = <optimized out>
        c = <optimized out>
#42 0x00000000004d5f90 in command_loop_2 (ignore=ignore <at> entry=12414258)
    at keyboard.c:1196
        val = <optimized out>
#43 0x000000000053f239 in internal_catch (tag=12462178, 
    func=func <at> entry=0x4d5f76 <command_loop_2>, arg=12414258) at eval.c:1111
        val = <optimized out>
        c = <optimized out>
#44 0x00000000004d5f28 in command_loop () at keyboard.c:1175
No locals.
#45 0x00000000004d9dc8 in recursive_edit_1 () at keyboard.c:785
        val = <optimized out>
#46 0x00000000004da098 in Frecursive_edit () at keyboard.c:856
        buffer = <optimized out>
#47 0x00000000004d59a9 in main (argc=<optimized out>, argv=0x7fffffffe8a8)
    at emacs.c:1642
        dummy = 6036221
        stack_bottom_variable = 0 '\000'
        do_initial_setlocale = <optimized out>
        dumping = false
        skip_args = 0
        rlim = {
          rlim_cur = 8720000, 
          rlim_max = 18446744073709551615
        }
        no_loadup = false
        junk = 0x0
        dname_arg = 0x0
        ch_to_dir = 0x0
        original_pwd = 0x0

Lisp Backtrace:
"vconcat" (0xffffd4f8)
"eval" (0xffffd580)
"progn" (0xffffd688)
"unwind-protect" (0xffffd758)
"save-current-buffer" (0xffffd838)
"let" (0xffffd988)
"testbug" (0xffffda40)
"eval" (0xffffdc20)
"eval-last-sexp-1" (0xffffddc8)
"eval-last-sexp" (0xffffdf78)
"eval-print-last-sexp" (0xffffe1a0)
"funcall-interactively" (0xffffe198)
"call-interactively" (0xffffe3b0)
"command-execute" (0xffffe568)


In GNU Emacs 24.4.50.1 (x86_64-unknown-linux-gnu, X toolkit)
 of 2014-09-13 on maru2
Repository revision: 111226 md5i <at> md5i.com-20140828004556-7osmjrt8py7oq07z
Windowing system distributor `The X.Org Foundation', version 11.0.11600000
System Description:	Debian GNU/Linux unstable (sid)

Configured using:
 `configure --without-toolkit-scroll-bars --with-x-toolkit=lucid
 'CFLAGS=-Og -ggdb' --with-wide-int'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB

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


-- 
Michael Welsh Duggan
(md5i <at> md5i.com)

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#18473; Package emacs. (Sun, 14 Sep 2014 17:12:02 GMT) Full text and rfc822 format available.

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

From: Dmitry Antipov <dmantipov <at> yandex.ru>
To: Michael Welsh Duggan <md5i <at> md5i.com>, 
 Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Cc: 18473 <at> debbugs.gnu.org
Subject: Re: bug#18473: 24.4.50; SEGFAULT when vconcatting more than 2048
 vectors
Date: Sun, 14 Sep 2014 21:10:31 +0400
On 09/14/2014 06:37 AM, Michael Welsh Duggan wrote:

> With attached foo.el:
>
> emacs -Q -l foo.el
> (testbug 2049)
> C-j
>
> SEGFAULT

Also reproduced in emacs-24 branch (here and below, emacs-24 branch is assumed).

This looks a fundamental bug in eval_sub, probably introduced in r112828.
When compiling with --enable-checking, it gives:

../../emacs-24/src/eval.c:184: Emacs fatal error: assertion failed: pdl->kind == SPECPDL_BACKTRACE

(gdb) bt 10
#0  0x000000000056a602 in terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at ../../emacs-24/src/emacs.c:351
#1  0x00000000005f1d8e in die (msg=0x714b20 "pdl->kind == SPECPDL_BACKTRACE", file=0x714ab8 "../../emacs-24/src/eval.c", line=184)
    at ../../emacs-24/src/alloc.c:6833
#2  0x000000000060c5e6 in set_backtrace_args (pdl=0x1327bc0, args=0x7fffec33e010) at ../../emacs-24/src/eval.c:184
#3  0x0000000000611b76 in eval_sub (form=...) at ../../emacs-24/src/eval.c:2154
#4  0x0000000000611c3d in eval_sub (form=...) at ../../emacs-24/src/eval.c:2170
#5  0x000000000061141b in Feval (form=..., lexical=...) at ../../emacs-24/src/eval.c:2003
#6  0x000000000061347d in Ffuncall (nargs=3, args=0x7fffffffbfa8) at ../../emacs-24/src/eval.c:2818
#7  0x000000000065ce9a in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., nargs=1, args=0x7fffffffc7e0)
    at ../../emacs-24/src/bytecode.c:916
#8  0x0000000000613c9b in funcall_lambda (fun=..., nargs=1, arg_vector=0x7fffffffc7d8) at ../../emacs-24/src/eval.c:2983
#9  0x0000000000613633 in Ffuncall (nargs=2, args=0x7fffffffc7d0) at ../../emacs-24/src/eval.c:2864
#10 0x000000000065ce9a in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., nargs=1, args=0x7fffffffd050)
    at ../../emacs-24/src/bytecode.c:916

In eval.c:

  2134        else if (XSUBR (fun)->max_args == MANY)
  2135          {
  2136            /* Pass a vector of evaluated arguments.  */
  2137            Lisp_Object *vals;
  2138            ptrdiff_t argnum = 0;
  2139            USE_SAFE_ALLOCA;
  2140
  2141            SAFE_ALLOCA_LISP (vals, XINT (numargs));
  2142
  2143            GCPRO3 (args_left, fun, fun);
  2144            gcpro3.var = vals;
  2145            gcpro3.nvars = 0;
  2146
  2147            while (!NILP (args_left))
  2148              {
  2149                vals[argnum++] = eval_sub (Fcar (args_left));
  2150                args_left = Fcdr (args_left);
  2151                gcpro3.nvars = argnum;
  2152              }
  2153
  2154            set_backtrace_args (specpdl_ptr - 1, vals);
  2155            set_backtrace_nargs (specpdl_ptr - 1, XINT (numargs));
  2156
  2157            val = (XSUBR (fun)->function.aMANY) (XINT (numargs), vals);
  2158            UNGCPRO;
  2159            SAFE_FREE ();
  2160          }

At 2141, if numargs is > 2047 (and so allocation size exceeds MAX_ALLOCA on
a 64-bit system), SAFE_ALLOCA_LISP pushes an entry of type SPECPDL_UNWIND to
specpdl stack.  At line 2154, set_backtrace_args modifies this entry assuming
SPECPDL_BACKTRACE.  Oops.

Dmitry




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#18473; Package emacs. (Mon, 15 Sep 2014 06:39:02 GMT) Full text and rfc822 format available.

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

From: Dmitry Antipov <dmantipov <at> yandex.ru>
To: Michael Welsh Duggan <md5i <at> md5i.com>, 
 Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Cc: 18473 <at> debbugs.gnu.org
Subject: Re: bug#18473: 24.4.50; SEGFAULT when vconcatting more than 2048
 vectors
Date: Mon, 15 Sep 2014 10:38:19 +0400
[Message part 1 (text/plain, inline)]
On 09/14/2014 09:10 PM, Dmitry Antipov wrote:

> In eval.c:
>
>    2134        else if (XSUBR (fun)->max_args == MANY)
>    2135          {
>    2136            /* Pass a vector of evaluated arguments.  */
>    2137            Lisp_Object *vals;
>    2138            ptrdiff_t argnum = 0;
>    2139            USE_SAFE_ALLOCA;
>    2140
>    2141            SAFE_ALLOCA_LISP (vals, XINT (numargs));
>    2142
>    2143            GCPRO3 (args_left, fun, fun);
>    2144            gcpro3.var = vals;
>    2145            gcpro3.nvars = 0;
>    2146
>    2147            while (!NILP (args_left))
>    2148              {
>    2149                vals[argnum++] = eval_sub (Fcar (args_left));
>    2150                args_left = Fcdr (args_left);
>    2151                gcpro3.nvars = argnum;
>    2152              }
>    2153
>    2154            set_backtrace_args (specpdl_ptr - 1, vals);
>    2155            set_backtrace_nargs (specpdl_ptr - 1, XINT (numargs));
>    2156
>    2157            val = (XSUBR (fun)->function.aMANY) (XINT (numargs), vals);
>    2158            UNGCPRO;
>    2159            SAFE_FREE ();
>    2160          }
>
> At 2141, if numargs is > 2047 (and so allocation size exceeds MAX_ALLOCA on
> a 64-bit system), SAFE_ALLOCA_LISP pushes an entry of type SPECPDL_UNWIND to
> specpdl stack.  At line 2154, set_backtrace_args modifies this entry assuming
> SPECPDL_BACKTRACE.  Oops.

Michael, try this.  Stefan, please review.

Dmitry


[bug18473.patch (text/x-diff, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#18473; Package emacs. (Mon, 15 Sep 2014 13:10:02 GMT) Full text and rfc822 format available.

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

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Dmitry Antipov <dmantipov <at> yandex.ru>
Cc: Michael Welsh Duggan <md5i <at> md5i.com>, 18473 <at> debbugs.gnu.org
Subject: Re: bug#18473: 24.4.50;
 SEGFAULT when vconcatting more than 2048 vectors
Date: Mon, 15 Sep 2014 09:09:17 -0400
> -	  set_backtrace_args (specpdl_ptr - 1, vals);
> -	  set_backtrace_nargs (specpdl_ptr - 1, XINT (numargs));
> +	  set_backtrace_args (backtrace_top (), vals, XINT (numargs));

I'm not thrilled at the idea of having to call backtrace_top every time,
instead of just using "specpdl_ptr - 1".  I'd much rather compute
specpdl_ptr - 1 before calling USE_SAFE_ALLOCA, for example.

BTW, don't we have the same problem for the subsequent call to
backtrace_debug_on_exit (and this one is worse because it is shared
among all the different kinds of calls, so we *really* don't want to
slow it down).


        Stefan




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#18473; Package emacs. (Mon, 15 Sep 2014 15:05:01 GMT) Full text and rfc822 format available.

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

From: Dmitry Antipov <dmantipov <at> yandex.ru>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: Michael Welsh Duggan <md5i <at> md5i.com>, 18473 <at> debbugs.gnu.org
Subject: Re: bug#18473: 24.4.50; SEGFAULT when vconcatting more than 2048
 vectors
Date: Mon, 15 Sep 2014 19:04:37 +0400
On 09/15/2014 05:09 PM, Stefan Monnier wrote:

> I'm not thrilled at the idea of having to call backtrace_top every time,
> instead of just using "specpdl_ptr - 1".  I'd much rather compute
> specpdl_ptr - 1 before calling USE_SAFE_ALLOCA, for example.

Hm...this simple fix:

=== modified file 'src/eval.c'
--- src/eval.c	2014-09-02 06:29:01 +0000
+++ src/eval.c	2014-09-15 14:57:18 +0000
@@ -2136,6 +2136,7 @@
 	  /* Pass a vector of evaluated arguments.  */
 	  Lisp_Object *vals;
 	  ptrdiff_t argnum = 0;
+	  union specbinding *pdl = specpdl_ptr - 1;
 	  USE_SAFE_ALLOCA;

 	  SAFE_ALLOCA_LISP (vals, XINT (numargs));
@@ -2151,8 +2152,8 @@
 	      gcpro3.nvars = argnum;
 	    }

-	  set_backtrace_args (specpdl_ptr - 1, vals);
-	  set_backtrace_nargs (specpdl_ptr - 1, XINT (numargs));
+	  set_backtrace_args (pdl, vals);
+	  set_backtrace_nargs (pdl, XINT (numargs));

 	  val = (XSUBR (fun)->function.aMANY) (XINT (numargs), vals);
 	  UNGCPRO;

causes bootstrap crash (with emacs-24).  Hard to explain why, huh?

> BTW, don't we have the same problem for the subsequent call to
> backtrace_debug_on_exit (and this one is worse because it is shared
> among all the different kinds of calls, so we *really* don't want to
> slow it down).

IIUC this applies only to apply_lambda, where we call to backtrace_debug_on_exit
between SAFE_ALLOCA_LISP and SAFE_FREE.

Dmitry




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#18473; Package emacs. (Mon, 15 Sep 2014 19:16:01 GMT) Full text and rfc822 format available.

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

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Dmitry Antipov <dmantipov <at> yandex.ru>
Cc: Michael Welsh Duggan <md5i <at> md5i.com>, 18473 <at> debbugs.gnu.org
Subject: Re: bug#18473: 24.4.50;
 SEGFAULT when vconcatting more than 2048 vectors
Date: Mon, 15 Sep 2014 15:15:03 -0400
> causes bootstrap crash (with emacs-24).  Hard to explain why, huh?

The PDL stack is in a vector that gets resized (typically by
realloc+memcpy) occasionally.


        Stefan




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#18473; Package emacs. (Tue, 16 Sep 2014 04:20:02 GMT) Full text and rfc822 format available.

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

From: Dmitry Antipov <dmantipov <at> yandex.ru>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 18473 <at> debbugs.gnu.org
Subject: Re: bug#18473: 24.4.50; SEGFAULT when vconcatting more than 2048
 vectors
Date: Tue, 16 Sep 2014 08:19:20 +0400
On 09/15/2014 11:15 PM, Stefan Monnier wrote:

> The PDL stack is in a vector that gets resized (typically by
> realloc+memcpy) occasionally.

Yes, I forgot about it :-(.

An issue should be fixed in emacs-24 branch, revision 117502.

Dmitry





Reply sent to Paul Eggert <eggert <at> cs.ucla.edu>:
You have taken responsibility. (Tue, 23 Sep 2014 15:53:02 GMT) Full text and rfc822 format available.

Notification sent to Michael Welsh Duggan <md5i <at> md5i.com>:
bug acknowledged by developer. (Tue, 23 Sep 2014 15:53:02 GMT) Full text and rfc822 format available.

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

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: Dmitry Antipov <dmantipov <at> yandex.ru>
Cc: 18473-done <at> debbugs.gnu.org
Subject: Re: 24.4.50; SEGFAULT when vconcatting more than 2048 vectors
Date: Tue, 23 Sep 2014 08:52:10 -0700
Thanks for fixing the bug.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 22 Oct 2014 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 10 years and 304 days ago.

Previous Next


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