[Stackless] Bug report: MemoryError in stackless

Jochen Roth roth at new-light.de
Mon Feb 23 19:00:27 CET 2009


Hi,

I discovered a bug in the latest svn revision 69906 of stackless python.

I compiled the code by using ./configure and make on a s390x machine.

I get the following error when executing a demo:
/usr/local/src/stackless-python-rev69906 # ./python Stackless/test/tasktest.py
Traceback (most recent call last):
   File "Stackless/test/tasktest.py", line 48, in <module>
     t = MyTasklet(f, "Nr %d" % num)(num)
   File "Stackless/test/tasktest.py", line 43, in __new__
     return tasklet.__new__(self, func)
MemoryError
Exception MemoryError: MemoryError() in 'tasklet cleanup' ignored


Strace tells me that python is trying to mmap 4393751547904 bytes  
which isn't supposed to work, is it?

mmap(NULL, 4393751547904, PROT_READ|PROT_WRITE,  
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)
mmap(NULL, 4393751547904, PROT_READ|PROT_WRITE,  
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)


Compiling the code without -DNDEBUG but with -DPy_DEBUG works.


This leads me to the assumption that there is a variable or something  
which isn't initialized correctly.
Does anyone of you have an idea what could be the problem?


Thanks!

-- 
Jochen




More information about the Stackless mailing list