[Stackless] a stackless crash
Christian Tismer
tismer at stackless.com
Sun Nov 4 00:57:59 CET 2007
Richard Tew wrote:
> On 11/2/07, Kristján Valur Jónsson <kristjan at ccpgames.com> wrote:
>> Attached are the files for easy repro.
>> Build _crash.cpp into a _crash_d.pyd, place it next to crash.py and do:
>> python_d crash.py
>>
>> You may want to set a breakpoint in channelobject.c, line 29, to catch the point where the tasklet is unlinked from the channel and left to die.
>
> My vote would go for channel_clear explicitly killing the tasklets
> blocked on the given channel. What I take from this bug is that it is
> not enough to hope that they die, we need to engage in some tasklet
> euthanasia for the common good.
But how to do that?
You cannot avoid to revive them, and you cannot stop from
catching an exception. They can even re-insert themselves into
the channel, immediately.
Maybe it is necessary to make all stackless-related functions
fail for dying tasklets during destruction?
I think there is this zombie flag. We might use that to
deny service.
thinking more -- chris
--
Christian Tismer :^) <mailto:tismer at stackless.com>
tismerysoft GmbH : Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9A : *Starship* http://starship.python.net/
14109 Berlin : PGP key -> http://wwwkeys.pgp.net/
work +49 30 802 86 56 mobile +49 173 24 18 776 fax +49 30 80 90 57 05
PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04
whom do you want to sponsor today? http://www.stackless.com/
More information about the Stackless
mailing list