[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
abort in garbage collection (when loading an image)
From: |
Alex Schroeder |
Subject: |
abort in garbage collection (when loading an image) |
Date: |
Mon, 07 Apr 2003 17:13:24 +0200 |
User-agent: |
Gnus/5.090016 (Oort Gnus v0.16) Emacs/21.3.50 |
In GNU Emacs 21.3.50.2 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
of 2003-04-06 on confusibombus
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_US.ISO-8859-1
locale-coding-system: iso-latin-1
default-enable-multibyte-characters: t
Program received signal SIGABRT, Aborted.
0x402a3a51 in kill () from /lib/libc.so.6
(gdb) bt
#0 0x402a3a51 in kill () from /lib/libc.so.6
#1 0x080d2c3a in abort () at emacs.c:412
#2 0x08119fd5 in mark_object (argptr=0x921ef84) at alloc.c:4846
#3 0x0811a001 in mark_object (argptr=0xbffea350) at alloc.c:4863
#4 0x08118dae in mark_memory (start=0xbffea38c, end=0xbffff9e4) at alloc.c:3557
#5 0x08118e22 in mark_stack () at alloc.c:3829
#6 0x081193e5 in Fgarbage_collect () at alloc.c:4199
#7 0x0812c122 in Ffuncall (nargs=2, args=0xbffea500) at eval.c:2680
#8 0x08153afc in Fbyte_code (bytestr=947237516, vector=1213973912, maxdepth=9)
at bytecode.c:709
#9 0x0812c801 in funcall_lambda (fun=1213970064, nargs=5,
arg_vector=0xbffea624) at eval.c:2927
#10 0x0812c3c1 in Ffuncall (nargs=6, args=0xbffea620) at eval.c:2797
#11 0x0812bcdb in Fapply (nargs=2, args=0xbffea6e4) at eval.c:2247
#12 0x0812c246 in Ffuncall (nargs=3, args=0xbffea6e0) at eval.c:2721
#13 0x08153afc in Fbyte_code (bytestr=947237420, vector=1212972600, maxdepth=5)
at bytecode.c:709
#14 0x0812c801 in funcall_lambda (fun=1215358312, nargs=6,
arg_vector=0xbffea814) at eval.c:2927
#15 0x0812c3c1 in Ffuncall (nargs=7, args=0xbffea810) at eval.c:2797
#16 0x0812c0c7 in call6 (fn=405903372, arg1=405635444, arg2=959487348,
arg3=405466548, arg4=405466500, arg5=405466500, arg6=405466500) at eval.c:2656
#17 0x080fc587 in Finsert_file_contents (filename=959487348, visit=405466548,
beg=405466500, end=405466500, replace=405466500) at fileio.c:3641
#18 0x0812b98d in Feval (form=1478236184) at eval.c:2109
#19 0x0812a7ab in Fcondition_case (args=1495676620) at eval.c:1298
#20 0x08153faa in Fbyte_code (bytestr=941364680, vector=1209800336, maxdepth=4)
at bytecode.c:891
#21 0x0812c801 in funcall_lambda (fun=1209800064, nargs=6,
arg_vector=0xbffff1a4) at eval.c:2927
#22 0x0812c3c1 in Ffuncall (nargs=7, args=0xbffff1a0) at eval.c:2797
#23 0x08153afc in Fbyte_code (bytestr=941362432, vector=1209798488, maxdepth=8)
at bytecode.c:709
#24 0x0812c801 in funcall_lambda (fun=1209797820, nargs=4,
arg_vector=0xbffff2b4) at eval.c:2927
#25 0x0812c3c1 in Ffuncall (nargs=5, args=0xbffff2b0) at eval.c:2797
#26 0x08153afc in Fbyte_code (bytestr=941357112, vector=1209792612, maxdepth=6)
at bytecode.c:709
#27 0x0812c801 in funcall_lambda (fun=1209792512, nargs=1,
arg_vector=0xbffff3c4) at eval.c:2927
#28 0x0812c3c1 in Ffuncall (nargs=2, args=0xbffff3c0) at eval.c:2797
#29 0x08153afc in Fbyte_code (bytestr=958249060, vector=1227029112, maxdepth=2)
at bytecode.c:709
#30 0x0812c801 in funcall_lambda (fun=1213494656, nargs=0,
arg_vector=0xbffff4e4) at eval.c:2927
#31 0x0812c3c1 in Ffuncall (nargs=1, args=0xbffff4e0) at eval.c:2797
#32 0x0812bff1 in apply1 (fn=421721324, arg=405466500) at eval.c:2492
#33 0x08127f5e in Fcall_interactively (function=421721324,
record_flag=405466500, keys=1225574216) at callint.c:395
#34 0x080df9e5 in Fcommand_execute (cmd=421721324, record_flag=405466500,
keys=405466500, special=405466500) at keyboard.c:9618
#35 0x080d62b1 in command_loop_1 () at keyboard.c:1753
#36 0x0812a89d in internal_condition_case (bfun=0x80d55b0 <command_loop_1>,
handlers=405563108, hfun=0x80d51b4 <cmd_error>) at eval.c:1351
#37 0x080d5478 in command_loop_2 () at keyboard.c:1290
#38 0x0812a415 in internal_catch (tag=405524412, func=0x80d5454
<command_loop_2>, arg=405466500) at eval.c:1112
#39 0x080d5423 in command_loop () at keyboard.c:1269
#40 0x080d4f78 in recursive_edit_1 () at keyboard.c:985
#41 0x080d50a0 in Frecursive_edit () at keyboard.c:1041
#42 0x080d3f43 in main (argc=3, argv=0xbffffc54) at emacs.c:1659
(gdb) up
#1 0x080d2c3a in abort () at emacs.c:412
412 kill (getpid (), SIGABRT);
(gdb) up
#2 0x08119fd5 in mark_object (argptr=0x921ef84) at alloc.c:4846
4846 abort ();
(gdb) up
#3 0x0811a001 in mark_object (argptr=0xbffea350) at alloc.c:4863
4863 mark_object (&ptr->car);
(gdb) down
#2 0x08119fd5 in mark_object (argptr=0x921ef84) at alloc.c:4846
4846 abort ();
(gdb) p obj
$1 = 153004648
(gdb) xtype obj
Lisp_Int
0
(gdb) xint obj
$2 = -115430808
I then read the section "Debugging problems which happen in GC" in
etc/DEBUG. It wasn't immediately obvious to me what to do (me not
being a C programmer), but here is what I tried based on the text:
(gdb) p last_marked
$3 = {0x82a4ea8, 0x82a4e8c, 0x82a4eb4, 0x82a4e90, 0x82a4ea4, 0x82a4e88,
0x82a4e68, 0x82a4e7c, 0x82a4e74, 0x82a4e84, 0x82a4e60, 0x82a4e94, 0x82a4e64,
0x82a4eb8, 0x82a4e9c, 0x82a4e78, 0x82725b8, 0x9006e08, 0x9006e0c, 0x9006e10,
0x9006e14, 0x9006e18, 0x9006e1c, 0x9006e20, 0x9006e24, 0x9006e28, 0x9006e2c,
...
(gdb) p last_marked_index
$4 = 119
(gdb) p last_marked[last_marked_index]
$5 = (int *) 0x8419370
(gdb) p last_marked[last_marked_index-1]
$6 = (int *) 0x921ef84
This address is the same as the argptr to mark_object() from the
backtrace.
(gdb) p argptr
$7 = (int *) 0x921ef84
I then tried find out about argptr, but I'm not sure I'm doing the
right thing, here.
(gdb) xtype argptr
Argument to arithmetic operation not a number or boolean.
(gdb) xtype &argptr
Argument to arithmetic operation not a number or boolean.
(gdb) p &argptr
$8 = (int **) 0xbffea2d0
(gdb) p *argptr
$9 = -1457608088
(gdb) pr *argptr
(gdb) p *argptr
$10 = -1457608088
(gdb) xtype *argptr
Lisp_Misc
Lisp_Misc_Free
(gdb) xmisc *argptr
Ambiguous command "xmisc *argptr": xmiscfree, xmisctype.
(gdb) xmiscfree *argptr
$11 = (struct Lisp_Free *) 0x91eaa68
Hm... Now what? I tried to print something else about this struct,
but I guess I am missing something...
(gdb) p 0x91eaa68
$12 = 153004648
(gdb) print 0x91eaa68
$13 = 153004648
(gdb) p * 0x91eaa68
$14 = 2147442347
(gdb) p * 0x91eaa68
$15 = 2147442347
(gdb) p & 0x91eaa68
Attempt to take address of value not located in memory.
(gdb) p &0x91eaa68
Attempt to take address of value not located in memory.
(gdb) xmisctype *argptr
Cannot access memory at address 0xfff5eab
(gdb) xmiscfree *argptr
$16 = (struct Lisp_Free *) 0xfff5eab
(gdb) p
$17 = (struct Lisp_Free *) 0xfff5eab
Alex.
- abort in garbage collection (when loading an image),
Alex Schroeder <=