[ANN] 7061 = Squeak 3.9 final

Brad Fuller brad at sonaural.com
Tue Sep 26 22:11:08 UTC 2006


tim Rowledge wrote:
>
> On 25-Sep-06, at 1:42 PM, Brad Fuller wrote:
>
>> stephane ducasse wrote:
>>>>> been an VM ignorant I cannot reply. Now I hope that this bug can 
>>>>> be fixed for 3.9 VMs
>>>>> It seems to me that from an image perspective we can safely 
>>>>> release the image.
>>>>> Now we should also move, so that people migrate their code on 3.9 
>>>>> and that we start
>>>>> on 3.10 :)
>>>> Thanks for your comment, Stef. That seems reasonable. However, are 
>>>> you sure that it's a VM issue? The VM crashes, but can it not be an 
>>>> issue from higher up?
>>>
>>> Of course it can. But what can we do? do we have reproduceable bugs. 
>>> I do not think so.
>> The code is in the mantis defect that is 100% reproducible on my PC. 
>> I think it's easy to duplicate or make other PCs crash.
>>
>>> So we can stop 3.9 and postpone it but
>>> I'm pretty sure it will not help.
>> I think what you are saying is that 3.9 should be pushed forward 
>> because there are few people to look at this problem. If this is the 
>> case, a couple of comments to that:
>
> It doesn't affect my G5 mac so far. I have to say, 16 million float 
> additions in 61 mS is damn fast.
>
> It would be helpful if someone could build a PC vm with a small change 
> in the code that prints the callstack after a problem like this so 
> that it doesn't cast the context address to a signed value before 
> printing it. I'm puzzled by the apparently large jump to
> -2128068388 HandMorph>handleEvent:
> -2128068768 MouseOverHandler>processMouseOver:
> from
> 2032428416 HandMorph>handleEvent:
> 2032428116 HandMorph>processEvents
>
> -2128068768 is 0x81283F60 and 2032428416 is 0x79246580; that's a bit 
> more of a difference than the usual 92 byte increment as we build the 
> stack sending messages. I don't see anything very odd about the code 
> in HandMorph>handleEvent: that would lead me to expect any message 
> sending funny business.
>
> In the function printCallStackOf() that you should find in interp.c, 
> try changing
> /* end findSelectorOfMethod:forReceiver: */;
>         printNum(ctxt);
>         print(" ");
>         if (!(ctxt == home)) {
> to
> /* end findSelectorOfMethod:forReceiver: */;
>         printf("%X", ctxt);
>         print(" ");
>         if (!(ctxt == home)) {
>
> and see if it can give us the stack in hex.
[bfuller at ives bld]$ ./squeak 
/home/bfuller/projects/squeak/images/Squeak3.9g-7060.image

sweep failed to find exact end of memory

813821F4 Morph>hasDropShadow
81381ABC Morph>fullDrawOn:
81381A60 Canvas>fullDraw:
81381A04 Canvas>fullDrawMorph:
81380A7C [] in Morph>drawSubmorphsOn:
813809C4 SequenceableCollection>reverseDo:
813808B0 [] in Morph>drawSubmorphsOn:
81380570 Morph>drawSubmorphsOn:
81373030 [] in Morph>fullDrawOn:
81372F1C FormCanvas>roundCornersOf:in:during:
81372DC8 Canvas>roundCornersOf:during:
8137146C Morph>fullDrawOn:
81371410 Canvas>fullDraw:
81371358 Canvas>fullDrawMorph:
813710EC [] in WorldState>drawWorld:submorphs:invalidAreasOn:
81370B94 Rectangle>allAreasOutsideList:startingAt:do:
81370A3C Rectangle>allAreasOutsideList:do:
81370FF0 [] in WorldState>drawWorld:submorphs:invalidAreasOn:
813709E0 SequenceableCollection>do:
81370A98 WorldState>drawWorld:submorphs:invalidAreasOn:
81370814 [] in WorldState>displayWorld:submorphs:
813706A4 FormCanvas>roundCornersOf:in:during:
81370648 Canvas>roundCornersOf:during:
81370534 WorldState>displayWorld:submorphs:
813703C4 PasteUpMorph>privateOuterDisplayWorld
813702D8 PasteUpMorph>displayWorld
81370420 [] in WorldState>displayWorldSafely:
8137027C BlockContext>on:do:
81370220 BlockContext>ifError:
813701C4 WorldState>displayWorldSafely:
79332CA0 WorldState>doOneCycleNowFor:
79332C44 WorldState>doOneCycleFor:
79332BE8 WorldState>doOneSubCycleFor:
79332B8C PasteUpMorph>doOneSubCycle
7932E268 MenuMorph>invokeModalAt:in:allowKeyboard:
7932E20C MenuMorph>invokeModal:
7932E09C MenuMorph>invokeModal
7932C6E0 PluggableTextMorph>yellowButtonActivity:
7932C684 TextMorphForEditView>mouseDown:
7932C628 Morph>handleMouseDown:
7932C5CC MouseButtonEvent>sentTo:
7932C570 Morph>handleEvent:
7932C508 MorphicEventDispatcher>dispatchMouseDown:with:
7932C484 MorphicEventDispatcher>dispatchEvent:with:
7932C428 Morph>processEvent:using:
7932C3A4 MorphicEventDispatcher>dispatchMouseDown:with:
7932C320 MorphicEventDispatcher>dispatchEvent:with:
7932C2C4 Morph>processEvent:using:
7932C268 MorphicEventDispatcher>dispatchMouseDown:with:
7932C20C MorphicEventDispatcher>dispatchEvent:with:
7932C1B0 Morph>processEvent:using:
7932C12C MorphicEventDispatcher>dispatchMouseDown:with:
7932C0D0 MorphicEventDispatcher>dispatchEvent:with:
7932C074 Morph>processEvent:using:
7932C018 MorphicEventDispatcher>dispatchMouseDown:with:
7932BFBC MorphicEventDispatcher>dispatchEvent:with:
7932BF50 Morph>processEvent:using:
7932BEF4 PasteUpMorph>processEvent:using:
7932BE3C Morph>processEvent:
7932BDE0 HandMorph>sendEvent:focus:clear:
7932BD84 HandMorph>sendMouseEvent:
7932BCF4 HandMorph>handleEvent:
7932BC18 HandMorph>processEvents
7932BC74 [] in WorldState>doOneCycleNowFor:
7932BBBC SequenceableCollection>do:
7932BB60 WorldState>handsDo:
7932BB04 WorldState>doOneCycleNowFor:
7932BAA8 WorldState>doOneCycleFor:
7932BA4C PasteUpMorph>doOneCycle
78F82E24 [] in >spawnNewProcess
78F82EDC [] in BlockContext>newProcess

[bfuller at ives bld]$ ./squeak -version
3.9-8 #6 Tue Sep 26 15:01:19 PDT 2006 gcc 4.1.1
Squeak3.9alpha of 4 July 2005 [latest update: #7021]
Linux ives 2.6.16-1.2080.16.rrt.rhfc5.ccrma #1 PREEMPT Tue Jul 25 
15:06:37 EDT 2006 i686 i686 i386 GNU/Linux
default plugin location: /usr/local/lib/squeak/3.9-8/*.so




More information about the Squeak-dev mailing list