feenkcom / gtoolkit

Glamorous Toolkit is the Moldable Development environment. It empowers you to make systems explainable through experiences tailored for each problem.
https://gtoolkit.com
MIT License
1.1k stars 48 forks source link

Segmentation fault: libsystem_platform.dylib, _platform_memmove$VARIANT$Haswell + 240 #387

Closed JurajKubelka closed 5 years ago

JurajKubelka commented 5 years ago

I am not sure why it happened. Maybe.a recover from sleep mode. There was no OS native window (only Morphic).

OS: Apple macOS 10.14.5 Pharo 7.0.3 Build information: Pharo-7.0.3+build.162.sha.814fd1b03d3d717fcd9032f374203c3047ca2870 (64 Bit)

Segmentation fault Tue Jul  9 19:41:39 2019

VM: 201901051900 https://github.com/OpenSmalltalk/opensmalltalk-vm.git
Date: Sat Jan 5 20:00:11 2019 CommitHash: 7a3c6b6
Plugins: 201901051900 https://github.com/OpenSmalltalk/opensmalltalk-vm.git

C stack backtrace & registers:
    rax 0x000000012ed86000 rbx 0x000000012ed86000 rcx 0x0000000000000001 rdx 0x00000000000021e0
    rdi 0x000000012ed86000 rsi 0x000000012ed86000 rbp 0x00007ffee7d03770 rsp 0x00007ffee7d03770
    r8  0x00007fff3de3a109 r9  0x0000000000000b00 r10 0x0000000000000000 r11 0xfffffffffa857ce0
    r12 0x000000013452e320 r13 0x00000000000021e0 r14 0x00000000000021e0 r15 0xfffffffffffff7cf
    rip 0x00007fff60e79dd0
