[#8815] Segfault in libc strlen, via rb_str_new2 — "Sean E. Russell" <ser@...>

Howdy,

12 messages 2006/09/09
[#8817] Re: Segfault in libc strlen, via rb_str_new2 — Eric Hodel <drbrain@...7.net> 2006/09/09

On Sep 8, 2006, at 10:10 PM, Sean E. Russell wrote:

Re: [BUG] 1.8 CVS regressions

From: "Kent Sibilev" <ksruby@...>
Date: 2006-09-29 20:27:33 UTC
List: ruby-core #8960
Can you try to apply this patch?

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/8922

On 9/29/06, ville.mattila@stonesoft.com <ville.mattila@stonesoft.com> wrote:
> Hello,
>
>  The 1.8 cvs is currently suffering some "make check" regressions.
>
> Enviroment
> uname -a
> SunOS future-beat 5.10 Generic_118855-15 i86pc i386 i86pc
> and sunstudio 64 bit compiler.
>
>
> The change
>
> Tue Sep 19 01:28:00 2006  Minero Aoki  <aamine@loveruby.net>
>
>         * lib/fileutils.rb: backport from HEAD (rev 1.71).
>
>         * lib/fileutils.rb (FileUtils.cp_r): new option
>           :remove_destination.
>
> causes
>  1) Failure:
> test_cp_r(TestFileUtils)
>
> [/workarea4/stonebeat/ruby-1-8-cvs/ruby/test/fileutils/fileasserts.rb:59:in
> `assert_not_symlink'
>
> /workarea4/stonebeat/ruby-1-8-cvs/ruby/test/fileutils/fileasserts.rb:58:in
> `assert_not_symlink'
>      ./fileutils/test_fileutils.rb:302:in `test_cp_r']:
> is a symlink: tmp/cpr_dest2
>
> Change
>
> Mon Sep 25 08:14:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
>
>         * array.c (rb_ary_shift): should clear shifting top element.
>           [ruby-talk:216055]
>
>         * array.c (rb_ary_shift): avoid creating shared object if array
>           size is small.
>
> causes
>
> test_Reader_getRow(TestCSV): E
> test_Reader_s_create(TestCSV): E
> test_Reader_s_new(TestCSV): E
> test_Reader_s_parse(TestCSV): E
> test_Reader_shift(TestCSV): E
> test_StreamBuf_AREF(TestCSV): E
> test_StreamBuf_AREF_n(TestCSV): E
> test_StreamBuf_MyBuf(TestCSV): E
> test_StreamBuf_drop(TestCSV): E
> test_StreamBuf_get(TestCSV): E
> test_StreamBuf_get_n(TestCSV): E
> test_StreamBuf_is_eos?(TestCSV): E
> test_StreamBuf_s_new(TestCSV): E
> test_Writer_LSHIFT(TestCSV): E
> test_Writer_add_row(TestCSV): E
> test_Writer_close(TestCSV): E
> test_Writer_s_create(TestCSV): E
> test_Writer_s_generate(TestCSV): E
> test_Writer_s_new(TestCSV): E
> test_macCR(TestCSV): E
> test_s_foreach(TestCSV): E
> test_s_generate(TestCSV): E
> test_s_generate_line(TestCSV): E
> test_s_generate_row(TestCSV): E
> test_s_open_reader(TestCSV): E
> test_s_open_writer(TestCSV): E
> test_s_parse(TestCSV): E
> test_s_parseAndCreate(TestCSV): E
> test_s_parse_line(TestCSV): E
> test_s_parse_row(TestCSV): E
> test_s_parse_rowConcat(TestCSV): E
> test_s_parse_rowEOF(TestCSV): E
> test_s_read(TestCSV): E
> test_s_readlines(TestCSV): E
> test_utf8(TestCSV): E
> test_writer_fs_rs_generate(TestCSV): E
> test_writer_fs_rs_parse(TestCSV): E
> test_classdef(WSDL::Ref::TestRef): .
> test_wsdl(WSDL::RPC::TestRPC):
> /workarea4/stonebeat/ruby-1-8-cvs/ruby/lib/wsdl/soap/methodDefCreator.rb:54:
> [BUG] Segmentation fault
> ruby 1.8.5 (2006-09-25) [i386-solaris2.10]
>
>  dbx future-beat/ruby test/core
> (dbx) where 20
>   [1] __lwp_kill(0x1, 0x6, 0xfffffe81779bf1a0, 0xfffffd7fff2bec0e, 0x632,
> 0x0), at 0xfffffd7fff2be31a
>   [2] _thr_kill(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff2b9343
>   [3] raise(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff2675b9
>   [4] abort(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff24a5a0
>   [5] rb_bug(fmt = 0x58e930 "Segmentation fault", ... = 0x502f4c, ...),
> line 214 in "error.c"
>   [6] sigsegv(sig = 11), line 537 in "signal.c"
>   [7] __sighndlr(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff2bb246
>   [8] call_user_handler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
> 0xfffffd7fff2b0612
>   [9] sigacthandler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff2b07f8
>   ---- called from signal handler with signal 11 (SIGSEGV) ------
> =>[10] st_lookup(table = 0x76632d382d312d79, key = 3057U, value =
> 0xfffffd7fffdf4028), line 250 in "st.c"
>   [11] search_method(klass = 6880561U, id = 3057U, origin =
> 0xfffffd7fffdf4088), line 475 in "eval.c"
>   [12] rb_get_method_body(klassp = 0xfffffd7fffdf4148, idp =
> 0xfffffd7fffdf4100, noexp = 0xfffffd7fffdf410c), line 496 in "eval.c"
>   [13] rb_call(klass = 6880561U, recv = 6275640U, mid = 3057U, argc = 0,
> argv = (nil), scope = 0), line 6022 in "eval.c"
>   [14] rb_eval(self = 96460160U, n = 0x2ccdba0), line 3439 in "eval.c"
>   [15] rb_eval(self = 96460160U, n = 0x2ccdb00), line 3449 in "eval.c"
>   [16] rb_eval(self = 96460160U, n = 0x2ccde48), line 2911 in "eval.c"
>   [17] rb_call0(klass = 46904680U, recv = 96460160U, id = 76745U, oid =
> 76745U, argc = 0, argv = 0xfffffd7fffdf4a18, body = 0x2ccde48, flags = 0),
> line 5952 in "eval.c"
>   [18] rb_call(klass = 46904680U, recv = 96460160U, mid = 76745U, argc =
> 1, argv = 0xfffffd7fffdf4a10, scope = 0), line 6046 in "eval.c"
>   [19] rb_eval(self = 96610960U, n = 0x2dc1340), line 3439 in "eval.c"
>   [20] rb_eval(self = 96610960U, n = 0x2dc1138), line 3620 in "eval.c"
> (dbx) print *value
> *value = 332U
> (dbx) print *table
> dbx: cannot access address 0x76632d382d312d79
>
> I can do more debugging, so feel free to send debug patches or other
> requests.
>
>
>  - Ville
>



-- 
Kent
---
http://www.datanoise.com

In This Thread