[Stackless] Stackless CVS on OS X 10.3.2

Bob Ippolito bob at redivi.com
Wed Jan 7 22:30:02 CET 2004


God knows why, but gcc (no longer?) likes switch_ppc_macosx.h, or at 
least mine doesn't.  I'm running the latest stuff, which happens to 
use: gcc (GCC) 3.3 20030304 (Apple Computer, Inc. build 1495).  The fix 
is simple and a diff is below.

I also had to chmod +x src/Lib/plat-darwin/regen before make install 
would work, but that seems to be a generated file.  I did ./configure 
--disable-framework --prefix=/usr/experimental.  I don't think 
--enable-framework worked properly enough until Python 2.3.

Here are the (potential) problems I saw with the tests:

[crack:src/Stackless/test] bob% stackless chantest.py
sending 2
inky got: 2
dinky got: 2
sending 3
inky got: 3
dinky got: 3
sending 5
inky got: 5
dinky got: 5
sending 7
inky got: 7
dinky got: 7
sending Exception
inky ** Ouch!!! **
exceptions.ValueError 7
main done.
trying cleanup:
dinky got: 42
dinky says bye
*** malloc[15689]: error for object 0x64a500: Incorrect checksum for 
freed object - object was probably modified after being freed; break at 
szone_error

[crack:src/Stackless/test] bob% stackless rectest.py
Traceback (most recent call last):
   File "rectest.py", line 10, in ?
     sys.enable_stackless(1)
AttributeError: 'stackless.module' object has no attribute 
'enable_stackless'

[crack:src/Stackless/test] bob% stackless schedtest.py
f1 called
f2 called
Bus error

Under gdb, I get this:
Program received signal EXC_BAD_ACCESS, Could not access memory.
0x00077d10 in do_call (func=0x610a90, pp_stack=0xbfffa7c4, na=1, 
nk=891412) at Python/ceval.c:3465
3465            Py_XDECREF(kwdict);

[crack:src/Stackless/test] bob% stackless softhard.py
first schedule():

suspending <stackless.tasklet object at 0x6383a0>
suspending Tasklet A
suspending Tasklet B
suspending Tasklet C reordered, now running

suspending <stackless.tasklet object at 0x6383a0>
ending     Tasklet C
starting   Tasklet B
suspending Tasklet B
ending     Tasklet A
starting   Tasklet B
ending     Tasklet B
starting   <stackless.tasklet object at 0x6383a0> cleaning up:
Traceback (most recent call last):
   File "softhard.py", line 57, in ?
     import gc;gc.collect()
   File "softhard.py", line 28, in schedule_cb
     print "starting  ", next, hex(next.frame.flags), get_css(next)
AttributeError: 'stackless.frame' object has no attribute 'flags'

[crack:src/Stackless/test] bob% stackless temptest.py
schedule

suspending <stackless.tasklet object at 0x6383a0> f start/end

ending Tasklet function
starting Tasklet test_cframe
suspending Tasklet test_cframe run

suspending <stackless.tasklet object at 0x6383a0>
suspending Tasklet test_cframe
suspending Tasklet test_cframe
ending Tasklet test_cframe
starting <stackless.tasklet object at 0x6383a0>
Traceback (most recent call last):
   File "temptest.py", line 44, in ?
     import struct
   File "temptest.py", line 13, in schedule_cb
     print "starting", next, hex(next.frame.flags)
AttributeError: 'stackless.frame' object has no attribute 'flags'

test3.py has a lot of output, I don't know what correct output looks 
like, but it doesn't seem to end in a reasonable amount of time.

[crack:src/Stackless/test] bob% stackless test_chan_exc.py
Traceback (most recent call last):
   File "test_chan_exc.py", line 16, in ?
     chan.send_exception(ValueError, 42)
   File "test_chan_exc.py", line 6, in f
     ch.receive()
ValueError: 42

The rest of the tests look like they are behaving well enough.	

-bob

Index: src/Stackless/switch_ppc_macosx.h
===================================================================
RCS file: /home/cvs/stackless/src/Stackless/switch_ppc_macosx.h,v
retrieving revision 1.9
diff -u -r1.9 switch_ppc_macosx.h
--- src/Stackless/switch_ppc_macosx.h   24 Nov 2002 15:37:10 -0000  1.9
+++ src/Stackless/switch_ppc_macosx.h   7 Jan 2004 21:11:44 -0000
@@ -37,10 +37,10 @@
      __asm__ ("mr %0, r1" : "=g" (stackref) : );
      {
          SLP_SAVE_STATE(stackref, stsizediff);
-        __asm__ volatile ("
-            mr r11, %0
-            add r1, r1, r11
-            add r30, r30, r11"
+        __asm__ volatile (
+            "mr r11, %0\n"
+            "add r1, r1, r11\n"
+            "add r30, r30, r11\n"
              : /* no outputs */
              : "g" (stsizediff)
              : "r11"
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2357 bytes
Desc: not available
URL: <http://www.stackless.com/pipermail/stackless/attachments/20040107/e49f6e3d/attachment.bin>
-------------- next part --------------
_______________________________________________
Stackless mailing list
Stackless at stackless.com
http://www.stackless.com/mailman/listinfo/stackless


More information about the Stackless mailing list