[squeak-dev] Squeak5.3 linux ARMv6 segfaults on startup

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Wed Mar 11 10:38:20 UTC 2020

>From extracts of the travis log
https://travis-ci.org/OpenSmalltalk/opensmalltalk-vm/jobs/657397531, I see

- we compile with gcc

gcc -std=gnu99 -g -O2 -DNDEBUG -DDEBUGVM=0
-Wall -pthread -DLSB_FIRST=1 -march=armv6 -mfpu=vfp -mfloat-abi=hard
-Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value
-Wno-unused-label -Wno-unused-function -Wno-unused-variable
-Wno-unused-but-set-variable  -DHAVE_CONFIG_H  -DSQUEAK_BUILTIN_PLUGIN

- it is a rather old version

$ gcc --version

gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4

- we do not seem to run tests for arm (would require setting up emulation
on the CI for example qemu like

Le mer. 11 mars 2020 à 08:39, Nicolas Cellier <
nicolas.cellier.aka.nice at gmail.com> a écrit :

> Hi,
> I have simulated the VM (nightly, it's too long),
> | cos |
> cos := CogVMSimulator newWithOptions: #(Cogit StackToRegisterMappingCogit
> ObjectMemory Spur32BitCoMemoryManager
> ISA ARMv5 ).
> cos desiredNumStackPages: 8.
> cos openOn: 'Squeak5.3-19431-32bit.image'.
> cos openAsMorph; run
> It starts normally thru simulator (I don't attach the screen snapshot, but
> it takes more than 2G byteCodes/241k sends to obtain the preference wizard)
> Could the crash be related to the cross-compiler?
> Is it gcc or clang currently for ARM builds?
> On macos, -fsanitize=undefined notices a few unaligned memory access...
> Could it be a clue?
> Le lun. 9 mars 2020 à 02:17, tim Rowledge <tim at rowledge.org> a écrit :
>> > On 2020-03-08, at 12:12 PM, tim Rowledge <tim at rowledge.org> wrote:
>> >
>> > From the stack etc it looks as if something within
>> SmalltalkImage>setGCParameters (so immediately after the return from
>> snapshot primitive) calls vsprintf() and has a little conniption. Not clear
>> whether the issue is in the vmParameterAt: or the vmParameterAt:put: yet.
>> OK, no particular helpful news from looking at the VM generated code; the
>> vmParameterAt:put: case would seem to be using the code in
>> src/vm/cointerp.c ll: 55603-8 where I see no plausible connection to
>> vsprintf(). Sigh.
>> tim
>> --
>> tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
>> Don't document the program; program the document.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200311/8887b244/attachment.html>

More information about the Squeak-dev mailing list