Hi,
my XEmacs 21.5.19 crashes in garbage collection
when compiled with kkcc and mule support,
on sun solaris 5.8.
Disabling either mule OR kkcc makes the crash disappear.
I tried
- disabling all I could in configure.
- compilers: gcc(2.8.1) or Sun CC(6.1)
- "-vanilla" switch
I get the same result.
With "-vanilla": first thing I do is
M-x garbage-collect
to provoke crash.
Sylvain.
Hand generated bug-report:
==================================================
uname -a: SunOS louvre 5.8 Generic_108528-14 sun4u sparc SUNW,Ultra-5_10
configure --prefix=/home/smazet/ROOT/sun4-SunOS-5.8 \
--with-xim=no --pdump \
--with-database=no --with-ldap=no \
--with-site-modules=no --with-modules=no \
--extra-verbose --dynamic=yes \
--use-kkcc --site-prefixes=/usr/local \
--with-mule=yes --with-xfs=no --debug \
--error-checking=all --memory-usage-stats
XEmacs 21.5-b19 "chives" (+CVS-20050217) configured for `sparc-sun-solaris2.8'.
Compilation Environment and Installation Defaults:
Source code location: /home/smazet/ROOT/share/xemacs-21.5.19
Installation prefix: /home/smazet/ROOT/sun4-SunOS-5.8
Additional prefixes: /usr/local
Runtime library search path: /usr/local/lib:/usr/openwin/lib:/opt/SUNWdt/lib
Operating system description file: `s/sol2.h'
Machine description file: `m/sparc.h'
Compiler version: cc: Sun WorkShop 6 update 1 C 5.2 2000/09/11
- Compiler command: /opt/SUNWspro-6.1/bin/cc -v -g
libc version: SUNWcsl 11.8.0,REV=2000.01.08.18.12
Relocating allocator for buffers: yes
GNU version of malloc: yes
Window System:
Compiling in support for the X window system:
- X Windows headers location: /usr/openwin/include
- X Windows libraries location: /usr/openwin/lib
- Handling WM_COMMAND properly.
Using Lucid menubars.
Using Lucid scrollbars.
Using Motif dialog boxes.
Using Motif native widgets.
TTY:
Compiling in support for ncurses.
Images:
Compiling in support for GIF images (builtin).
Compiling in support for XPM images.
Compiling in support for PNG images.
Compiling in support for JPEG images.
Sound:
Compiling in support for sound (native).
Databases:
Internationalization:
Compiling in support for Mule (multi-lingual Emacs).
Mail:
Compiling in support for "file" mail spool file locking method.
Other Features:
Inhibiting IPv6 canonicalization at startup.
Compiling in support for ToolTalk.
Using the new GC algorithms.
Using the new portable dumper.
Compiling in support for extra debugging code.
Compiling in support for runtime error checking.
WARNING: ---------------------------------------------------------
WARNING: XEmacs will run noticeably more slowly as a result.
WARNING: Error checking is on by default for XEmacs beta releases.
WARNING: ---------------------------------------------------------
============================================================
$ ./src/xemacs -vanilla
[keyboard: M-x garbage-collect]
Fatal error (10).
Your files have been auto-saved.
Use `M-x recover-session' to recover them.
Your version of XEmacs was distributed with a PROBLEMS file that may describe
your crash, and with luck a workaround. Please check it first, but do report
the crash anyway.
Please report this bug by invoking M-x report-emacs-bug, or by selecting
`Send Bug Report' from the Help menu. If that won't work, send ordinary
email to `crashes(a)xemacs.org'. *MAKE SURE* to include this entire output
from this crash, especially including the Lisp backtrace, as well as the
XEmacs configuration from M-x describe-installation (or equivalently, the
file `Installation' in the top of the build tree).
*Please* try *hard* to obtain a C stack backtrace; without it, we are unlikely
to be able to analyze the problem. Locate the core file produced as a result
of this crash (often called `core' or `core.<process-id>', and located in
the directory in which you started XEmacs or your home directory), and type
gdb /build/smazet/xemacs/src/xemacs core
then type `where' at the debugger prompt. No GDB on your system? You may
have DBX, or XDB, or SDB. (Ask your system administrator if you need help.)
If no core file was produced, enable them (often with `ulimit -c unlimited')
in case of future recurrance of the crash.
Lisp backtrace follows:
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
("(in garbage collection)" "[internal]")
#<subr garbage-collect (interactive)>()
# bind (command-debug-status)
call-interactively(garbage-collect)
command-execute(garbage-collect t)
# bind (_execute_command_keys_ _execute_command_name_ prefix-arg)
execute-extended-command(nil)
# bind (command-debug-status)
call-interactively(execute-extended-command)
(dispatch-event "[internal]")
# (condition-case ... . error)
# (catch top-level ...)
/usr/xpg4/bin/sh: 25772 Bus Error(coredump)
$ dbx src/xemacs core
Reading src/xemacs
core file header read successfully
Reading /usr/lib/ld.so.1
Reading /usr/lib/libXm.so.4
Reading /usr/local/lib/libpng12.so.0
Reading /usr/local/lib/libjpeg.so.62
Reading /usr/lib/libz.so.1
Reading /usr/local/lib/libXpm.so.4.11
Reading /usr/openwin/lib/libtt.so.2
Reading /usr/lib/libXmu.so.4
Reading /usr/lib/libXt.so.4
Reading /usr/lib/libXext.so.0
Reading /usr/lib/libX11.so.4
Reading /usr/lib/libSM.so.6
Reading /usr/lib/libICE.so.6
Reading /usr/local/lib/libncurses.so.5
Reading /usr/lib/libintl.so.1
Reading /usr/lib/libm.so.1
Reading /usr/lib/libsocket.so.1
Reading /usr/lib/libnsl.so.1
Reading /usr/lib/libelf.so.1
Reading /usr/lib/libgen.so.1
Reading /usr/lib/libdl.so.1
Reading /usr/lib/libc.so.1
Reading /usr/lib/libmp.so.2
Reading /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1
program terminated by signal BUS (Bus Error)
Current function is fatal_error_signal
3707 kill (qxe_getpid (), sig);
(dbx) where
[1] _kill(0x0, 0xa, 0x0, 0x0, 0x21210, 0x34eb60), at 0xfeb9f77c
=>[2] fatal_error_signal(sig = 10), line 3707 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/emacs.c"
[3] sigacthandler(0xa, 0x0, 0xffbed7c0, 0x0, 0x0, 0x0), at 0xfeb9e7a0
---- called from signal handler with signal 10 (SIGBUS) ------
[4] lispdesc_indirect_count_1(code = -1, idesc = 0x95e9c4, idata = 0x1384800), line 3086 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/alloc.c"
[5] lispdesc_indirect_count(code = -1, idesc = 0x95e9c4, idata = 0x1384800), line 1627 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/lrecord.h"
[6] lispdesc_process_xd_union(desc1 = 0x95e9d8, desc = 0x95e9c4, data = 0x1384800), line 1658 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/lrecord.h"
[7] kkcc_marking(), line 3542 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/alloc.c"
[8] garbage_collect_1(), line 4810 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/alloc.c"
[9] Fgarbage_collect(), line 4947 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/alloc.c"
[10] Ffuncall(nargs = 1, args = 0xffbee060), line 3847 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[11] Fcall_interactively(function = 14202520, record_flag = 14246440, keys = 14247256), line 590 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/callint.c"
[12] Fcommand_execute(cmd = 14202520, record_flag = 14246440, keys = 14247256), line 3114 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[13] Ffuncall(nargs = 3, args = 0xffbee25c), line 3847 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[14] execute_optimized_program(program = 0x1252f10 "^M^]\xc6^M\xc7a\xab^D\xc8\xaa$^M\xc9k\xab^D\xca\xaa^\^M\xa8\xab^G\xcb\xcc^M"\xaa^R^M:\xab^M^M@\xa8\xab^H\xcb\xcc^M@"\xaa^B\xcd!^T)^I\xabKt\xabH\xce^L!^L^Z^[\xcf^L\xd0"\x88^K\xad8^H\xac^S\xd1 \xd2 a\xab^G\xd3 pa\xab^F\xd4 \x88\xaa^D\xd5 \x88\xd6\xd7!\xad^[\xd8\xd9\xcb^KA\xab^D\xda\xaa^B\xdb\n\xdc^K!#"\x88\xd6^N^^!\x88\xdd\xd9!*\x87\xcf^L\xd0"\x87", stack_depth = 7, constants_data = 0xee30ec), line 823 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/bytecode.c"
[15] funcall_compiled_function(fun = 15842232, nargs = 1, args = 0xffbee514), line 3460 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[16] Ffuncall(nargs = 2, args = 0xffbee510), line 3886 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[17] Fcall_interactively(function = 14107336, record_flag = 14247256, keys = 14247256), line 994 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/callint.c"
[18] Fcommand_execute(cmd = 14107336, record_flag = 14247256, keys = 14247256), line 3114 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[19] execute_command_event(command_builder = 0x1188bc0, event = 19354068), line 4104 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/event-stream.c"
[20] Fdispatch_event(event = 19353836), line 4416 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/event-stream.c"
[21] Fcommand_loop_1(), line 600 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/cmdloop.c"
[22] command_loop_1(unused_dummy = 14247256), line 505 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/cmdloop.c"
[23] condition_case_1(handlers = 14242360, bfun = 0x2aabd8 = &`src/xemacs`cmdloop.c`command_loop_1(Lisp_Object unused_dummy), barg = 14247256, hfun = 0x2aa540 = &`src/xemacs`cmdloop.c`cmd_error(Lisp_Object data, Lisp_Object unused_dummy), harg = 14247256), line 1924 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[24] command_loop_3(), line 262 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/cmdloop.c"
[25] command_loop_2(unused_dummy = 14247256), line 275 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/cmdloop.c"
[26] internal_catch(tag = 13999000, func = 0x2aa768 = &`src/xemacs`cmdloop.c`command_loop_2(Lisp_Object unused_dummy), arg = 14247256, threw = (nil), thrown_tag = (nil), backtrace_before_throw = (nil)), line 1530 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/eval.c"
[27] initial_command_loop(load_me = 14247256), line 313 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/cmdloop.c"
[28] xemacs_21_5_b19_sparc_sun_solaris2_8(argc = 2, argv = 0xffbeed04, unused_envp = (nil), restart = 0), line 2599 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/emacs.c"
[29] main(argc = 2, argv = 0xffbeed04, unused_envp = 0xffbeed10), line 3039 in "/home/smazet/ROOT/share/xemacs-21.5.19/src/emacs.c"
============================================================
I also found this in the configure output,
just in case:
checking for Mule input methods
checking for wnn/jllib.h... no
checking for canna/jrkanji.h... no
checking for canna/RK.h... no
Prepending "-lXm" to $libs_x
checking for layout_object_getvalue in -li18n... no