bug-guile
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#11083: guile-2.0.5 bug report


From: Kiyoshi KANAZAWA
Subject: bug#11083: guile-2.0.5 bug report
Date: Sun, 1 Apr 2012 19:42:07 +0900 (JST)

Hi, Mark,

I found scm_from_stringn () is called with bad address.
Following is the back trace of core which I encountered during making 
guile-2.0.5 with gcc -m64. (gcc version is 3.4.3)

% pwd
/tmp/guile-2.0.5/libguile/.libs 
% dbx guile ../core
For information about new features see `help changes'
To remove this message, put `dbxenv suppress_startup_message 7.9' in your .dbxrc
Reading guile
core file header read successfully
Reading ld.so.1
Reading libguile-2.0.so.22.4.0
Reading libgc.so.1.0.3
Reading libpthread.so.1
Reading libdl.so.1
Reading libffi.so.5.0.10
Reading libintl.so.8.1.1
Reading libc.so.1
Reading libunistring.so.0.1.2
Reading libiconv.so.2.5.1
Reading libgmp.so.10.0.4
dbx: internal warning: "(null)"::srcpath(): srcpath "abs.c" being overriden to 
"abs.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "add.c" being overriden to 
"add.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "add_ui.c" being overriden 
to "add_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "clear.c" being overriden 
to "clear.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "clears.c" being overriden 
to "clears.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp.c" being overriden to 
"cmp.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp_d.c" being overriden 
to "cmp_d.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp_si.c" being overriden 
to "cmp_si.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp_ui.c" being overriden 
to "cmp_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "dump.c" being overriden to 
"dump.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "fits_sint.c" being 
overriden to "fits_sint.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "fits_slong.c" being 
overriden to "fits_slong.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "fits_sshort.c" being 
overriden to "fits_sshort.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "fits_uint.c" being 
overriden to "fits_uint.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "fits_ulong.c" being 
overriden to "fits_ulong.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "fits_ushort.c" being 
overriden to "fits_ushort.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_d.c" being overriden 
to "get_d.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_d_2exp.c" being 
overriden to "get_d_2exp.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_si.c" being overriden 
to "get_si.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_str.c" being overriden 
to "get_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_ui.c" being overriden 
to "get_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "init.c" being overriden to 
"init.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "init2.c" being overriden 
to "init2.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "inits.c" being overriden 
to "inits.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "inp_str.c" being overriden 
to "inp_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "iset.c" being overriden to 
"iset.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "iset_d.c" being overriden 
to "iset_d.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "iset_si.c" being overriden 
to "iset_si.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "iset_str.c" being 
overriden to "iset_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "iset_ui.c" being overriden 
to "iset_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "mul.c" being overriden to 
"mul.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "mul_2exp.c" being 
overriden to "mul_2exp.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "mul_ui.c" being overriden 
to "mul_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "neg.c" being overriden to 
"neg.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "nextprime.c" being 
overriden to "nextprime.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "out_str.c" being overriden 
to "out_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "pow_ui.c" being overriden 
to "pow_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "random2.c" being overriden 
to "random2.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set.c" being overriden to 
"set.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_d.c" being overriden 
to "set_d.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_q.c" being overriden 
to "set_q.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_si.c" being overriden 
to "set_si.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_str.c" being overriden 
to "set_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_ui.c" being overriden 
to "set_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "size.c" being overriden to 
"size.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "sqrt.c" being overriden to 
"sqrt.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "sub.c" being overriden to 
"sub.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "sub_ui.c" being overriden 
to "sub_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "swap.c" being overriden to 
"swap.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "ui_sub.c" being overriden 
to "ui_sub.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "urandomb.c" being 
overriden to "urandomb.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "abs.c" being overriden to 
"abs.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "clear.c" being overriden 
to "clear.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "clears.c" being overriden 
to "clears.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp.c" being overriden to 
"cmp.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp_si.c" being overriden 
to "cmp_si.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp_ui.c" being overriden 
to "cmp_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "div.c" being overriden to 
"div.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_d.c" being overriden 
to "get_d.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_str.c" being overriden 
to "get_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "init.c" being overriden to 
"init.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "inits.c" being overriden 
to "inits.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "inp_str.c" being overriden 
to "inp_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "mul.c" being overriden to 
"mul.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "neg.c" being overriden to 
"neg.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "out_str.c" being overriden 
to "out_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set.c" being overriden to 
"set.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_si.c" being overriden 
to "set_si.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_str.c" being overriden 
to "set_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_ui.c" being overriden 
to "set_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_z.c" being overriden 
to "set_z.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_d.c" being overriden 
to "set_d.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_f.c" being overriden 
to "set_f.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "swap.c" being overriden to 
"swap.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "add.c" being overriden to 
"add.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "sub.c" being overriden to 
"sub.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "neg.c" being overriden to 
"neg.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "divis.c" being overriden 
to "divis.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "fib2_ui.c" being overriden 
to "fib2_ui.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "dump.c" being overriden to 
"dump.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "mul.c" being overriden to 
"mul.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "random.c" being overriden 
to "random.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "random2.c" being overriden 
to "random2.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "rootrem.c" being overriden 
to "rootrem.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "sqrtrem.c" being overriden 
to "sqrtrem.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_str.c" being overriden 
to "get_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "set_str.c" being overriden 
to "set_str.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "scan0.c" being overriden 
to "scan0.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "scan1.c" being overriden 
to "scan1.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "cmp.c" being overriden to 
"cmp.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "perfsqr.c" being overriden 
to "perfsqr.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "perfpow.c" being overriden 
to "perfpow.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "gcd.c" being overriden to 
"gcd.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "gcdext.c" being overriden 
to "gcdext.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "tdiv_qr.c" being overriden 
to "tdiv_qr.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "get_d.c" being overriden 
to "get_d.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "invert.c" being overriden 
to "invert.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "divexact.c" being 
overriden to "divexact.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "powm.c" being overriden to 
"powm.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "powm_sec.c" being 
overriden to "powm_sec.c"
dbx: internal warning: "(null)"::srcpath(): srcpath "remove.c" being overriden 
to "remove.c"
Reading libltdl.so.7.3.0
Reading librt.so.1
Reading libsocket.so.1
Reading libnsl.so.1
Reading libm.so.2
Reading libgcc_s.so.1
Reading libaio.so.1
Reading libmd.so.1
address@hidden (address@hidden) program terminated by signal SEGV (no mapping 
at the fault address)
Current function is c_strcasecmp
   39         c1 = c_tolower (*p1);
