On Sun, Jun 26, 2016 at 8:37 PM, Petr Fischer petr.fischer@me.com wrote:
Yes there is "PharoVMBuilder buildFreeBSD", but some "cog*" errors occurs... So I am still building with "PharoVMSpur32Builder buildUnix32" under Linux (CentOS6) and then move compiled vm to my FreeBSD box with Linux compatibility layer.
I compiled DEBUG vm version according to your advice and this is gdb output:
Program received signal SIGSEGV, Segmentation fault. 0x080aefc1 in scavengeReferentsOf (referrer=684415032) at /home/pf/pharo/pharo-vm-debug/src/vm/gcc3x-cointerp.c:39014 39014 if (((longAt(referent)) & ((classIndexMask()) - (isForwardedObjectClassIndexPun()))) == 0) {
The C files are generated from VMMaker and the line numbers change a lot. If you look upwards in the C file you should see a generated comment that links to the Smalltalk source it was generated from.
I need to learn a little, how to play this "core C" game in gdb... What next?
I recently learnt a bit of using gdb on the image. I'm planning to write up something but its a few weeks off. The old post How to debug the VM? [1] by Mariano needs a bit of adaption, but got me off to a good start. If you look in VMMaker package where #printAllStacks is defined you'll see some others you can call, that just print the current Smalltalk call stack.
[1] https://marianopeck.wordpress.com/2011/04/23/how-to-debug-the-vm/
A also compiled PharoS (Pharo Stack) VM, and it's 5x slower, but stable, there is no stack errors (or other crashes) like in cog spur vm.
You might also try compiling the VM from upstream sources[2], running either: * vm/build.linux32x86/squeak.cog.spur/build.debug/mvm * vm/build.linux64x64/squeak.cog.spur/build.debug/mvm
Did you try the early 64-bit Pharo Image [3] suggested by Esteban in another thread ?
Also, you might try Squeak 64-bit Image, since its the platform Eliot develops the VM on, so it is further advanced in 64-bit stability. Run vm/image/buildspurtrunk64image.sh.
[2] https://github.com/OpenSmalltalk/vm [3] http://files.pharo.org/get-files/60/pharo-64.zip
Now since you are getting down and dirty debugging this at VM level, probably good to shift this thread to [vm-dev]. http://lists.squeakfoundation.org/mailman/listinfo/vm-dev
cheers -ben
pf
You could build a debug VM from here https://github.com/pharo-project/pharo-vm I also glimpsed some FreeBSD build options there you might try. cheers -ben
On Fri, Jun 24, 2016 at 12:05 PM, Petr Fischer petr.fischer@me.com wrote:
So... I compiled latest sources (blessed) on CentOS 6.8, fine, moved compiled binaries to FreeBSD and tried to load Seaside to the latest 50760 image. Still stack errors, log here: http://pastebin.com/raw/bf1EpWNt
When I run this on CentOS, everything is fine (loading Seaside, no stack errors), but when I run the same on FreeBSD, stack errors (segfaults) occurs.
So... There is something bad on FreeBSD side? Can I debug more?
pf
Try 50760 from... http://files.pharo.org/image/50/
cheers -ben
On Sat, Jun 18, 2016 at 12:49 AM, Petr Fischer petr.fischer@me.com
wrote:
VM version (from
https://swing.fit.cvut.cz/jenkins/job/pharo-vm-spur-swing/):
5.0 #1 Sun Jan 17 14:19:14 CET 2016 gcc 4.7.2 [Production Spur ITHB VM] CoInterpreter VMMaker.oscog-eem.1630 uuid:
2ed025ea-f400-4440-8e8b-5aa46d06c9ab Jan 17 2016
StackToRegisterMappingCogit VMMaker.oscog-eem.1630 uuid:
2ed025ea-f400-4440-8e8b-5aa46d06c9ab Jan 17 2016
21ec004cce7d26010c18d357c805a0e1a4ffe376 Date: 2016-01-14 11:42:33 +0100 By: Esteban Lorenzano estebanlm@gmail.com Jenkins build #498
Linux swing-hudson-lin64 3.2.0-4-amd64 #1 SMP Debian 3.2.73-2+deb7u2
x86_64 GNU/Linux
plugin path: /usr/home/pf/Work/Smalltalk/pharo5.0.centos/bin [default:
/usr/home/pf/Work/Smalltalk/pharo5.0.centos/bin/]
Image version (from official 5.0 download):
[version] 5.0 #50723
pf
in fact, this is not related to FFI… but it should be fixed…
along with the VM version, which version of Pharo are you using?
Esteban
> On 17 Jun 2016, at 14:04, Max Leske maxleske@gmail.com wrote: > > Hi Petr, > > That looks like a bug with FreeType with our FFI. It should
actually have been fixed but I don’t know if the VM for FreeBSD is up to date. Can you post the output of “Smalltalk vm version”?
> > Cheers, > Max > >> On 17 Jun 2016, at 13:26, Petr Fischer petr.fischer@me.com
wrote:
>> >> Hello, I got some random segfaults (while loading Seaside) with 32
bit spur vm on FreeBSD - can someone (with low level knowledge) decode attached log?
>> Is this some problem with stack size? Can I fix this? >> >> Log: >> http://pastebin.com/raw/NpFUnjh0 >> >> There is "**StackOverflow**" lines n the log...
Hi Ben,
On Sun, Jun 26, 2016 at 6:44 AM, Ben Coman btc@openinworld.com wrote:
On Sun, Jun 26, 2016 at 8:37 PM, Petr Fischer petr.fischer@me.com wrote:
Yes there is "PharoVMBuilder buildFreeBSD", but some "cog*" errors
occurs... So I am still building with "PharoVMSpur32Builder buildUnix32" under Linux (CentOS6) and then move compiled vm to my FreeBSD box with Linux compatibility layer.
I compiled DEBUG vm version according to your advice and this is gdb
output:
Program received signal SIGSEGV, Segmentation fault. 0x080aefc1 in scavengeReferentsOf (referrer=684415032) at
/home/pf/pharo/pharo-vm-debug/src/vm/gcc3x-cointerp.c:39014
39014 if (((longAt(referent)) & ((classIndexMask()) -
(isForwardedObjectClassIndexPun()))) == 0) {
The C files are generated from VMMaker and the line numbers change a lot. If you look upwards in the C file you should see a generated comment that links to the Smalltalk source it was generated from.
I need to learn a little, how to play this "core C" game in gdb... What next?
I recently learnt a bit of using gdb on the image. I'm planning to write up something but its a few weeks off. The old post How to debug the VM? [1] by Mariano needs a bit of adaption, but got me off to a good start. If you look in VMMaker package where #printAllStacks is defined you'll see some others you can call, that just print the current Smalltalk call stack.
[1] https://marianopeck.wordpress.com/2011/04/23/how-to-debug-the-vm/
A also compiled PharoS (Pharo Stack) VM, and it's 5x slower, but stable,
there is no stack errors (or other crashes) like in cog spur vm.
You might also try compiling the VM from upstream sources[2], running either:
- vm/build.linux32x86/squeak.cog.spur/build.debug/mvm
- vm/build.linux64x64/squeak.cog.spur/build.debug/mvm
Did you try the early 64-bit Pharo Image [3] suggested by Esteban in another thread ?
Also, you might try Squeak 64-bit Image, since its the platform Eliot develops the VM on, so it is further advanced in 64-bit stability.
That's not true. I develop on Mac OS X using Spur and the 32-bit VM. I do run the 64-bit system from time to time and am currently collaborating with Bob Westergaard to move the Cadence system over to 64-bits. I do hope to use 64-bit Spur from day-to-day but am not there yet, not for any reasons of deficiency in 64-bits but simply because my current, large, project-laden, VMMaker image is in 32-bits and I've not changed it over yet.
Run vm/image/buildspurtrunk64image.sh.
[2] https://github.com/OpenSmalltalk/vm [3] http://files.pharo.org/get-files/60/pharo-64.zip
Now since you are getting down and dirty debugging this at VM level, probably good to shift this thread to [vm-dev]. http://lists.squeakfoundation.org/mailman/listinfo/vm-dev
cheers -ben
pf
You could build a debug VM from here https://github.com/pharo-project/pharo-vm I also glimpsed some FreeBSD build options there you might try. cheers -ben
On Fri, Jun 24, 2016 at 12:05 PM, Petr Fischer petr.fischer@me.com
wrote:
So... I compiled latest sources (blessed) on CentOS 6.8, fine, moved compiled binaries to FreeBSD and tried to load Seaside to the latest
50760
image. Still stack errors, log here: http://pastebin.com/raw/bf1EpWNt
When I run this on CentOS, everything is fine (loading Seaside, no
stack
errors), but when I run the same on FreeBSD, stack errors (segfaults) occurs.
So... There is something bad on FreeBSD side? Can I debug more?
pf
Try 50760 from... http://files.pharo.org/image/50/
cheers -ben
On Sat, Jun 18, 2016 at 12:49 AM, Petr Fischer <petr.fischer@me.com
wrote:
VM version (from
https://swing.fit.cvut.cz/jenkins/job/pharo-vm-spur-swing/):
5.0 #1 Sun Jan 17 14:19:14 CET 2016 gcc 4.7.2 [Production Spur
ITHB VM]
CoInterpreter VMMaker.oscog-eem.1630 uuid:
2ed025ea-f400-4440-8e8b-5aa46d06c9ab Jan 17 2016
StackToRegisterMappingCogit VMMaker.oscog-eem.1630 uuid:
2ed025ea-f400-4440-8e8b-5aa46d06c9ab Jan 17 2016
21ec004cce7d26010c18d357c805a0e1a4ffe376 Date: 2016-01-14 11:42:33
+0100
By: Esteban Lorenzano estebanlm@gmail.com Jenkins build #498
Linux swing-hudson-lin64 3.2.0-4-amd64 #1 SMP Debian
3.2.73-2+deb7u2
x86_64 GNU/Linux
plugin path: /usr/home/pf/Work/Smalltalk/pharo5.0.centos/bin
[default:
/usr/home/pf/Work/Smalltalk/pharo5.0.centos/bin/]
Image version (from official 5.0 download):
[version] 5.0 #50723
pf
> in fact, this is not related to FFI… but it should be fixed… > > along with the VM version, which version of Pharo are you using? > > Esteban > > > On 17 Jun 2016, at 14:04, Max Leske maxleske@gmail.com
wrote:
> > > > Hi Petr, > > > > That looks like a bug with FreeType with our FFI. It should
actually have been fixed but I don’t know if the VM for FreeBSD is up
to
date. Can you post the output of “Smalltalk vm version”?
> > > > Cheers, > > Max > > > >> On 17 Jun 2016, at 13:26, Petr Fischer petr.fischer@me.com
wrote:
> >> > >> Hello, I got some random segfaults (while loading Seaside)
with 32
bit spur vm on FreeBSD - can someone (with low level knowledge) decode attached log?
> >> Is this some problem with stack size? Can I fix this? > >> > >> Log: > >> http://pastebin.com/raw/NpFUnjh0 > >> > >> There is "**StackOverflow**" lines n the log...
On Tue, Jun 28, 2016 at 1:04 AM, Eliot Miranda eliot.miranda@gmail.com wrote:
Hi Ben,
On Sun, Jun 26, 2016 at 6:44 AM, Ben Coman btc@openinworld.com wrote:
On Sun, Jun 26, 2016 at 8:37 PM, Petr Fischer petr.fischer@me.com wrote:
Yes there is "PharoVMBuilder buildFreeBSD", but some "cog*" errors occurs... So I am still building with "PharoVMSpur32Builder buildUnix32" under Linux (CentOS6) and then move compiled vm to my FreeBSD box with Linux compatibility layer.
I compiled DEBUG vm version according to your advice and this is gdb output:
Program received signal SIGSEGV, Segmentation fault. 0x080aefc1 in scavengeReferentsOf (referrer=684415032) at /home/pf/pharo/pharo-vm-debug/src/vm/gcc3x-cointerp.c:39014 39014 if (((longAt(referent)) & ((classIndexMask()) - (isForwardedObjectClassIndexPun()))) == 0) {
The C files are generated from VMMaker and the line numbers change a lot. If you look upwards in the C file you should see a generated comment that links to the Smalltalk source it was generated from.
I need to learn a little, how to play this "core C" game in gdb... What next?
I recently learnt a bit of using gdb on the image. I'm planning to write up something but its a few weeks off. The old post How to debug the VM? [1] by Mariano needs a bit of adaption, but got me off to a good start. If you look in VMMaker package where #printAllStacks is defined you'll see some others you can call, that just print the current Smalltalk call stack.
[1] https://marianopeck.wordpress.com/2011/04/23/how-to-debug-the-vm/
A also compiled PharoS (Pharo Stack) VM, and it's 5x slower, but stable, there is no stack errors (or other crashes) like in cog spur vm.
You might also try compiling the VM from upstream sources[2], running either:
- vm/build.linux32x86/squeak.cog.spur/build.debug/mvm
- vm/build.linux64x64/squeak.cog.spur/build.debug/mvm
Did you try the early 64-bit Pharo Image [3] suggested by Esteban in another thread ?
Also, you might try Squeak 64-bit Image, since its the platform Eliot develops the VM on, so it is further advanced in 64-bit stability.
That's not true. I develop on Mac OS X using Spur and the 32-bit VM. I do run the 64-bit system from time to time and am currently collaborating with Bob Westergaard to move the Cadence system over to 64-bits. I do hope to use 64-bit Spur from day-to-day but am not there yet, not for any reasons of deficiency in 64-bits but simply because my current, large, project-laden, VMMaker image is in 32-bits and I've not changed it over yet.
Thanks for that insight to correct my bad presumption. Strange the images that develop in my head in isolation. cheers -ben
On Mon, Jun 27, 2016 at 10:32 AM, Ben Coman btc@openinworld.com wrote:
On Tue, Jun 28, 2016 at 1:04 AM, Eliot Miranda eliot.miranda@gmail.com wrote:
Hi Ben,
On Sun, Jun 26, 2016 at 6:44 AM, Ben Coman btc@openinworld.com wrote:
On Sun, Jun 26, 2016 at 8:37 PM, Petr Fischer petr.fischer@me.com
wrote:
Yes there is "PharoVMBuilder buildFreeBSD", but some "cog*" errors
occurs... So I am still building with "PharoVMSpur32Builder buildUnix32" under Linux (CentOS6) and then move compiled vm to my FreeBSD box with Linux compatibility layer.
I compiled DEBUG vm version according to your advice and this is gdb
output:
Program received signal SIGSEGV, Segmentation fault. 0x080aefc1 in scavengeReferentsOf (referrer=684415032) at
/home/pf/pharo/pharo-vm-debug/src/vm/gcc3x-cointerp.c:39014
39014 if (((longAt(referent)) & ((classIndexMask()) -
(isForwardedObjectClassIndexPun()))) == 0) {
The C files are generated from VMMaker and the line numbers change a lot. If you look upwards in the C file you should see a generated comment that links to the Smalltalk source it was generated from.
I need to learn a little, how to play this "core C" game in gdb... What next?
I recently learnt a bit of using gdb on the image. I'm planning to write up something but its a few weeks off. The old post How to debug the VM? [1] by Mariano needs a bit of adaption, but got me off to a good start. If you look in VMMaker package where #printAllStacks is defined you'll see some others you can call, that just print the current Smalltalk call stack.
[1] https://marianopeck.wordpress.com/2011/04/23/how-to-debug-the-vm/
A also compiled PharoS (Pharo Stack) VM, and it's 5x slower, but
stable, there is no stack errors (or other crashes) like in cog spur vm.
You might also try compiling the VM from upstream sources[2], running
either:
- vm/build.linux32x86/squeak.cog.spur/build.debug/mvm
- vm/build.linux64x64/squeak.cog.spur/build.debug/mvm
Did you try the early 64-bit Pharo Image [3] suggested by Esteban in another thread ?
Also, you might try Squeak 64-bit Image, since its the platform Eliot develops the VM on, so it is further advanced in 64-bit stability.
That's not true. I develop on Mac OS X using Spur and the 32-bit VM. I
do run the 64-bit system from time to time and am currently collaborating with Bob Westergaard to move the Cadence system over to 64-bits. I do hope to use 64-bit Spur from day-to-day but am not there yet, not for any reasons of deficiency in 64-bits but simply because my current, large, project-laden, VMMaker image is in 32-bits and I've not changed it over yet.
Thanks for that insight to correct my bad presumption. Strange the images that develop in my head in isolation. cheers -ben
:-). We'll have to figure out some way of smuggling you to an ESUG :-)
_,,,^..^,,,_ best, Eliot
vm-dev@lists.squeakfoundation.org