[squeak-dev] ARMv8 linux VM segfault when scrolling MVC workspace

Eliot Miranda eliot.miranda at gmail.com
Tue Dec 28 19:02:33 UTC 2021

Hi Tim,

   if you can construct an image that at start up recreates the bug, without any user interaction, then I will look at it in gdb on my pi4 running manjaro. The trick is to start the doit with 
    Smalltalk snapshot: true thenQuit: true.
If you place the doit in an inspector on the morph that needs to be scrolled to cause the crash then the inspector should give you access to the variables that need to be messaged to scroll programmatically.

_,,,^..^,,,_ (phone)

> On Dec 27, 2021, at 5:21 PM, tim Rowledge <tim at rowledge.org> wrote:
> I was just trying out a workspace in an MVC project for reasons and discovered that (even with the latest sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/squeak VM) scrolling text in a workspace will cause a segfault. This is running on a PI 4, 64bit release of Raspberry Pi OS, 20892 image.
> To test - 
> open an MVC project
> open a Workspace - the location on screen does not appear to matter
> type a few characters with enough CRs to make the scrollbar suasage smaller than the scrollbar
> scroll using the sausage.
> boom
> pro$it?
> The bottom end of the stackdump is - 
> C stack backtrace & registers:
>     x0   0x598bc28464  x1   0x598bc12ce4  x2          0x6f4  x3   0x598bc28460
>     x4   0x598bc133d8  x5   0x598bc28b58  x6 0xffffffffffffffff  x7 0xffffffffffffffff
>     x8 0xffffffffffffffff  x9 0xffffffffffffffff x10 0xffffffffffffffff x11 0xffffffffffffffff
>    x12 0xffffffffffffffff x13 0xffffffffffffffff x14            0x4 x15   0x7febfa33b0
>    x16   0x557feb6e20 x17   0x7f83c9b2c0 x18           0x3b x19   0x5d8bc11044
>    x20    0x3ffffe360 x21    0x3ffffe360 x22           0xb9 x23          0x6f4
>    x24   0x557fecf000 x25          (nil) x26   0x5588d889f0 x27          (nil)
>    x29   0x557fecf7a8  fp   0x7febfa3160  lr   0x557fdf7d1c  sp   0x7febfa3160
> */lib/aarch64-linux-gnu/libc.so.6(+0x833b8)[0x7f83c9b3b8]
> ./sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/squeak(+0x36018)[0x557fd56018]
> ./sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/squeak(+0x37a5c)[0x557fd57a5c]
> linux-vdso.so.1(__kernel_rt_sigreturn+0x0)[0x7f83efc7c0]
> /lib/aarch64-linux-gnu/libc.so.6(+0x833b8)[0x7f83c9b3b8]
> ./sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/squeak(+0xd7d1c)[0x557fdf7d1c]
> ./sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/squeak(+0xd796c)[0x557fdf796c]
> ./sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/squeak(+0xd4f00)[0x557fdf4f00]
> ./sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/squeak(+0xd53f0)[0x557fdf53f0]
> [0x5587d2ba08]
> /lib/aarch64-linux-gnu/libc.so.6(+0x169650)[0x7f83d81650]
> Smalltalk stack dump:
> 0x7febfa8db8 M DisplayScreen>copyBits:from:at:clippingBox:rule:fillColor: 0x55887ce788: a(n) DisplayScreen
> 0x7febfa8e28 M Paragraph>scrollUncheckedBy:withSelectionFrom:to: 0x5587f5eed8: a(n) Paragraph
> 0x7febfa8e88 M [] in Paragraph>scrollBy:withSelectionFrom:to: 0x5587f5eed8: a(n) Paragraph
> 0x7febfa8ec0 M DisplayScreen>deferUpdatesIn:while: 0x55887ce788: a(n) DisplayScreen
> 0x7febfa8f18 M Paragraph>scrollBy:withSelectionFrom:to: 0x5587f5eed8: a(n) Paragraph
> Can anybody else see this? On any other cpu/OS?
> tim
> --
> tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
> A computer's attention span is only as long as its extension cord.

More information about the Squeak-dev mailing list