[#11439] comments needed for Random class — "NAKAMURA, Hiroshi" <nakahiro@...>

-----BEGIN PGP SIGNED MESSAGE-----

15 messages 2007/06/12

[#11450] Re: new method dispatch rule (matz' proposal) — David Flanagan <david@...>

This is a late response to the very long thread that started back in

17 messages 2007/06/13

[#11482] Ruby Changes Its Mind About Non-Word Characters — James Edward Gray II <james@...>

Does this look like a bug to anyone else?

10 messages 2007/06/16

[#11505] Question about the patchlevel release cycle — Sylvain Joyeux <sylvain.joyeux@...4x.org>

1.8.6 thread support was broken in bad ways. It stayed for three months

20 messages 2007/06/20
[#11512] Re: Question about the patchlevel release cycle — Urabe Shyouhei <shyouhei@...> 2007/06/20

Hi, I'm the 1.8.6 branch manager.

[#11543] Re: Apple reportedly to ship with ruby 1.8.6-p36 unless informed what to patch — James Edward Gray II <james@...>

On Jun 27, 2007, at 4:47 PM, Bill Kelly wrote:

10 messages 2007/06/27

Re: $2000 USD Reward for help fixing Segmentation Fault in GC

From: Sylvain Joyeux <sylvain.joyeux@...4x.org>
Date: 2007-06-03 18:32:54 UTC
List: ruby-core #11399
On Friday 01 June 2007 20:04:09 Sylvain Joyeux wrote:
> If you can run your application on x86 and still have the crash, run the
> interpreter under valgrind. You'll have to generate a suppression file
> beforehand though.

Brent, you can try the attached file. They are for 1.8.5 under debian, but 
maybe the backtraces will be similar enough to do the trick for you.

Sylvain

Attachments (3)

ruby2.valgrind (9.32 KB, text/plain)
{
   RubyGC:New
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_newobj
}
{
   RubyGC:New
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_newobj
}

{
   RubyGC:New
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_newobj
}
{
   RubyGC:New
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_newobj
}



{
   RubyGC:New
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_newobj
}
{
   RubyGC:New
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_newobj
}





{
   RubyGC:Mark
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_gc_mark_locations
}
{
   RubyGC:Mark
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_gc_mark_locations
}


{
   RubyGC:Mark
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_gc_mark_locations
}
{
   RubyGC:Mark
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   obj:/usr/lib/libruby.so.1.8.4
   fun:rb_gc_mark_locations
}



{
    RubyGC:MarkChildren
    Memcheck:Cond
    fun:gc_mark_children
    fun:mark_locations_array
    fun:garbage_collect
    fun:rb_newobj
}
{
    RubyGC:MarkChildren
    Memcheck:Value4
    fun:gc_mark_children
    fun:mark_locations_array
    fun:garbage_collect
    fun:rb_newobj
}
{
    RubyGC:Mark
    Memcheck:Cond
    fun:gc_mark
    fun:mark_locations_array
    fun:garbage_collect
    fun:rb_newobj
}
{
    RubyGC:Mark
    Memcheck:Value4
    fun:gc_mark
    fun:mark_locations_array
    fun:garbage_collect
    fun:rb_newobj
}
{
    RubyGC:MarkLocations
    Memcheck:Cond
    fun:mark_locations_array
    fun:garbage_collect
    fun:rb_newobj
}
{
    RubyGC:MarkLocations
    Memcheck:Value4
    fun:mark_locations_array
    fun:garbage_collect
    fun:rb_newobj
}

{
   RubyGC:Mark
   Memcheck:Value4
   fun:gc_mark
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
}
{
   RubyGC:Mark
   Memcheck:Cond
   fun:gc_mark
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
}
{
   RubyGC:MarkChildren
   Memcheck:Value4
   fun:gc_mark_children
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
}
{
   RubyGC:MarkLocations
   Memcheck:Cond
   fun:gc_mark_children
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
}
{
   RubyGC:MarkLocations
   Memcheck:Value4
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
   fun:call_cfunc
}
{
   RubyGC:MarkLocations
   Memcheck:Cond
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
   fun:call_cfunc
}


{
   <insert a suppression name here>
   Memcheck:Value4
   fun:gc_mark_children
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
}
{
   <insert a suppression name here>
   Memcheck:Cond
   fun:gc_mark_children
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
   fun:rb_node_newnode
   fun:new_fcall
   fun:ruby_yyparse
   fun:yycompile
   fun:load_file
   fun:rb_load
   fun:rb_require_safe
   fun:rb_f_require
}

{
   <insert a suppression name here>
   Memcheck:Cond
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:do_sym
   fun:dlsym_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlsym
}

{
   <insert a suppression name here>
   Memcheck:Cond
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
}

{
   <insert a suppression name here>
   Memcheck:Cond
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
}
{
   <insert a suppression name here>
   Memcheck:Cond
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   fun:_wordcopy_fwd_dest_aligned
   fun:mempcpy
   fun:_IO_default_xsputn
   fun:vfprintf
   fun:vsnprintf
   fun:snprintf
   fun:backtrace
   fun:rb_longjmp
   fun:rb_exc_raise
   fun:rb_raise
   fun:load_failed
   fun:rb_require_safe
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
   fun:dln_load
   fun:rb_require_safe
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
}

{
   <insert a suppression name here>
   Memcheck:Cond
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
   fun:dln_load
   fun:rb_require_safe
   fun:rb_f_require
   fun:call_cfunc
}

{
   <insert a suppression name here>
   Memcheck:Cond
   obj:/lib/ld-2.3.6.so
   obj:*
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
   fun:rb_dlhandle_initialize
}

{
   <insert a suppression name here>
   Memcheck:Value4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
   fun:rb_dlhandle_initialize
   fun:call_cfunc
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
}

{
   <insert a suppression name here>
   Memcheck:Value4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
   fun:rb_dlhandle_initialize
}

{
   <insert a suppression name here>
   Memcheck:Value4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:dl_open_worker
   obj:/lib/ld-2.3.6.so
   fun:_dl_open
   fun:dlopen_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlopen@@GLIBC_2.1
   fun:rb_dlhandle_initialize
}

{
   <insert a suppression name here>
   Memcheck:Addr4
   obj:/lib/ld-2.3.6.so
   obj:/lib/ld-2.3.6.so
   fun:do_sym
   fun:dlsym_doit
   obj:/lib/ld-2.3.6.so
   fun:_dlerror_run
   fun:dlsym
   fun:rb_dlhandle_sym
   fun:call_cfunc
   fun:rb_call0
   fun:rb_call
   fun:rb_f_send
}

ruby-dbg.valgrind (1.65 KB, text/plain)
{
   <insert a suppression name here>
   Memcheck:Cond
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
}
{
   <insert a suppression name here>
   Memcheck:Cond
   fun:gc_mark
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
}
{
   <insert a suppression name here>
   Memcheck:Cond
   fun:gc_mark_children
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
}
{
   <insert a suppression name here>
   Memcheck:Value4
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
}
{
   <insert a suppression name here>
   Memcheck:Value4
   fun:gc_mark
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
}
{
   <insert a suppression name here>
   Memcheck:Value4
   fun:gc_mark_children
   fun:mark_locations_array
   fun:garbage_collect
   fun:rb_newobj
}



{
   <insert a suppression name here>
   Memcheck:Cond
   fun:gc_mark_children
   fun:mark_locations_array
   fun:thread_mark
   fun:gc_mark_children
}
{
   <insert a suppression name here>
   Memcheck:Cond
   fun:gc_mark
   fun:mark_locations_array
   fun:thread_mark
   fun:gc_mark_children
}
{
   <insert a suppression name here>
   Memcheck:Cond
   fun:mark_locations_array
   fun:thread_mark
   fun:gc_mark_children
}

{
   <insert a suppression name here>
   Memcheck:Value4
   fun:gc_mark_children
   fun:mark_locations_array
   fun:thread_mark
   fun:gc_mark_children
}
{
   <insert a suppression name here>
   Memcheck:Value4
   fun:gc_mark
   fun:mark_locations_array
   fun:thread_mark
   fun:gc_mark_children
}
{
   <insert a suppression name here>
   Memcheck:Value4
   fun:mark_locations_array
   fun:thread_mark
   fun:gc_mark_children
}
ruby.valgrind (2.94 KB, text/plain)
{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}
{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}
{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}
{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}
{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}
{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}
{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:st_foreach
}
{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:st_foreach
}
{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:st_foreach
}
{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:st_foreach
}
{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:st_foreach
}
{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:st_foreach
}



{
   Bla
   Memcheck:Value4
   fun:st_lookup
   fun:rb_mark_generic_ivar
}
{
   Bla
   Memcheck:Cond
   fun:st_lookup
   fun:rb_mark_generic_ivar
}


{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_gc_mark_threads
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}
{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_gc_mark_threads
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_newobj
}

{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_gc
}

{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_gc
}

{
   Bla
   Memcheck:Cond
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_gc
}

{
   Bla
   Memcheck:Value4
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   obj:/usr/lib/libruby.so.1.8.5
   fun:rb_gc
}

In This Thread

Prev Next