0   libsystem_platform.dylib            0x00007fff60e79dd0 _platform_memmove$VARIANT$Haswell + 240
1   Pharo                               0x0000000107f4e642 reportStackState + 952
2   Pharo                               0x0000000107f4e987 sigsegv + 174
3   libsystem_platform.dylib            0x00007fff60e7cb5d _sigtramp + 29
4   QuartzCore                          0x00007fff3f7e04b0 -[CAContextImpl setDisplayNumber:] + 60
5   libGLImage.dylib                    0x00007fff3de3a171 _ZL22glgCopyRowsWithMemCopyPK15GLGOperationRecmPK15GLDPixelModeRec + 104
6   libGLImage.dylib                    0x00007fff3de393cb glgProcessPixelsWithProcessor + 2195
7   AMDRadeonX4000GLDriver              0x0000000126d49ce9 glrATIStoreLevels + 1563
8   AMDRadeonX4000GLDriver              0x0000000126d5dc92 glrATI_SI_LoadSysTextureStandard + 62
9   AMDRadeonX4000GLDriver              0x0000000126d5c40b glrUpdateTexture + 849
10  libGPUSupportMercury.dylib          0x00007fff4fdfd771 gpusLoadCurrentTextures + 581
11  AMDRadeonX4000GLDriver              0x0000000126d2b85c gldUpdateDispatch + 243
12  GLEngine                            0x00007fff3eacb556 gleDoDrawDispatchCore + 630
13  GLEngine                            0x00007fff3ea6e375 glDrawArraysInstanced_STD_Exec + 261
14  GLEngine                            0x00007fff3ea6e269 glDrawArrays_UnpackThread + 40
15  GLEngine                            0x00007fff3eac7194 gleCmdProcessor + 77
16  libdispatch.dylib                   0x00007fff60c4463d _dispatch_client_callout + 8
17  libdispatch.dylib                   0x00007fff60c50129 _dispatch_lane_barrier_sync_invoke_and_complete + 60
18  GLEngine                            0x00007fff3ea1d04e glFlush_ExecThread + 15
19  Pharo                               0x0000000107f48c62 -[sqSqueakOSXOpenGLView drawRect:flush:] + 314
20  Pharo                               0x0000000107f48b22 -[sqSqueakOSXOpenGLView drawRect:] + 43
21  AppKit                              0x00007fff3251141e _NSViewDrawRect + 66
22  AppKit                              0x00007fff324fc25e -[NSView _drawRect:clip:] + 1752
23  AppKit                              0x00007fff324fb0ee -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:] + 1425
24  AppKit                              0x00007fff324f9140 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 908
25  AppKit                              0x00007fff324f9998 -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 3044
26  AppKit                              0x00007fff324f8d8e -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:] + 65
27  AppKit                              0x00007fff324f6690 -[NSView _oldDisplayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 1893
28  AppKit                              0x00007fff324f5cc9 -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:] + 253
29  AppKit                              0x00007fff324f28be -[NSView displayIfNeeded] + 1302
30  AppKit                              0x00007fff324ef5ff -[NSWindow displayIfNeeded] + 280
31  AppKit                              0x00007fff324ef440 __NSWindowGetDisplayCycleObserverForDisplay_block_invoke + 684
32  AppKit                              0x00007fff324ea534 NSDisplayCycleObserverInvoke + 162
33  AppKit                              0x00007fff324ea0b4 NSDisplayCycleFlush + 1030
34  QuartzCore                          0x00007fff3f7d0003 _ZN2CA11Transaction19run_commit_handlersE18CATransactionPhase + 49
35  QuartzCore                          0x00007fff3f7cf74b _ZN2CA11Transaction6commitEv + 213
36  AppKit                              0x00007fff324e9a4d __65+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayRefresh]_block_invoke + 274
37  CoreFoundation                      0x00007fff34dc0928 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
38  CoreFoundation                      0x00007fff34dc085d __CFRunLoopDoObservers + 451
39  CoreFoundation                      0x00007fff34d62f80 __CFRunLoopRun + 1136
40  CoreFoundation                      0x00007fff34d628be CFRunLoopRunSpecific + 455
41  Foundation                          0x00007fff36fc68ef -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 280
42  Pharo                               0x0000000107f4f3fc -[sqSqueakMainApplication(events) pumpRunLoop] + 103
43  Pharo                               0x0000000107f432de -[sqSqueakOSXApplication(events) pumpRunLoop] + 43
44  Pharo                               0x0000000107f4c77a vmIOProcessEvents + 255
45  Pharo                               0x0000000107f4c7f9 ioProcessEvents + 56
46  Pharo                               0x0000000107ed7047 checkForEventsMayContextSwitch + 760
47  Pharo                               0x0000000107ed8c39 ceCheckForInterrupts + 14
48  ???                                 0x0000000115c9d4a7 0x0 + 4660516007
49  Pharo                               0x0000000107ec623a interpret + 628
50  Pharo                               0x0000000107f4fdca -[sqSqueakMainApplication runSqueak] + 393
51  Foundation                          0x00007fff370cec4a __NSFirePerformWithOrder + 362
52  CoreFoundation                      0x00007fff34dc0928 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
53  CoreFoundation                      0x00007fff34dc085d __CFRunLoopDoObservers + 451
54  CoreFoundation                      0x00007fff34d62f80 __CFRunLoopRun + 1136
55  CoreFoundation                      0x00007fff34d628be CFRunLoopRunSpecific + 455
56  HIToolbox                           0x00007fff3404e96b RunCurrentEventLoopInMode + 292
57  HIToolbox                           0x00007fff3404e5ad ReceiveNextEventCommon + 355
58  HIToolbox                           0x00007fff3404e436 _BlockUntilNextEventMatchingListInModeWithFilter + 64
59  AppKit                              0x00007fff323e8987 _DPSNextEvent + 965
60  AppKit                              0x00007fff323e771f -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1361
61  AppKit                              0x00007fff323e183c -[NSApplication run] + 699
62  AppKit                              0x00007fff323d0d7c NSApplicationMain + 777
63  libdyld.dylib                       0x00007fff60c913d5 start + 1
64  ???                                 0x0000000000000002 0x0 + 2

