--- Begin Message ---
PharoDebug.log attached                                                         
                                                                                
                                                    
                                                                                
                                                                                
                                                    
pf


> Ohh sorry - better screenshot link:                                           
>                                                                               
>                                                         
>                                                                               
>                                                                               
>                                                         
> https://app.box.com/s/isd7tdyv8lgr8aj5449xqkrxt4y4uxqy                        
>                                                                               
>                                                         
>                                                                               
>                                                                               
>                                                         
> pf
> 
> 
> > Hi Petr,
> > 
> > On Sun, 23 Sep 2018 at 19:52, Petr Fischer via Pharo-dev
> > <[email protected]> wrote:
> > >
> > > Hello, I want to propose some small fixes to Pharo, it took me hours just 
> > > to run Pharo with Iceberg on CentOS 7 (I don't care about Ubuntu)...
> > >
> > > Now I am stuck with this Iceberg error:
> > > https://app.box.com/file/321243070589
> > 
> > I was presented with a login box when I tried to view this.
> > 
> > 
> > > I am using 64bit Pharo VM + latest Pharo7 image from zeroconf (and latest 
> > > CentOS7) - is Iceberg OK on 64bits?
> > 
> > Yes, I use it all the time (on Ubuntu 16.04 64 bit).
> > 
> > Cheers,
> > Alistair
> 
THERE_BE_DRAGONS_HERE
PrimitiveFailed: primitive #allocateExecutablePage in FFICallbackThunk class 
failed
23 September 2018 11:37:43.581541 pm

VM: unix - x86_64 - linux-gnu - CoInterpreter VMMaker.oscog-eem.2401 uuid: 
29232e0e-c9e3-41d8-ae75-519db862e02c Jun 28 2018
StackToRegisterMappingCogit VMMaker.oscog-eem.2401 uuid: 
29232e0e-c9e3-41d8-ae75-519db862e02c Jun 28 2018
VM: 201806281256 https://github.com/OpenSmalltalk/opensmalltalk-vm.git Date: 
Thu Jun 28 14:56:30 2018 CommitHash: a8a1dc1 Plugins: 201806281256 
https://github.com/OpenSmalltalk/opensmalltalk-vm.git

Image: Pharo7.0alpha [Build information: 
Pharo-7.0+alpha.build.1261.sha.9ed1473c3fb9c3853ee730e406bfb012c9fa8297 (64 
Bit)]

FFICallbackThunk class(ProtoObject)>>primitiveFailed:
        Receiver: FFICallbackThunk
        Arguments and temporary variables: 
                selector:       #allocateExecutablePage
        Receiver's instance variables: 
                superclass:     Alien
                methodDict:     a 
MethodDictionary(#address->FFICallbackThunk>>#address #free->FFIC...etc...
                format:         1048576
                layout:         a ByteLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #FFICallbackThunk
                classPool:      a Dictionary(#AccessProtect->a Semaphore() 
#AllocatedThunks->an Alie...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                lifoCallbackSemaphore:  nil


FFICallbackThunk class(ProtoObject)>>primitiveFailed
        Receiver: FFICallbackThunk
        Arguments and temporary variables: 

        Receiver's instance variables: 
                superclass:     Alien
                methodDict:     a 
MethodDictionary(#address->FFICallbackThunk>>#address #free->FFIC...etc...
                format:         1048576
                layout:         a ByteLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #FFICallbackThunk
                classPool:      a Dictionary(#AccessProtect->a Semaphore() 
#AllocatedThunks->an Alie...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                lifoCallbackSemaphore:  nil


FFICallbackThunk class>>allocateExecutablePage
        Receiver: FFICallbackThunk
        Arguments and temporary variables: 
                errorCode:      #'insufficient C memory'
        Receiver's instance variables: 
                superclass:     Alien
                methodDict:     a 
MethodDictionary(#address->FFICallbackThunk>>#address #free->FFIC...etc...
                format:         1048576
                layout:         a ByteLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #FFICallbackThunk
                classPool:      a Dictionary(#AccessProtect->a Semaphore() 
#AllocatedThunks->an Alie...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                lifoCallbackSemaphore:  nil


[ ExecutablePages add: self allocateExecutablePage ] in FFICallbackThunk 
class>>unusedBlockInExecutablePage
        Receiver: FFICallbackThunk
        Arguments and temporary variables: 

        Receiver's instance variables: 
                superclass:     Alien
                methodDict:     a 
MethodDictionary(#address->FFICallbackThunk>>#address #free->FFIC...etc...
                format:         1048576
                layout:         a ByteLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #FFICallbackThunk
                classPool:      a Dictionary(#AccessProtect->a Semaphore() 
#AllocatedThunks->an Alie...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                lifoCallbackSemaphore:  nil


[ caught := true.
self wait.
blockValue := mutuallyExcludedBlock value ] in Semaphore>>critical:
        Receiver: a Semaphore()
        Arguments and temporary variables: 
                mutuallyExcludedBlock:  [ ExecutablePages add: self 
allocateExecutablePage ]
                caught:         true
                blockValue:     nil
        Receiver's instance variables: 
                firstLink:      nil
                lastLink:       nil
                excessSignals:  0


BlockClosure>>ensure:
        Receiver: [ caught := true.
self wait.
blockValue := mutuallyExcludedBlock value ]
        Arguments and temporary variables: 
                aBlock:         [ caught
        ifTrue: [ self signal ] ]
                complete:       nil
                returnValue:    nil
        Receiver's instance variables: 
                outerContext:   Semaphore>>critical:
                startpc:        70
                numArgs:        0


Semaphore>>critical:
        Receiver: a Semaphore()
        Arguments and temporary variables: 
                caught:         true
                blockValue:     nil
                mutuallyExcludedBlock:  [ ExecutablePages add: self 
allocateExecutablePage ]
        Receiver's instance variables: 
                firstLink:      nil
                lastLink:       nil
                excessSignals:  0


FFICallbackThunk class>>unusedBlockInExecutablePage
        Receiver: FFICallbackThunk
        Arguments and temporary variables: 

        Receiver's instance variables: 
                superclass:     Alien
                methodDict:     a 
MethodDictionary(#address->FFICallbackThunk>>#address #free->FFIC...etc...
                format:         1048576
                layout:         a ByteLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #FFICallbackThunk
                classPool:      a Dictionary(#AccessProtect->a Semaphore() 
#AllocatedThunks->an Alie...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                lifoCallbackSemaphore:  nil


FFICallbackThunk class>>privateFinalizingNew
        Receiver: FFICallbackThunk
        Arguments and temporary variables: 
                address:        nil
        Receiver's instance variables: 
                superclass:     Alien
                methodDict:     a 
MethodDictionary(#address->FFICallbackThunk>>#address #free->FFIC...etc...
                format:         1048576
                layout:         a ByteLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #FFICallbackThunk
                classPool:      a Dictionary(#AccessProtect->a Semaphore() 
#AllocatedThunks->an Alie...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                lifoCallbackSemaphore:  nil


FFICallbackThunk class>>newCCall
        Receiver: FFICallbackThunk
        Arguments and temporary variables: 

        Receiver's instance variables: 
                superclass:     Alien
                methodDict:     a 
MethodDictionary(#address->FFICallbackThunk>>#address #free->FFIC...etc...
                format:         1048576
                layout:         a ByteLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #FFICallbackThunk
                classPool:      a Dictionary(#AccessProtect->a Semaphore() 
#AllocatedThunks->an Alie...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                lifoCallbackSemaphore:  nil


CallbackForX64(Callback)>>callbackEvaluator:
        Receiver: a CallbackForX64
        Arguments and temporary variables: 
                anEvaluator:    a LGitTransportCertificateCheckCallback
        Receiver's instance variables: 
                block:  a LGitTransportCertificateCheckCallback
                thunk:  nil
                evaluator:      #evaluatorValueWithContext:sp:
                numEvaluatorArgs:       2
                argsProxyClass:         nil


Callback class>>forCallbackEvaluator:
        Receiver: Callback
        Arguments and temporary variables: 
                anEvaluator:    a LGitTransportCertificateCheckCallback
        Receiver's instance variables: 
                superclass:     Object
                methodDict:     a 
MethodDictionary(#addToThunkTable->Callback>>#addToThunkTable #bl...etc...
                format:         65541
                layout:         a FixedLayout
                organization:   a ClassOrganization
                subclasses:     {CallbackForARM32. CallbackForIA32. 
CallbackForWin64X64. CallbackFo...etc...
                name:   #Callback
                classPool:      a Dictionary(#ABI->'X64' 
#FlushThunkToCallbackMap->true #ThunkToCall...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'Alien-Core'
                concreteClass:  CallbackForX64


LGitTransportCertificateCheckCallback(FFICallback)>>signature:block:
        Receiver: a LGitTransportCertificateCheckCallback
        Arguments and temporary variables: 
                signature:      #(#int #(#void #* #cert #, #int #valid #, 
#String #host #, #void #* ...etc...
                aBlock:         [ :cert :value :host :payload | 1 ]
        Receiver's instance variables: 
                callback:       nil
                thunk:  nil
                functionSpec:   a FFIFunctionSpec
                block:  [ :cert :value :host :payload | 1 ]


LGitTransportCertificateCheckCallback class(FFICallback class)>>signature:block:
        Receiver: LGitTransportCertificateCheckCallback
        Arguments and temporary variables: 
                aSignature:     #(#int #(#void #* #cert #, #int #valid #, 
#String #host #, #void #*...etc...
                aBlock:         [ :cert :value :host :payload | 1 ]
        Receiver's instance variables: 
                superclass:     LGitCallback
                methodDict:     a MethodDictionary()
                format:         65540
                layout:         a FixedLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #LGitTransportCertificateCheckCallback
                classPool:      a Dictionary()
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'LibGit-Core-FFI-Callbacks'


LGitTransportCertificateCheckCallback class(LGitCallback class)>>on:
        Receiver: LGitTransportCertificateCheckCallback
        Arguments and temporary variables: 
                aBlock:         [ :cert :value :host :payload | 1 ]
        Receiver's instance variables: 
                superclass:     LGitCallback
                methodDict:     a MethodDictionary()
                format:         65540
                layout:         a FixedLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #LGitTransportCertificateCheckCallback
                classPool:      a Dictionary()
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'LibGit-Core-FFI-Callbacks'


LGitRemoteCallbacks class>>newCertificateCheckCallback
        Receiver: LGitRemoteCallbacks
        Arguments and temporary variables: 

        Receiver's instance variables: 
                superclass:     LGitStructWithDefaults
                methodDict:     a 
MethodDictionary(#certificateCheck:->LGitRemoteCallbacks>>#certif...etc...
                format:         65541
                layout:         a FixedLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #LGitRemoteCallbacks
                classPool:      a Dictionary(#OFFSET_PRIM_CERTIFICATE_CHECK->33 
#OFFSET_PRIM_COMPLET...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'LibGit-Core-FFI-Structs'
                compiledSpec:   a WordArray(65640 100925444 393224 393224 
393224 393224 393224 39...etc...
                externalStructureAlignment:     8


LGitRemoteCallbacks class>>defaults
        Receiver: LGitRemoteCallbacks
        Arguments and temporary variables: 

        Receiver's instance variables: 
                superclass:     LGitStructWithDefaults
                methodDict:     a 
MethodDictionary(#certificateCheck:->LGitRemoteCallbacks>>#certif...etc...
                format:         65541
                layout:         a FixedLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #LGitRemoteCallbacks
                classPool:      a Dictionary(#OFFSET_PRIM_CERTIFICATE_CHECK->33 
#OFFSET_PRIM_COMPLET...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'LibGit-Core-FFI-Structs'
                compiledSpec:   a WordArray(65640 100925444 393224 393224 
393224 393224 393224 39...etc...
                externalStructureAlignment:     8


LGitRemoteCallbacks class>>withProvider:
        Receiver: LGitRemoteCallbacks
        Arguments and temporary variables: 
                provider:       an IceTipInteractiveCredentialsProvider
        Receiver's instance variables: 
                superclass:     LGitStructWithDefaults
                methodDict:     a 
MethodDictionary(#certificateCheck:->LGitRemoteCallbacks>>#certif...etc...
                format:         65541
                layout:         a FixedLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #LGitRemoteCallbacks
                classPool:      a Dictionary(#OFFSET_PRIM_CERTIFICATE_CHECK->33 
#OFFSET_PRIM_COMPLET...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'LibGit-Core-FFI-Structs'
                compiledSpec:   a WordArray(65640 100925444 393224 393224 
393224 393224 393224 39...etc...
                externalStructureAlignment:     8


LGitCloneOptions class>>withCredentialsProvider:
        Receiver: LGitCloneOptions
        Arguments and temporary variables: 
                provider:       an IceTipInteractiveCredentialsProvider
                fetchOptions:   nil
        Receiver's instance variables: 
                superclass:     LGitStructWithDefaults
                methodDict:     a 
MethodDictionary(#checkoutOptions->LGitCloneOptions>>#checkoutOpt...etc...
                format:         65538
                layout:         a FixedLayout
                organization:   a ClassOrganization
                subclasses:     nil
                name:   #LGitCloneOptions
                classPool:      a Dictionary(#OFFSET_PRIM_BARE->337 
#OFFSET_PRIM_CHECKOUT_BRANCH->34...etc...
                sharedPools:    an OrderedCollection()
                environment:    a SystemDictionary(lots of globals)
                category:       #'LibGit-Core-FFI-Structs'
                compiledSpec:   nil
                externalStructureAlignment:     8


[ location ensureCreateDirectory.
repo := LGitRepository on: location.
cloneOptions := LGitCloneOptions
        withCredentialsProvider: (IceCredentialsProvider defaultForRemoteUrl: 
url).

"Keeping references, because if not the GC take them."
checkoutOptions := cloneOptions checkoutOptions.
callbacks := cloneOptions fetchOptions callbacks.
callbacks transferProgress: IceGitTransferProgress new.
checkoutOptions
        checkoutStrategy: LGitCheckoutStrategyEnum git_checkout_force.
checkoutOptions progressCallback: IceGitCheckoutProgress new.
repo clone: url options: cloneOptions.
(LGitRemote of: repo named: 'origin')
        lookup;
        setUrl: url ] in IceGitClone>>execute
        Receiver: an IceGitClone
        Arguments and temporary variables: 
                checkoutOptions:        nil
                repo:   a LGitRepository (<not initialized>)
                cloneOptions:   nil
                callbacks:      nil
        Receiver's instance variables: 
                location:       File @ 
/home/pf/Pharo7-fixes/pharo-local/iceberg/petr-fischer/pharo
                url:    '[email protected]:petr-fischer/pharo.git'


BlockClosure>>on:do:
        Receiver: [ location ensureCreateDirectory.
repo := LGitRepository on: location.
cloneOptions := LGi...etc...
        Arguments and temporary variables: 
                exception:      an ExceptionSet
                handlerAction:  [ :error | 
location exists
        ifTrue: [ location ensureDeleteAll ...etc...
        Receiver's instance variables: 
                outerContext:   IceGitClone>>execute
                startpc:        320
                numArgs:        0


IceGitClone>>execute
        Receiver: an IceGitClone
        Arguments and temporary variables: 
                checkoutOptions:        nil
                repo:   a LGitRepository (<not initialized>)
                cloneOptions:   nil
                callbacks:      nil
        Receiver's instance variables: 
                location:       File @ 
/home/pf/Pharo7-fixes/pharo-local/iceberg/petr-fischer/pharo
                url:    '[email protected]:petr-fischer/pharo.git'


IceRepositoryCreator>>cloneRepository
        Receiver: an IceRepositoryCreator
        Arguments and temporary variables: 

        Receiver's instance variables: 
                location:       File @ 
/home/pf/Pharo7-fixes/pharo-local/iceberg/petr-fischer/pharo
                url:    nil
                remote:         noname ([email protected]:petr-fischer/pharo.git)
                branchName:     nil
                subdirectory:   nil
                repository:     IceLibgitRepository(pharo)
                ensureProjectFile:      false


[ self validate.
self isCloning
        ifTrue: [ self cloneRepository ]
        ifFalse: [ self addLocalRepository ] ] in 
IceRepositoryCreator>>createRepository
        Receiver: an IceRepositoryCreator
        Arguments and temporary variables: 

        Receiver's instance variables: 
                location:       File @ 
/home/pf/Pharo7-fixes/pharo-local/iceberg/petr-fischer/pharo
                url:    nil
                remote:         noname ([email protected]:petr-fischer/pharo.git)
                branchName:     nil
                subdirectory:   nil
                repository:     IceLibgitRepository(pharo)
                ensureProjectFile:      false


BlockClosure>>on:do:
        Receiver: [ self validate.
self isCloning
        ifTrue: [ self cloneRepository ]
        ifFalse: [ self addLoca...etc...
        Arguments and temporary variables: 
                exception:      IceDuplicatedRepository
                handlerAction:  [ :e | "This is a HACK to allow process to 
recover from here" e ...etc...
        Receiver's instance variables: 
                outerContext:   IceRepositoryCreator>>createRepository
                startpc:        93
                numArgs:        0


IceRepositoryCreator>>createRepository
        Receiver: an IceRepositoryCreator
        Arguments and temporary variables: 

        Receiver's instance variables: 
                location:       File @ 
/home/pf/Pharo7-fixes/pharo-local/iceberg/petr-fischer/pharo
                url:    nil
                remote:         noname ([email protected]:petr-fischer/pharo.git)
                branchName:     nil
                subdirectory:   nil
                repository:     IceLibgitRepository(pharo)
                ensureProjectFile:      false


[ ^ IceRepositoryCreator new
        repository: repository;
        remote: (IceGitRemote url: self remoteUrl);
        location: self projectLocation location;
        createRepository ] in 
IceTipGitHubRepositoryPanel(IceTipGitRepositoryPanel)>>newRepository
        Receiver: an IceTipGitHubRepositoryPanel
        Arguments and temporary variables: 

        Receiver's instance variables: 
                dependents:     a DependentsArray(a MorphicContainerAdapter a 
MorphicContainerAdapt...etc...
                announcer:      an Announcer
                focusOrder:     an OrderedCollection(a TextInputFieldPresenter 
a TextInputFieldPres...etc...
                owner:  nil
                window:         a NewValueHolder[ nil ]
                spec:   a SpecWrapper
                extentHolder:   a NewValueHolder[ nil ]
                needRebuild:    a NewValueHolder[ true ]
                additionalKeyBindings:  

--- End Message ---

Reply via email to