(dbx) print p1
p1 = 0xfffffffffff56ee0 "<bad address 0xfffffffffff56ee0>"

(dbx) where   
current thread: address@hidden
=>[1] c_strcasecmp(s1 = 0xfffffffffff56ee0 "<bad address 0xfffffffffff56ee0>", 
s2 = 0x7fffffb4eb90 "UTF-8"), line 39 in "c-strcasecmp.c"
  [2] u8_conv_from_encoding(fromcode = 0xfffffffffff56ee0 "<bad address 
0xfffffffffff56ee0>", handler = iconveh_escape_sequence, src = 
0xfffffd7fffdfea1a "snarf-check-and-output-texi", srclen = 27U, offsets = 
(nil), resultbuf = (nil), lengthp = 0xfffffd7fffdfdf08) (optimized), at 
0x7fffffa1c9f0 (line ~39) in "u8-conv-from-enc.c"
  [3] u32_conv_from_encoding(fromcode = <value unavailable>, handler = <value 
unavailable>, src = <value unavailable>, srclen = 27U, offsets = (nil), 
resultbuf = (nil), lengthp = 0xfffffd7fffdfdf70) (optimized), at 0x7fffffa1c2a0 
(line ~52) in "u-conv-from-enc.h"
  [4] scm_from_stringn(str = 0xfffffd7fffdfea1a "snarf-check-and-output-texi", 
len = 27U, encoding = 0xfffffffffff56ee0 "<bad address 0xfffffffffff56ee0>", 
handler = SCM_FAILED_CONVERSION_ESCAPE_SEQUENCE), line 1515 in "strings.c"
  [5] locale_arguments_to_string_list(argc = 5, argv = 0xfffffd7fffdfe688), 
line 394 in "script.c"
  [6] scm_i_set_boot_program_arguments(argc = 0, argv = (nil)), line 405 in 
