[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Help-smalltalk] JIT crashes due non-executable memory
From: |
Holger Hans Peter Freyther |
Subject: |
[Help-smalltalk] JIT crashes due non-executable memory |
Date: |
Tue, 22 Jan 2013 18:26:51 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Dear Paolo,
so I wanted to see when the JIT of GST broke but given the changes in
autoconf/libtool/etc. it is quite difficult to compile stable-2.x on
a halfway modern system.
First of all I compiled gst with --enable-jit and then disabled the
generational gc with --disable-generation-gc. This means a SIGSEGV
will always lead to a crash.
Then I started up gdb on .libs/lt-gst (to not use libtool --mode=...),
used "handle SIGSEGV stop" to be able to inspect the process after the
segfault.
Right now I noticed that it is already crashing in the 'trampoline' (
gst_run_native_code) in the first instection and after inspecting the
/proc/PID/maps it is a non-executable segment of the memory.
gdb output:
Program received signal SIGSEGV, Segmentation fault.
0x080755d0 in ?? ()
(gdb) bt
#0 0x080755d0 in ?? ()
(gdb) disassemble 0x080755d0,+1
Dump of assembler code from 0x80755d0 to 0x80755d1:
=> 0x080755d0: push %ebp
$ cat /proc/PID/maps
08075000-08092000 rw-p 00000000 00:00 0 [heap]
So long story short? What kind of allocator would you like to use for
the JITed code and does a newer version of lightning already provide
one?
cheers
holger
PS: I think the first thing I will do is to implement the GDB jit stubs
to help in debugging the jitted code.
PPS: Do you know if the 'address'.. always true warnings are resolved
in lightning?
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Help-smalltalk] JIT crashes due non-executable memory,
Holger Hans Peter Freyther <=