Hi Damien,

On Fri, Mar 23, 2018 at 12:38 PM, Damien Pollet <damien.pollet@gmail.com> wrote:
 
Here are the files (image and various outputs). Running with --leakcheck does mention a few object leaks (see output.txt);

Indeed the image is corrupt at start-up.  See below.
 
I'm not sure where to get or how to build an assert VM.

When you build a phar. VM under build.macos64x64/pharo.cog.spur using the mvm script (mvm -A) you produce an assert VM in PharoAssert.app.
 
I also realized the VM I had was from this summer (the one that comes with a 70 image with zeroconf). The output files I include were produced by the VM at get.pharo.org/64/vmLatest70


On 20 March 2018 at 18:17, Eliot Miranda <eliot.miranda@gmail.com> wrote:
 
Hi Damien,

On Tue, Mar 20, 2018 at 3:12 AM, Damien Pollet <damien.pollet@gmail.com> wrote:
 
Hi, I have a Pharo image that crashes the VM on startup. The crash report below seems to incriminate GC. Should I make it available somewhere online? What's most convenient?

Don't care.  Anywhere it can be downloaded from.  Also, try running with -leakcheck 15, preferably in an assert VM and see if that gets you additional information.
 

Process:               Pharo [64892]
Path:                  /Users/USER/*/Pharo.app/Contents/MacOS/Pharo
Identifier:            org.pharo.Pharo
Version:               5.0.201708271955 (5.0.201708271955)

Right.  This VM is prior to the bug fixes in VMMaker.oscog-eem.2320:

Spur:
Fix a bad bug in SpurPlnningCompactor.  unmarkObjectsFromFirstFreeObject, used when the compactor requires more than one pass due to insufficient savedFirstFieldsSpace, expects the corpse of a moved object to be unmarked, but copyAndUnmarkObject:to:bytes:firstField: only unmarked the target.  Unmarking the corpse before the copy unmarks both.  This fixes a crash with ReleaseBuilder class>>saveAsNewRelease when non-use of cacheDuring: creates lots of files, enough to push the system into the multi-pass regime.


Pharo urgently needs to upgrade the VM to one more up to date than 2017 08 27 (in fact more up-to-date than opensmalltalk/vm commit 0fe1e1ea108e53501a0e728736048062c83a66ce, Fri Jan 19 13:17:57 2018 -0800).  The bug that VMMaker.oscog-eem.2320 fixes can result in image corruption in large images, and can occur (as it has here) at start-up, causing one's work to be irretrievably lost.
 
Code Type:             X86-64 (Native)
Parent Process:        ??? [64888]
Responsible:           Pharo [64892]
User ID:               501

Date/Time:             2018-03-19 20:27:03.906 +0100
OS Version:            Mac OS X 10.13.3 (17D102)
Report Version:        12
Anonymous UUID:        6D022236-78DD-6676-117F-EADA56D5D1BE

Sleep/Wake UUID:       AC9E4E55-3CDB-4B4F-A6B4-51ACB1177154

Time Awake Since Boot: 28000 seconds
Time Since Wake:       6500 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGABRT)
Exception Codes:       KERN_INVALID_ADDRESS at 0x000000012b67c0b0
Exception Note:        EXC_CORPSE_NOTIFY

VM Regions Near 0x12b67c0b0:
   VM_ALLOCATE            000000011adfc000-00000001259fc000 [172.0M] rw-/rwx SM=PRV  
-->
   STACK GUARD            0000700005613000-0000700005614000 [    4K] ---/rwx SM=NUL  stack guard for thread 1

Application Specific Information:
abort() called

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib         0x00007fff53fbde3e __pthread_kill + 10
1   libsystem_pthread.dylib        0x00007fff540fc150 pthread_kill + 333
2   libsystem_c.dylib              0x00007fff53f1a312 abort + 127
3   org.pharo.Pharo                0x0000000104ed8997 sigsegv + 190
4   libsystem_platform.dylib       0x00007fff540eff5a _sigtramp + 26
5   ???                            000000000000000000 0 + 0
6   org.pharo.Pharo                0x0000000104e73558 markObjects + 464
7   org.pharo.Pharo                0x0000000104e72d40 fullGC + 72
8   org.pharo.Pharo                0x0000000104e92dea primitiveFullGC + 45
9   org.pharo.Pharo                0x0000000104e52425 interpret + 26715
10  org.pharo.Pharo                0x0000000104e5c7f6 enterSmalltalkExecutiveImplementation + 152
11  org.pharo.Pharo                0x0000000104e4be6c interpret + 674
12  org.pharo.Pharo                0x0000000104ed9cc1 -[sqSqueakMainApplication runSqueak] + 394
13  com.apple.Foundation           0x00007fff2e6d696c __NSFirePerformWithOrder + 360
14  com.apple.CoreFoundation       0x00007fff2c579127 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
15  com.apple.CoreFoundation       0x00007fff2c57904f __CFRunLoopDoObservers + 527
16  com.apple.CoreFoundation       0x00007fff2c55b6a8 __CFRunLoopRun + 1240
17  com.apple.CoreFoundation       0x00007fff2c55af43 CFRunLoopRunSpecific + 483
18  com.apple.HIToolbox            0x00007fff2b872e26 RunCurrentEventLoopInMode + 286
19  com.apple.HIToolbox            0x00007fff2b872a9f ReceiveNextEventCommon + 366
20  com.apple.HIToolbox            0x00007fff2b872914 _BlockUntilNextEventMatchingListInModeWithFilter + 64
21  com.apple.AppKit               0x00007fff29b3df5f _DPSNextEvent + 2085
22  com.apple.AppKit               0x00007fff2a2d3b4c -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3044
23  com.apple.AppKit               0x00007fff29b32d6d -[NSApplication run] + 764
24  com.apple.AppKit               0x00007fff29b01f1a NSApplicationMain + 804

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet




--
_,,,^..^,,,_
best, Eliot




--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet




--
_,,,^..^,,,_
best, Eliot