[Vm-dev] Re: problem with #become, GC and proxies for compiled methods

Eliot Miranda eliot.miranda at gmail.com
Mon Jan 30 19:22:31 UTC 2012


On Mon, Jan 30, 2012 at 11:19 AM, Mariano Martinez Peck <
marianopeck at gmail.com> wrote:

>
>
> On Mon, Jan 30, 2012 at 7:05 PM, Eliot Miranda <eliot.miranda at gmail.com>wrote:
>
>> Hi Mariano,
>>
>> On Mon, Jan 30, 2012 at 9:57 AM, Mariano Martinez Peck <
>> marianopeck at gmail.com> wrote:
>>
>>>
>>>
>>>
>>> On Mon, Jan 30, 2012 at 6:47 PM, Stefan Marr <smalltalk at stefan-marr.de>wrote:
>>>
>>>>
>>>> Hi:
>>>>
>>>> On 30 Jan 2012, at 18:30, Mariano Martinez Peck wrote:
>>>>
>>>> > If with this piece of data, together with what I mentioned in the
>>>> first email, you have a hint, please tell me :)
>>>>
>>>> Wild guess: did you invalidate all the caches that a GC usually
>>>> invalidates? Thinks like primitive caches etc? Not sure what is there in
>>>> Cog that could be problematic.
>>>>
>>>
>>> Thanks Stefan. I tried to do a Object flush after each graph I swap out,
>>> but still, same problem :(
>>> Thanks for the hint anyway.
>>>
>>
>> While it may be difficult for Cog to get this right, since there are two
>> copies of a jitted method, the original and the machine-code version, it
>> would be great if Cog could have it right.  So give than you have a
>> reproducible case could you do me a huge favour and create an image that
>> reproduces the bug?  Please create the image as a doit that saves the image
>> and then continues to runt to the crash.  e.g. if the code that provokes
>> the crash is "MyTest crash" evaluate this in a workspace, and then verify
>> when you start-up the resulting snapshot that the image crashes:
>>
>>
>>     SmalltalkImage current snapshot: true andQuit: true.
>>     MyTest crash
>>
>>
>
> Hi Eliot. While trying to make the image for you, I found that if the test
> is run from the image start, as suggested above, the crash doesn't happen.
> If I do the same but from a "DoIt" in a workspace, then it happens. So I
> think that maybe I am becoming some contexts/compiledMethods from the
> executor (the DoIt) of the test...kind of shooting my own feets. But it is
> difficult for me to know whether a context or a method or whatever comes
> from the executor of the test or not....
>
> If you think that even if you have to do a do-it from a workspace it
> helps, then I am happy to upload an image. Otherwise I will continue
> investigate what is wrong...
>

Just keep fiddling adding other things to run (e.g. open a browser
programmatically etc).  There's very little chance of debugging this from
an expression in a workspace.  Even if you give me the expression I will
have to spend my time making it reproducible from start-up to have a chance
of making sense of the crash.  So please, can you keep trying?

Basically the debugging process involves analysing, working back from the
crash in subsequent runs.  Without a case that reproduces from start-up it
is IME very difficult to make sense of.


>
> THanks!
>
>> or
>>
>>     SmalltalkImage current
>>         garbageCollect;
>>         snapshot: true andQuit: true.
>>     MyTest crash
>>
>> etc
>>
>>
>>
>>>
>>>
>>>>
>>>> Best regards
>>>> Stefan
>>>>
>>>>
>>>> --
>>>> Stefan Marr
>>>> Software Languages Lab
>>>> Vrije Universiteit Brussel
>>>> Pleinlaan 2 / B-1050 Brussels / Belgium
>>>> http://soft.vub.ac.be/~smarr
>>>> Phone: +32 2 629 2974
>>>> Fax:   +32 2 629 3525
>>>>
>>>>
>>>
>>>
>>> --
>>> Mariano
>>> http://marianopeck.wordpress.com
>>>
>>>
>>>
>>
>>
>> --
>> best,
>> Eliot
>>
>>
>
>
> --
> Mariano
> http://marianopeck.wordpress.com
>
>


-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20120130/ea9e6006/attachment.htm


More information about the Vm-dev mailing list