"script.c"
  [7] invoke_main_func(body_data = 0xfffffd7fffdfe630), line 335 in "init.c"
  [8] c_body(d = 0xfffffd7fffdfe580), line 512 in "continuations.c"
  [9] vm_regular_engine(vm = 0x4da270, program = 0x3560d40, argv = 
0x7fffffec7260, nargs = 1), line 960 in "vm-i-system.c"
  [10] scm_c_vm_run(vm = 0x4da270, program = 0x355a1e0, argv = 
0xfffffd7fffdfe180, nargs = 0), line 567 in "vm.c"
  [11] eval(x = 0x587570, env = 0x3542270), line 341 in "eval.c"
  [12] eval(x = 0x5873b0, env = 0x3542270), line 297 in "eval.c"
  [13] eval(x = 0x4ee920, env = 0x3542240), line 462 in "eval.c"
  [14] boot_closure_apply(closure = (nil), args = (nil)), line 956 in "eval.c"
  [15] vm_regular_engine(vm = 0x4da270, program = 0x355a060, argv = 
0x7fffffe532b0, nargs = 1), line 960 in "vm-i-system.c"
  [16] scm_c_vm_run(vm = 0x4da270, program = 0x4ff1c0, argv = 
0xfffffd7fffdfe4d0, nargs = 4), line 567 in "vm.c"
  [17] scm_call_4(proc = 0x4ff1c0, arg1 = (nil), arg2 = (nil), arg3 = (nil), 
arg4 = (nil)), line 507 in "eval.c"
  [18] scm_i_with_continuation_barrier(body = 0x7fffffe49ec0 = 
&`libguile-2.0.so.22.4.0`continuations.c`c_body(register void *d), body_data = 
0xfffffd7fffdfe580, handler = 0x7fffffe49ef0 = 
&`libguile-2.0.so.22.4.0`continuations.c`c_handler(register void *d, register 
SCM tag, register SCM args), handler_data = 0xfffffd7fffdfe580, 
pre_unwind_handler = 0x7fffffe49f50 = 
&`libguile-2.0.so.22.4.0`continuations.c`pre_unwind_handler(register void 
*error_port, register SCM tag, register SCM args), pre_unwind_handler_data = 
0x4da1a0), line 450 in "continuations.c"
  [19] scm_c_with_continuation_barrier(func = (nil), data = (nil)), line 546 in 
"continuations.c"
  [20] with_guile_and_parent(base = 0xfffffd7fffdfe5e0, data = (nil)), line 902 
in "threads.c"
  [21] GC_call_with_stack_base(fn = (nil), arg = (nil)), line 1530 in "misc.c"
  [22] scm_i_with_guile_and_parent(func = (nil), data = (nil), parent = (nil)), 
line 945 in "threads.c"
  [23] scm_boot_guile(argc = 0, argv = (nil), main_func = (nil), closure = 
(nil)), line 319 in "init.c"
  [24] main(argc = 0, argv = (nil)), line 71 in "guile.c"


Regards,

--- Kiyoshi <address@hidden>


--- On Fri, 2012/3/30, Kiyoshi KANAZAWA <address@hidden> wrote:

> Hi, Mark,
> 
> Thank you for your kindness.
> 
> I'm discussing with a member of gc project these 5 days.
> He also told me to configure with "--enable-threads=posix" instead of 
> -DGC_THREADS.
> 
> And I'm also testing the latest gc-7.2 candidate and gc-7.3 (developement) 
> candidate.
> 
> 
> Now, I'm retrying to build guile-2.0.5 again.
> Make & make check pass with gcc-3.4.3 -m32, but make fail with -m64.
> Message of make check is:as follows.
> (libguile-2.0.so.22 is "ELF 64-bit LSB executable", so that it can be linked.)
> 
> make  all-am
> make[3]: Entering directory `/tmp/guile-2.0.5/libguile'
>   GEN    guile-procedures.texi
> ld.so.1: guile: fatal: libguile-2.0.so.22: open failed: No such file or 
> directory
> /bin/bash: line 1: 23126 Broken Pipe             cat alist.doc arbiters.doc 
> array-handle.doc array-map.doc arrays.doc async.doc backtrace.doc boolean.doc 
> bitvectors.doc bytevectors.doc chars.doc control.doc continuations.doc 
> debug.doc deprecated.doc deprecation.doc dynl.doc dynwind.doc eq.doc 
> error.doc eval.doc evalext.doc expand.doc extensions.doc feature.doc 
> filesys.doc fluids.doc foreign.doc fports.doc gc-malloc.doc gc.doc 
> gettext.doc generalized-arrays.doc generalized-vectors.doc goops.doc 
> gsubr.doc guardians.doc hash.doc hashtab.doc hooks.doc i18n.doc init.doc 
> ioext.doc keywords.doc list.doc load.doc macros.doc mallocs.doc memoize.doc 
> modules.doc numbers.doc objprop.doc options.doc pairs.doc ports.doc print.doc 
> procprop.doc procs.doc promises.doc r6rs-ports.doc random.doc rdelim.doc 
> read.doc root.doc rw.doc scmsigs.doc script.doc simpos.doc smob.doc sort.doc 
> srcprop.doc srfi-1.doc srfi-4.doc srfi-13.doc srfi-14.doc srfi-60.doc 
> stackchk.doc
>  stacks.doc stime.doc strings.doc strorder.doc strports.doc struct.doc 
> symbols.doc threads.doc throw.doc trees.doc uniform.doc values.doc 
> variable.doc vectors.doc version.doc vports.doc weaks.doc dynl.doc posix.doc 
> net_db.doc socket.doc regex-posix.doc
>      23127 Killed                  | GUILE_AUTO_COMPILE=0 
> ../meta/uninstalled-env guild snarf-check-and-output-texi > 
> guile-procedures.texi
> make[3]: *** [guile-procedures.texi] Error 1
> 
> Regards,
> 
> --- Kiyoshi <address@hidden>
> 
> --- On Thu, 2012/3/29, Mark H Weaver <address@hidden> wrote:
> 
> > Kiyoshi KANAZAWA <address@hidden> writes:
> > > Thank you Mark,
> > > Sending this again with Cc:
> > >
> > > (1) Now, make succeeds with threads
> > > Version of libgc is 7.1, but I found some macro define is required for 
> > > threads on Solaris.
> > > After re-install gc-7.1 with -DGC_SOLARIS_THREADS or -DGC_THREADS,
> > > make succeeds.
> > 
> > This is not my area of expertise, but for lack of other suggestions, I
> > have two ideas:
> > 
> > 1. You could try recompiling libgc using POSIX threads instead of
> >    Solaris threads, and then rebuilding Guile from scratch, starting
> >    with configure, and linking against the new libgc.
> > 
> >    Guile supports only POSIX threads, and I wouldn't be surprised if
> >    there are problems associated with linking Guile against a libgc that
> >    uses a different threading library with slightly different semantics.
> > 
> > 2. You could try a newer version of libgc: 7.2alpha6, from
> >    
> > http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.2alpha6.tar.gz
> > 
> >    Despite the scary version number, Hans Boehm himself now recommends
> >    this version because 7.1 is so old (see "Where to get the collector"
> >    at http://www.hpl.hp.com/personal/Hans_Boehm/gc/ )
> > 
> >     Thanks,
> >       Mark
> > 
> > 
> > > (2) Segmentation Fault occur in make check
> > > Still encounterd FAILS as follows:
> > > make  check-TESTS
> > > make[5]: Entering directory `/tmp/guile-2.0.5/test-suite/standalone'
> > > Assertion failed: SCM_I_IS_THREAD (data.thread), file threads.c, line 1135
> > > /bin/bash: line 5: 11634 Abort                   srcdir="." builddir="." 
> > > CHARSETALIASDIR
> > > ="/tmp/guile-2.0.5/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" 
> > > ${dir}$tst
> > > FAIL: test-system-cmds
> > >   :
> > > PASS: test-extensions
> > > /bin/bash: line 5: 12409 Segmentation Fault      srcdir="." builddir="." 
> > > CHARSETALIASDIR
> > > ="/tmp/guile-2.0.5/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" 
> > > ${dir}$tst
> > > FAIL: test-with-guile-module
> > > PASS: test-scm-with-guile
> > > /bin/bash: line 5: 12455 Segmentation Fault      srcdir="." builddir="." 
> > > CHARSETALIASDIR
> > > ="/tmp/guile-2.0.5/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" 
> > > ${dir}$tst
> > > FAIL: test-scm-spawn-thread
> > > /bin/bash: line 5: 12479 Segmentation Fault      srcdir="." builddir="." 
> > > CHARSETALIASDIR
> > > ="/tmp/guile-2.0.5/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" 
> > > ${dir}$tst
> > > FAIL: test-pthread-create
> > > SKIP: test-pthread-create-secondary
> > > ==================================
> > > 4 of 27 tests failed
> > > (1 test was not run)
> > > Please report to address@hidden
> > > ==================================
> >
>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]