Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 9 Jan 2014 21:13:03 -0800
From:      Harry Weppner <harry.weppner@gmx.net>
To:        Justin Hibbits <jrh29@alumni.cwru.edu>
Cc:        ruby@freebsd.org, FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Subject:   Re: miniruby segfaults when attempting to install lang/ruby19 or lang/ruby20 on ppc64
Message-ID:  <0BFA4050-D946-4887-853F-4BB88A0F52FA@gmx.net>
In-Reply-To: <CAHSQbTA8A7rgP87zq=V3mnP=kqnUUzOynb_kk9Kp1pH=Tegiog@mail.gmail.com>
References:  <1AAB79D6-9BDF-446A-8150-C9290FB341A7@gmx.net> <CAHSQbTA8A7rgP87zq=V3mnP=kqnUUzOynb_kk9Kp1pH=Tegiog@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
Hi Justin,

thanks for pointing me to the issue you had reported - this patch fixed ruby19.

Thanks & cheerio, Harry.



On Jan 8, 2014, at 10:49 PM, Justin Hibbits <jrh29@alumni.cwru.edu> wrote:

> Hi,
> 
> On Jan 8, 2014 9:47 PM, "Harry Weppner" <harry.weppner@gmx.net> wrote:
> >
> > Hi,
> >
> > I brought an older dual G5 Powermac back to life and installed FreeBSD 10.0-RC4 on it with a GENERIC ppc64 kernel. When installing lang/ruby19 or lang/ruby20 miniruby segfaults in libthr. Tested with both the default gcc42 as well as with gcc49.
> >
> > Has anyone seen this issue before? T
> >
> > Thanks & cheerio, Harry.
> >
> > (gdb) bt
> > #0  handle_signal (actp=0xffffffffffbfa130, sig=11, info=0xffffffffffbfa690, ucp=0xffffffffffbfa1d0)
> >     at /usr/src/lib/libthr/thread/thr_sig.c:188
> > #1  0x00000000502f36ac in thr_sighandler (sig=11, info=0xffffffffffbfa690, _ucp=0xffffffffffbfa1d0)
> >     at /usr/src/lib/libthr/thread/thr_sig.c:183
> > #2  0xffffffffffffe188 in ?? ()
> >
> >    ┌──/usr/src/lib/libthr/thread/thr_sig.c─────────────────────────────────────────────────────────────────────────┐
> >    │184     }                                                                                                      │
> >    │185                                                                                                            │
> >    │186     static void                                                                                            │
> >    │187     handle_signal(struct sigaction *actp, int sig, siginfo_t *info, ucontext_t *ucp)                       │
> >   >│188     {                                                                                                      │
> >    │189             struct pthread *curthread = _get_curthread();                                                  │
> >
> >
> > The specific instruction is:
> >    ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
> >   >│0x502f32ac <handle_signal+64>   stdu    r1,-1392(r1)                                                           │
> >    │0x502f32b0 <handle_signal+68>   ld      r0,0(r9)                                                               │
> >    │0x502f32b4 <handle_signal+72>   cmpdi   cr7,r0,0                                                               │
> >
> > (gdb) x/x $r1-1392
> > 0xffffffffffbf9b50:     Cannot access memory at address 0xffffffffffbf9b50
> >
> >
> >
> 
> This is a stack overflow problem. I filed a bug report in redmine regarding this. A simp!e workaround is to change the stack size from 3 pages to 4 in thread_pthread.c of ruby and continue building.
> 
> See https://bugs.ruby-lang.org/issues/8783
> 
> -Justin
> 


[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org

iEYEARECAAYFAlLPgV8ACgkQ/CxjG+i4lOgvnwCbBgfvCDWsP2zs0Dw7xdw8bkof
orcAn1ReLEN9/v/ReoE3df6/2dYcdrqu
=HQ/K
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0BFA4050-D946-4887-853F-4BB88A0F52FA>