[M3commit] CVS Update: cm3

Jay Krell jkrell at elego.de
Sat Dec 27 00:14:03 CET 2008


CVSROOT:	/usr/cvs
Changes by:	jkrell at birch.	08/12/27 00:14:02

Modified files:
	cm3/m3-libs/m3core/src/runtime/PPC_LINUX/: RTMachine.i3 
	cm3/m3-libs/m3core/src/thread/: m3makefile 
	cm3/scripts/python/: pylib.py 

Log message:
	user threads long since broken (years ago I believe)
	switch PPC_LINUX to kernel threads
	
	bootstrapped from NT386GNU, native build then gets to m3-tools/m3totex:
	/cm3/bin/m3bundle -name B -F/tmp/qk
	unable to open file for reading: ../PPC_LINUX/B.i3: errno=2
	open failed on: ../PPC_LINUX/B.i3
	unable to open file for reading: ../PPC_LINUX/B.m3: errno=2
	open failed on: ../PPC_LINUX/B.m3
	new source -> compiling m3totex.m3
	
	Fatal Error: unable to open file for reading: ../PPC_LINUX/B.i3: errno=2
	
	That's way better than the alternative.
	When using user threads, access violate in PushEFrame accessing
	NULL self; ThreadF__Init not called yet
	pthreads and Win32 threads initialize "PushEFrame" on-demand, but
	doing the simplest user thread analog -- ThreadF__Init -- on-demand is too much and fails
	Probably need to change user thread Thread.T from an "object" to a traced ref,
	and then initialize it to an untraced value to start, if that is legal
	
	user threads will need fixing for hypothetical djgpp platform




More information about the M3commit mailing list