plan 9 kernel history: overview | file list | diff list

1990/0601/gnot/lock.c (diff list | history)

1990/05313/sys/src/9/gnot/lock.c:12,171990/0601/sys/src/9/gnot/lock.c:12,19 (short | long | prev | next)
1990/0403    
 *  	if(l->key >= 0){ 
 *		l->key |= 0x80; 
 *		... 
1990/0601    
 * 
 *	DO NOT TAKE THE ADDRESS OF l->key or the TAS will disappear. 
1990/0403    
 */ 
1990/03091    
void 
lock(Lock *l) 
1990/05313/sys/src/9/gnot/lock.c:31,371990/0601/sys/src/9/gnot/lock.c:33,39
1990/0403    
			l->key |= 0x80; 
			l->pc = ((ulong*)&i)[PCOFF]; 
1990/03091    
			return; 
	} 
1990/0601    
		} 
1990/0403    
	l->key = 0; 
	panic("lock loop %lux pc %lux held by pc %lux\n", l, ((ulong*)&i)[PCOFF], l->pc); 
1990/03091    
} 


source code copyright © 1990-2005 Lucent Technologies; see license
Plan 9 distribution
comments to russ cox (rsc@swtch.com)