Date: Sat, 25 May 2019 20:16:48 -0700 From: Mark Millard <marklmi@yahoo.com> To: ports-list freebsd <freebsd-ports@freebsd.org>, "powerpc@freebsd.org" <powerpc@FreeBSD.org> Subject: 32-bit powerpc FreeBSD head -r347549 ports -r501994: lang/ruby25 build via poudriere failed via SIGSEGV in lib/csu/powerpc/crtsavres.S Message-ID: <5B5EE881-05F4-4256-ACDA-1677B2219696@yahoo.com>
next in thread | raw e-mail | index | archive | help
[The FreeBSD is from a gcc 4.2.1 toolchain based build.] My poudriere build of lang/ruby25 failed with: --- compile.o --- In file included from ./include/ruby.h:33, from internal.h:15, from compile.c:12: In function 'iseq_build_kw.isra.76', inlined from 'rb_iseq_build_from_ary' at compile.c:7865:30: ./include/ruby/ruby.h:1587:36: warning: argument 1 range [2147483648, = 4294967295] exceeds maximum object size 2147483647 = [-Walloc-size-larger-than=3D] #define RB_ALLOC_N(type,n) = ((type*)ruby_xmalloc2((size_t)(n),sizeof(type))) = ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./include/ruby/ruby.h:1593:25: note: in expansion of macro 'RB_ALLOC_N' #define ALLOC_N(type,n) RB_ALLOC_N(type,n) ^~~~~~~~~~ compile.c:7765:11: note: in expansion of macro 'ALLOC_N' dvs =3D ALLOC_N(VALUE, (unsigned int)default_len); ^~~~~~~ In file included from ./include/ruby/ruby.h:29, from ./include/ruby.h:33, from internal.h:15, from compile.c:12: compile.c: In function 'rb_iseq_build_from_ary': ./include/ruby/defines.h:195:18: note: in a call to allocation function = 'ruby_xmalloc2' declared here #define xmalloc2 ruby_xmalloc2 ^~~~~~~~~~~~~ ./include/ruby/defines.h:208:7: note: in expansion of macro 'xmalloc2' void *xmalloc2(size_t,size_t) RUBY_ATTR_ALLOC_SIZE((1,2)); ^~~~~~~~ --- miniruby --- linking miniruby --- .rbconfig.time --- --- encdb.h --- generating encdb.h --- .rbconfig.time --- Segmentation fault (core dumped) *** [.rbconfig.time] Error code 139 make[1]: stopped in /wrkdirs/usr/ports/lang/ruby25/work/ruby-2.5.5 --- encdb.h --- Segmentation fault (core dumped) *** [encdb.h] Error code 139 make[1]: stopped in /wrkdirs/usr/ports/lang/ruby25/work/ruby-2.5.5 2 errors The segmentation faults have backtraces like: Core was generated by `./miniruby -I./lib -I. -I.ext/common -n -e = BEGIN{version=3DARGV.shift;mis=3DARGV.dup'. Program terminated with signal SIGSEGV, Segmentation fault. #0 _restgpr_30_x () at /usr/src/lib/csu/powerpc/crtsavres.S:186 186 RESTGPR_X(30) (gdb) bt #0 _restgpr_30_x () at /usr/src/lib/csu/powerpc/crtsavres.S:186 #1 0x0198d998 in rb_sym_intern (ptr=3Dptr@entry=3D0x1a0f3b8 "begin", = len=3Dlen@entry=3D-1317676078, enc=3D<optimized out>) at symbol.c:1026 #2 0x0198da38 in rb_sym_intern_ascii (ptr=3Dptr@entry=3D0x1a0f3b8 = "begin", len=3D-1317676078) at symbol.c:1038 #3 0x0198da6c in rb_sym_intern_ascii_cstr (ptr=3Dptr@entry=3D0x1a0f3b8 = "begin") at symbol.c:1044 #4 0x01987b3c in struct_make_members_list (ar=3Dar@entry=3D0xffffcef4) = at struct.c:359 #5 0x0198a810 in rb_struct_define_without_accessor = (class_name=3Dclass_name@entry=3D0x1a116c0 "Range", super=3D1107060600, = alloc=3Dalloc@entry=3D0x1922b70 <range_alloc>) at struct.c:420 #6 0x01925664 in Init_Range () at range.c:1314 #7 0x018ac2d4 in rb_call_inits () at inits.c:43 #8 0x018869c8 in ruby_setup () at eval.c:61 #9 0x01888a8c in ruby_init () at eval.c:78 #10 0x01812f50 in main (argc=3D<optimized out>, argv=3D<optimized out>) = at ./main.c:41 Core was generated by `./miniruby -I./lib -I. -I.ext/common = ./tool/generic_erb.rb -c -o encdb.h ./templ'. Program terminated with signal SIGSEGV, Segmentation fault. #0 _restgpr_30_x () at /usr/src/lib/csu/powerpc/crtsavres.S:186 186 RESTGPR_X(30) (gdb) bt #0 _restgpr_30_x () at /usr/src/lib/csu/powerpc/crtsavres.S:186 #1 0x0198d998 in rb_sym_intern (ptr=3Dptr@entry=3D0x1a0f3b8 "begin", = len=3Dlen@entry=3D789211824, enc=3D<optimized out>) at symbol.c:1026 #2 0x0198da38 in rb_sym_intern_ascii (ptr=3Dptr@entry=3D0x1a0f3b8 = "begin", len=3D789211824) at symbol.c:1038 #3 0x0198da6c in rb_sym_intern_ascii_cstr (ptr=3Dptr@entry=3D0x1a0f3b8 = "begin") at symbol.c:1044 #4 0x01987b3c in struct_make_members_list (ar=3Dar@entry=3D0xffffcfd4) = at struct.c:359 #5 0x0198a810 in rb_struct_define_without_accessor = (class_name=3Dclass_name@entry=3D0x1a116c0 "Range", super=3D1107060600, = alloc=3Dalloc@entry=3D0x1922b70 <range_alloc>) at struct.c:420 #6 0x01925664 in Init_Range () at range.c:1314 #7 0x018ac2d4 in rb_call_inits () at inits.c:43 #8 0x018869c8 in ruby_setup () at eval.c:61 #9 0x01888a8c in ruby_init () at eval.c:78 #10 0x01812f50 in main (argc=3D<optimized out>, argv=3D<optimized out>) = at ./main.c:41 Where /usr/src/lib/csu/powerpc/crtsavres.S has the ma ro below in use: #define RESTGPR_X(r) _CRTENTRY(__CONCAT(__CONCAT(_restgpr_,r),_x)) = \ lwz r,(-128 + r*4)(11) For reference: (gdb) disass Dump of assembler code for function _restgpr_30_x: =3D> 0x41b3ced8 <+0>: lwz r30,-8(r11) (gdb) info reg r11 r11 0x6f 111 =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5B5EE881-05F4-4256-ACDA-1677B2219696>