[Stackless] a stackless crash

Kristján Valur Jónsson kristjan at ccpgames.com
Fri Oct 26 16:16:28 CEST 2007

Hello there.
I have a crash case during early exit of stackless.  The call stack is:

>             python25_d.dll!slp_kill_tasks_with_stacks(_ts * ts=0x00000000)  Line 344 + 0x31 bytes  C
                python25_d.dll!PyStackless_kill_tasks_with_stacks(int allthreads=1)  Line 369 + 0x12 bytes         C
                python25_d.dll!Py_Finalize()  Line 379 + 0x7 bytes           C
                blueD.dll!BluePyOS::Shutdown(int level=2)  Line 899 + 0x8 bytes              C++
                blueD.dll!BlueOS::Shutdown()  Line 554 + 0x17 bytes      C++
                ExeFileD.exe!ExeFile::Run()  Line 286 + 0x19 bytes           C++
                ExeFileD.exe!WinMain_Guarded(HINSTANCE__ * hInstance=0x00400000, HINSTANCE__ * __formal=0x00000000, char * cmdline=0x00152325, HINSTANCE__ * __formal=0x00000000)  Line 218    C++
                ExeFileD.exe!WinMain(HINSTANCE__ * hInstance=0x00400000, HINSTANCE__ * hi2=0x00000000, char * cmdline=0x00152325, int arg=10)  Line 146 + 0x15 bytes C++
                ExeFileD.exe!__tmainCRTStartup()  Line 589 + 0x35 bytes            C
                ExeFileD.exe!WinMainCRTStartup()  Line 414     C
                kernel32.dll!_BaseProcessStart at 4()  + 0x23 bytes

And I am in the SLP_CHAIN_REMOVE macro.
the l and r variables are both null.  That is why it crashes, it is trying to unlink a tasklet that has prev and next both equal to NULL.

Now, why does this happen?  What is this code trying to do and is this a valid state for the tasklet object?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.stackless.com/pipermail/stackless/attachments/20071026/c3c9c95f/attachment.htm>

More information about the Stackless mailing list