[M3commit] CVS Update: cm3

Jay Krell jkrell at elego.de
Thu Dec 10 16:21:26 CET 2009


CVSROOT:	/usr/cvs
Changes by:	jkrell at birch.	09/12/10 16:21:26

Modified files:
	cm3/m3-libs/m3core/src/thread/WIN32/: Tag: 
	                                      release_branch_cm3_5_8 
	                                      ThreadContext.i3 
	                                      ThreadWin32.i3 
	                                      ThreadWin32.m3 
	                                      ThreadWin32C.c 

Log message:
	copy from head plus minor changes
	RTThread vs. ThreadInternal
	stop vs. limit in parameter names
	
	several changes from head:
	movement of some fields from Thread.T (traced) to Thread.Activation (untraced)
	LockMutex/UnlockMutex is just EnterCriticalSection/LeaveCriticalSection
	reads from global slots array are lockless (this is how Self() translates from untraced to traced)
	
	stack boundary is accurately known (not tested on Win9x)
	
	InitialStackBase removed in favor of something more efficient (not tested on Win9x)
	
	hack to verify stack addresses removed (removal of VerifySP function)
	
	some x86-isms factored into #ifdefed C
	the size and the fields of CONTEXT
	
	static locks changed back to variables instead of functions
	(really this could go either way)
	
	write into traced objects "immediately" before taking giant lock to greatly mitigate deadlock
	(what is the right fix here? To merge giantlock and heaplock??)
	(to check that allocator only uses locks and not conditions, now that locks don't use giantlock?)




More information about the M3commit mailing list