[racket] racket/gui seg fault on ARM

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Sun Dec 30 21:29:14 EST 2012

I think this is because FFI callbacks are not allocated as executable
code, which happens indirectly because the JIT is disabled. The JPEG
binding seems to be the earliest place where a FFI callback is used (in
checking the JPEG version).

I vaguely recall that someone warned me about this problem and
suggested a way to fix it. I can't find that message in my inbox,
though, so if this sounds familiar to anyone, please drop me a note to
clue me in again.

In any case, I know one way to fix the problem, so I'll push a repair
tomorrow at the latest.

At Sat, 29 Dec 2012 19:25:16 +0100, Stephan Houben wrote:
> I am seeing a similar issue on the Raspberry Pi.
> 
> Welcome to Racket v5.2.1.
> > (require racket/gui)
> Seg fault (internal error) at 0xcd3670
> SIGSEGV SEGV_ACCERR SI_CODE 2 fault on 0xcd3670
> Afgebroken
> 
> Stephan Houben
> Op 29 dec. 2012 01:09 schreef "Rajah Mahsohn Omega" <rajahmahsohn at gmail.com>
> het volgende:
> 
> > I have recently been trying out racket on ARM devices and have noticed
> > that requiring racket/gui is causing applications to crash with a seg
> > fault. DRRacket also crashes but the error seems slightly different. I am
> > using a Google Nexus 7 with Ubuntu 13.04 and Racket v5.3.1 that was
> > installed via apt-get.
> >
> > --- test.rkt
> > #lang racket
> > (require racket/gui/base)
> > ---
> > rajah at nexus:~$ racket test.rkt
> > Seg fault (internal error) at 0x10582c8
> > SIGSEGV SEGV_ACCERR SI_CODE 2 fault on 0x10582c8
> > Aborted (core dumped)
> >
> > rajah at nexus:~$ drracket
> > Seg fault (internal error) at 0x5ec378
> > SIGSEGV SEGV_ACCERR SI_CODE 2 fault on 0x5ec378
> > Aborted (core dumped)
> >
> > the crash report on drracket shows the following error
> >
> > gracket crashed with SIGABRT in jpeg_CreateDecompress()
> >
> > I am aware of the earlier post about libjpeg causing the crash so I
> > compiled the latest version from git but still got the same error.
> >
> > and FYI, there was an error on compiling in fun.c on line 2411 about
> > scheme_native_closure_preserves_marks not being defined, I believe that
> > function is in jit.c
> >
> >
> > ____________________
> >   Racket Users list:
> >   http://lists.racket-lang.org/users
> >
> >
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users

Posted on the users mailing list.