[Vm-dev] Segfaulting cog vm on FreeBSD
eliot.miranda at gmail.com
Sun Jul 17 21:37:02 UTC 2016
crashing in the scavenger (one of the two garbage collectors) is usually indicative of a corrupted heap. Are you using the FFI?
There is a leak checker built into the VM. Try running with -leakcheck 3 and see if that helps. It'll need to be an up-to-date VM though. So use as up-to-date sources as you can.
> On Jul 17, 2016, at 1:22 PM, Petr Fischer <petr.fischer at me.com> wrote:
> Hello! Moving discussion about %subj% from pharo-dev list.
> My problem on FreeBSD:
> There is a linux compatibility layer on FreeBSD (even 64bits on 11-CURRENT), so there is no theoretical problem running pharo linux vms.
> But: complete linux libraries comming from centos 6.7, where is glibc older than 2.15 - so, no luck with actual default pharo vm from pharo.org.
> So I compiled my own pharo-vm on CentOS 6.7 with old glibc, everything is OK on Linux CentOS box, but on the FreeBSD side, vm is segfaulting (my own compiled "stack" vm is more stable, but segfaulting too).
> I compiled from pharo-vm git:
> I am building "PharoVMSpur32Builder buildUnix32" (there is some old "PharoVMBuilder buildFreeBSD", but probably unmaintained).
> Why I can't compile directly on the FreeBSD without Linux compatibility layer? Because there is a step, when I need to Load VMMaker into functional stable image - when I use my compiled vm, of course, segfaulting while loading VMMaker... Therefore I am going via Linux comp. layer. Native port of vm for FreeBSD will be the next step.
> Ok, ok, next steps... I compiled my own "debug vm" (cog, spur, again on CentOS 6.7) and here is some outputs from my gdb session (I am definitely not Core C hacker):
> Crashing code snippet - function is "scavengeReferentsOf" and crashing line is 110:
> Now I am at end with my knowledge (vm internals) - but I can add some printf/log outputs into generated C files, recompile and retest.
> Any ideas? Thanks very much. pf
More information about the Vm-dev