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

1992/0714/pc/trap.c (diff list | history)

1992/0714/sys/src/9/pc/trap.c:274,2791992/0804/sys/src/9/pc/trap.c:274,298 (short | long | prev | next)
1991/0720    
void 
dumpstack(void) 
{ 
1992/0804    
	ulong l, v, i; 
	extern ulong etext; 
 
	if(u == 0) 
		return; 
 
	i = 0; 
	for(l=(ulong)&l; l<USERADDR+BY2PG; l+=4){ 
		v = *(ulong*)l; 
		if(KTZERO < v && v < (ulong)&etext){ 
			print("%lux ", v); 
			i++; 
		} 
		if(i == 4){ 
			i = 0; 
			print("\n"); 
		} 
	} 
 
1991/0720    
} 
 
1991/1214    
long 
1992/0714/sys/src/9/pc/trap.c:334,3411992/0804/sys/src/9/pc/trap.c:353,362
1992/0625    
		u->s = *((Sargs*)(sp+1*BY2WD)); 
1992/06271    
		u->p->psstate = sysctab[u->scallnr]; 
1992/0625    
 
1992/0804    
if(u->p->fgrp->ref <= 0) print("before syscall %s\n", u->p->psstate); 
1992/06271    
		ret = (*systab[u->scallnr])(u->s.args); 
1991/0720    
		poperror(); 
1992/0804    
if(u->p->fgrp->ref <= 0) print("after syscall %s\n", u->p->psstate); 
1991/0720    
	} 
	if(u->nerrlab){ 
1992/06271    
		print("bad errstack [%d]: %d extra\n", u->scallnr, u->nerrlab); 
1992/0714/sys/src/9/pc/trap.c:361,3661992/0804/sys/src/9/pc/trap.c:382,388
1992/0103    
	splhi(); /* avoid interrupts during the iret */ 
1992/06271    
	if(u->scallnr!=RFORK && (u->p->procctl || u->nnote)) 
1991/0720    
		notify(ur); 
1992/0804    
 
1991/0720    
	return ret; 
1991/0710    
} 
 


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