Smalltalk stack dump:
    0x7ffee7d0f080 M InputEventFetcher>eventLoop 0x116d9f0e0: a(n) InputEventFetcher
    0x7ffee7d0f0c0 I [] in InputEventFetcher>installEventLoop 0x116d9f0e0: a(n) InputEventFetcher
    0x7ffee7d0f100 I [] in BlockClosure>newProcess 0x122231e90: a(n) BlockClosure

Most recent primitives
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
wait
signal
signal
nowTick
nowTick
nowTick
primSignal:atUTCMicroseconds:
wait
wait
relinquishProcessorForMicroseconds:
relinquishProcessorForMicroseconds:
nowTick
signal
nowTick
primSignal:atUTCMicroseconds:
wait
millisecondClockValue
@
actualScreenSize
millisecondClockValue
tempAt:
tempAt:put:
tempAt:
terminateTo:
findNextUnwindContextUpTo:
terminateTo:
millisecondClockValue
yield
millisecondClockValue
wait
signal
signal
nowTick
nowTick
nowTick
primSignal:atUTCMicroseconds:
wait
wait
relinquishProcessorForMicroseconds:
relinquishProcessorForMicroseconds:
relinquishProcessorForMicroseconds:
relinquishProcessorForMicroseconds:
relinquishProcessorForMicroseconds:
relinquishProcessorForMicroseconds:
relinquishProcessorForMicroseconds:
nowTick
signal
signal
nowTick
primSignal:atUTCMicroseconds:
wait
primUTCMicrosecondsClock
digitMultiply:neg:
primOffset
digitCompare:
//
\\
yield
millisecondClockValue
@
actualScreenSize
actualScreenSize
@
supportsDisplayDepth:
basicNew:
handleFailingBasicNew:
byteSizeOfInstanceOfSize:
value:
value:value:
basicIdentityHash
basicSize
species
basicNew:
basicAt:
basicAt:
basicAt:
basicAt:put:
basicAt:put:
basicNew:
basicReplaceFrom:to:with:startingAt:
basicAt:put:
value:
basicNew:
at:ifAbsent:
basicNew:
at:ifAbsent:
basicAt:put:
basicNew:
basicNew:
basicReplaceFrom:to:with:startingAt:
basicAt:put:
basicNew:
basicNew:
basicReplaceFrom:to:with:startingAt:
at:
at:
at:
at:
at:
at:
at:
at:
basicAt:
at:
at:
expire
at:
at:
at:
primitiveGarbageCollect
**FullGC**
growMemoryByAtLeast:
handleFailingFailingBasicNew:
nowTick
signal
=
at:
at:
at:put:
at:put:
bitShift:
bitShift:
+
+
+
updateObjectIndex:
upHeap:
upHeap:
upHeap:
value:value:
<=
<=
<=
waitForUserSignalled:orExpired:
*
*
*
primSignal:atUTCMicroseconds:
wait
primGetNextEvent:
primGetNextEvent:
primGetNextEvent:

stack page bytes 4096 available headroom 1480 minimum unused headroom 1720

    (Segmentation fault)
JurajKubelka commented 5 years ago

It happened second time. Apparently a sleep mode is involved. And maybe an external monitor as I do not remember this issue before?

girba commented 5 years ago

What VM did you use?

akgrant43 commented 5 years ago

What VM did you use?

The standard Pharo 7 VM:

VM: 201901051900 https://github.com/OpenSmalltalk/opensmalltalk-vm.git Date: Sat Jan 5 20:00:11 2019 CommitHash: 7a3c6b6

akgrant43 commented 5 years ago

See also: http://forum.world.st/Pharo-7-crashes-on-OSX-when-unsuspending-laptop-tt5095115.html#none

girba commented 5 years ago

Is this still an issue (given all the changes)?