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

1991/0801/pc/trap.c (diff list | history)

1991/0731/sys/src/9/pc/trap.c:177,1891991/0801/sys/src/9/pc/trap.c:177,185 (short | long | prev | next)
1991/0731    
		panic("bad trap type %d %lux\n", v, ur->pc); 
 
1991/0709    
	/* 
	 *  call the trap routine 
	 */ 
1991/0731    
	(*ivec[v])(ur); 
1991/0709    
                 
	/* 
	 *  tell the 8259 that we're done with the 
	 *  highest level interrupt 
1991/0801    
	 *  highest level interrupt (interrupts are still 
	 *  off at this point) 
1991/0709    
	 */ 
1991/0731    
	c = v&~0x7; 
	if(c==Int0vec || c==Int1vec){ 
1991/0731/sys/src/9/pc/trap.c:191,1961991/0801/sys/src/9/pc/trap.c:187,197
1991/0731    
		if(c == Int1vec) 
			outb(Int1ctl, EOI); 
	} 
1991/0801    
 
	/* 
	 *  call the trap routine 
	 */ 
	(*ivec[v])(ur); 
1991/0710    
} 
 
/* 
1991/0731/sys/src/9/pc/trap.c:268,2771991/0801/sys/src/9/pc/trap.c:269,278
1991/0720    
		panic("error stack"); 
	} 
	u->p->insyscall = 0; 
1991/0801    
	ur->ax = ret; 
1991/0725    
	if(ax == NOTED) 
1991/0720    
		noted(ur, *(ulong*)(sp+BY2WD)); 
1991/0725    
	else if(u->nnote && ax!=FORK){ 
1991/0720    
		ur->ax = ret; 
		notify(ur); 
	} 
	return ret; 


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