[Stackless] Bug report: MemoryError in stackless

Richard Tew richard.m.tew at gmail.com
Tue Feb 24 14:03:55 CET 2009


On Tue, Feb 24, 2009 at 2:37 AM, Jochen Roth <roth at new-light.de> wrote:
> But you could answer me one simple question: Is stackless supposed to
> work on big endian machines? I know that python is for sure. But I tried
> to compile stackless python2.6 on ppc and on s390 and I didn't get it
> working on those machines. The same code works fine and smooth on x86
> though.

Yes, it should work fine as far as I know.  The only part which would
be likely to have a problem is the custom stack switching code for
each platform.

> I'll try to find the bug on my own even though I'm not a python expert.
> It would be great if you could give me your thoughts on the following
> stacktrace I receive when running the unittests.
>
> gdb --args ./python -E -tt Stackless/unittests/runAll.py
>
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 2199025728240 (LWP 20639)]
> slp_cstack_restore (cst=Cannot access memory at address 0x3ff7faf67f2
> ) at Stackless/core/stacklesseval.c:142
> 142     {
> (gdb) bt
> #0  slp_cstack_restore (cst=Cannot access memory at address 0x3ff7faf67f2
> ) at Stackless/core/stacklesseval.c:142
> #1  0x0000000080234a00 in slp_transfer (cstprev=0x200003c3a20,

This is the custom stack switching code.  It is likely that it is not
compatible with your environment.  Whether that is because of the
endian issue, I do not know. However, this will be a C and perhaps
assembler issue, not a python issue.

Cheers,
Richard.




More information about the Stackless mailing list