[squeak-dev] Is people updating from trunk??? If so, am I the only one having trouble?

Eliot Miranda eliot.miranda at gmail.com
Wed Apr 11 16:33:30 UTC 2012


Hi All,

    so there's a recursion in updating the transcript.  This doesn't cause
a deadlock in the system I'm using (Teleplace) since it uses a Mutex, not a
Semaphore.  We can either back-out of my contents change or replace
AccessSema with a mutex, or substitute a non-thread-safe contents that sets
lastChar or back-out of my ensureCr fix.  I think, given that the
transcript;s contents are accessed within endEntry, which is protected,
that the non-thread-safe contents is perfectly fine.  I'll make that change.

On Wed, Apr 11, 2012 at 9:12 AM, Casimiro de Almeida Barreto <
casimiro.barreto at gmail.com> wrote:

>  On 11-04-2012 12:43, Levente Uzonyi wrote:
>
> (...)
>
> Please try again with Eliot's CogVM and when the system hangs, send an
> USR1 signal to the process (kill -USR1 <pid>), so the VM will print debug
> information.
>
> Here comes the debug info (cog)
>
> [CdAB at localhost bin]$ cog
>
> SIGUSR1 Wed Apr 11 13:09:21 2012
>
>
> Squeak VM version: 4.0-2540 #10 Tue Apr  3 14:30:42 PDT 2012 gcc 4.1.2
> Built from: CoInterpreter VMMaker.oscog-eem.154 uuid:
> 5cbb57c7-0a54-4b7e-848c-1f292759f1fa Mar  3 2012
> With: StackToRegisterMappingCogit VMMaker.oscog-eem.154 uuid:
> 5cbb57c7-0a54-4b7e-848c-1f292759f1fa Mar  3 2012
> Revision: r2540 http://www.squeakvm.org/svn/squeak/branches/Cog
> Build host: Linux mcqfes 2.6.18-128.el5 #1 SMP Wed Jan 21 10:44:23 EST
> 2009 i686 i686 i386 GNU/Linux
> plugin path: /opt/cog/lib/squeak/4.0-2540 [default:
> /opt/cog/lib/squeak/4.0-2540/]
>
>
> C stack backtrace:
> /opt/cog/lib/squeak/4.0-2540/squeak[0x805b731]
> /opt/cog/lib/squeak/4.0-2540/squeak[0x805b99d]
> [0xb77ef40c]
> /opt/cog/lib/squeak/4.0-2540/vm-display-X11(+0xe151)[0xb77e4151]
>
> /opt/cog/lib/squeak/4.0-2540/squeak(ioRelinquishProcessorForMicroseconds+0x14)[0x805a424]
> /opt/cog/lib/squeak/4.0-2540/squeak[0x806e2aa]
> [0x774bc539]
> /opt/cog/lib/squeak/4.0-2540/squeak[0x80827f4]
> /opt/cog/lib/squeak/4.0-2540/squeak(main+0x38a)[0x805c5ca]
> /lib/libc.so.6(__libc_start_main+0xf3)[0x473fd6b3]
>
>
> All Smalltalk process stacks (active first):
> Process 0x7867d80c priority 10
> 0xbfd67400 M ProcessorScheduler class>idleProcess 2007614864: a(n)
> ProcessorScheduler class
> 0xbfd67420 I [] in ProcessorScheduler class>startUp 2007614864: a(n)
> ProcessorScheduler class
> 0xbfd67440 I [] in BlockClosure>newProcess 2020071212: a(n) BlockClosure
>
> Process 0x7821b9ec priority 50
> 0xbfd52440 M WeakArray class>? 2007622832: a(n) WeakArray class
> 0x7821e2c0 s [] in WeakArray class>restartFinalizationProcess
> 0x7821b98c s [] in BlockClosure>newProcess
>
> Process 0x7809284c priority 40
> 0xbfd5ed00 M [] in Semaphore>critical: 2002705636: a(n) Semaphore
> 0xbfd5ed20 M BlockClosure>ensure: 2027931076: a(n) BlockClosure
> 0xbfd5ed40 M Semaphore>critical: 2002705636: a(n) Semaphore
> 0xbfd5ed64 I TranscriptStream>contents 2026762492: a(n) TranscriptStream
> 0xbfd5ed88 I PluggableTextMorphPlus(PluggableTextMorph)>appendEntry
> 2020737768: a(n) PluggableTextMorphPlus
> 0xbfd5eda8 I [] in PluggableTextMorphPlus(PluggableTextMorph)>update:
> 2020737768: a(n) PluggableTextMorphPlus
> 0xbfd5edcc I TextMorphForEditView(TextMorph)>handleEdit: 2020738288: a(n)
> TextMorphForEditView
> 0xbfd5edf4 I PluggableTextMorphPlus(PluggableTextMorph)>handleEdit:
> 2020737768: a(n) PluggableTextMorphPlus
> 0xbfd5ee18 I PluggableTextMorphPlus(PluggableTextMorph)>update:
> 2020737768: a(n) PluggableTextMorphPlus
> 0xbfd5ee3c I PluggableTextMorphPlus>update: 2020737768: a(n)
> PluggableTextMorphPlus
> 0xbfd5ee5c M [] in TranscriptStream(Object)>changed: 2026762492: a(n)
> TranscriptStream
> 0xbfd5ee84 M DependentsArray>do: 2027922124: a(n) DependentsArray
> 0xbfd5eea0 M TranscriptStream(Object)>changed: 2026762492: a(n)
> TranscriptStream
> 0xbfd5eec4 I [] in TranscriptStream>endEntry 2026762492: a(n)
> TranscriptStream
> 0xbfd5eee4 M [] in Semaphore>critical: 2002705636: a(n) Semaphore
> 0xbfd5ef04 M BlockClosure>ensure: 2027922664: a(n) BlockClosure
> 0xbfd5ef24 M Semaphore>critical: 2002705636: a(n) Semaphore
> 0xbfd5ef48 I TranscriptStream>endEntry 2026762492: a(n) TranscriptStream
> 0xbfd5ef68 I TranscriptStream>show: 2026762492: a(n) TranscriptStream
> 0xbfd5ef94 I SmalltalkImage>snapshot:andQuit:embedded: 2009036868: a(n)
> SmalltalkImage
> 0xbfd5efc0 I SmalltalkImage>snapshot:andQuit: 2009036868: a(n)
> SmalltalkImage
> 0xbfd5efe0 M SmalltalkImage>saveSession 2009036868: a(n) SmalltalkImage
> 0xbfd5f004 M TheWorldMenu>doMenuItem:with: 2027899744: a(n) TheWorldMenu
> 0xbfd5f034 I [] in MenuItemMorph>invokeWithEvent: 2027908196: a(n)
> MenuItemMorph
> 0xbfd5f054 M BlockClosure>ensure: 2027921984: a(n) BlockClosure
> 0xbfd5f07c I CursorWithMask(Cursor)>showWhile: 2005401424: a(n)
> CursorWithMask
> 0xbfd5f0a4 I MenuItemMorph>invokeWithEvent: 2027908196: a(n) MenuItemMorph
> 0xbfd5f0c8 I MenuItemMorph>mouseUp: 2027908196: a(n) MenuItemMorph
> 0xbfd5f0e4 M MenuItemMorph>handleMouseUp: 2027908196: a(n) MenuItemMorph
> 0xbfd5f100 M MouseButtonEvent>sentTo: 2027921716: a(n) MouseButtonEvent
> 0xbfd5f11c M MenuItemMorph(Morph)>handleEvent: 2027908196: a(n)
> MenuItemMorph
> 0xbfd5f14c M MorphicEventDispatcher>dispatchDefault:with: 2027921700:
> a(n) MorphicEventDispatcher
> 0xbfd5f16c M MorphicEventDispatcher>dispatchEvent:with: 2027921700: a(n)
> MorphicEventDispatcher
> 0xbfd5f18c M MenuItemMorph(Morph)>processEvent:using: 2027908196: a(n)
> MenuItemMorph
> 0xbfd5f1c0 M MorphicEventDispatcher>dispatchDefault:with: 2027921700:
> a(n) MorphicEventDispatcher
> 0xbfd5f1e0 M MorphicEventDispatcher>dispatchEvent:with: 2027921700: a(n)
> MorphicEventDispatcher
> 0xbfd5f200 M MenuMorph(Morph)>processEvent:using: 2027899764: a(n)
> MenuMorph
> 0xbfd5f220 M MenuMorph(Morph)>processEvent: 2027899764: a(n) MenuMorph
> 0xbfd5f23c M MenuMorph>handleFocusEvent: 2027899764: a(n) MenuMorph
> 0xbfd5f264 M [] in HandMorph>sendFocusEvent:to:clear: 2004800568: a(n)
> HandMorph
> 0xbfd5f280 M BlockClosure>on:do: 2027921504: a(n) BlockClosure
> 0xbfd5f2ac M PasteUpMorph>becomeActiveDuring: 2011168712: a(n) PasteUpMorph
> 0xbfd5f2d0 M HandMorph>sendFocusEvent:to:clear: 2004800568: a(n) HandMorph
> 0xbfd5f2f8 M HandMorph>sendEvent:focus:clear: 2004800568: a(n) HandMorph
> 0xbfd5f31c M HandMorph>sendMouseEvent: 2004800568: a(n) HandMorph
> 0xbfd5f340 M HandMorph>handleEvent: 2004800568: a(n) HandMorph
> 0xbfd5f36c M HandMorph>processEvents 2004800568: a(n) HandMorph
> 0xbfd5f388 M [] in WorldState>doOneCycleNowFor: 2002608016: a(n) WorldState
> 0xbfd5f3ac M Array(SequenceableCollection)>do: 2002524152: a(n) Array
> 0xbfd5f3c8 M WorldState>handsDo: 2002608016: a(n) WorldState
> 0xbfd5f3e8 M WorldState>doOneCycleNowFor: 2002608016: a(n) WorldState
> 0xbfd5f404 M WorldState>doOneCycleFor: 2002608016: a(n) WorldState
> 0xbfd5f420 M PasteUpMorph>doOneCycle 2011168712: a(n) PasteUpMorph
> 0xbfd5f440 I [] in Project class>spawnNewProcess 2010283176: a(n) Project
> class
> 0x780927ec s [] in BlockClosure>newProcess
>
> Process 0x77fb1154 priority 80
> 0xbfd5e420 M Delay class>handleTimerEvent 2007666344: a(n) Delay class
> 0xbfd5e440 I Delay class>runTimerEventLoop 2007666344: a(n) Delay class
> 0x77c8f290 s [] in Delay class>startTimerEventLoop
> 0x77c8f3b0 s [] in BlockClosure>newProcess
>
> Process 0x7867d41c priority 60
> 0xbfd61400 I EventSensor(InputSensor)>userInterruptWatcher 2009658384:
> a(n) EventSensor
> 0xbfd61420 I [] in EventSensor(InputSensor)>installInterruptWatcher
> 2009658384: a(n) EventSensor
> 0xbfd61440 I [] in BlockClosure>newProcess 2020070204: a(n) BlockClosure
>
> Process 0x7867d5dc priority 60
> 0xbfd57358 M [] in Delay>wait 2020070916: a(n) Delay
> 0xbfd57378 M BlockClosure>ifCurtailed: 2028303148: a(n) BlockClosure
> 0xbfd57394 M Delay>wait 2020070916: a(n) Delay
> 0xbfd573b4 M [] in EventSensor>eventTickler 2009658384: a(n) EventSensor
> 0xbfd573d0 M BlockClosure>on:do: 2028302560: a(n) BlockClosure
> 0xbfd57400 I EventSensor>eventTickler 2009658384: a(n) EventSensor
> 0xbfd57420 I [] in EventSensor>installEventTickler 2009658384: a(n)
> EventSensor
> 0xbfd57440 I [] in BlockClosure>newProcess 2020070652: a(n) BlockClosure
>
> Process 0x78b73bc8 priority 60
> 0xbfd68400 I SmalltalkImage>lowSpaceWatcher 2009036868: a(n) SmalltalkImage
> 0xbfd68420 I [] in SmalltalkImage>installLowSpaceWatcher 2009036868: a(n)
> SmalltalkImage
> 0xbfd68440 I [] in BlockClosure>newProcess 2025274088: a(n) BlockClosure
>
> Most recent primitives
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
> relinquishProcessorForMicroseconds:
>
>     (SIGUSR1)
>
>
>
>
> Levente
>
>
> CdAB
>
>
>
>
>
>
>
>
>
>
>


-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20120411/5e4d6030/attachment.htm


More information about the Squeak-dev mailing list