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

1991/0705/gnot/mmu.c (diff list | history)

1991/0507/sys/src/9/gnot/mmu.c:22,271991/0705/sys/src/9/gnot/mmu.c:22,28 (short | long | prev | next)
1990/1004    
	ulong next; 
	MMU *mm, *mn, *me; 
1990/03091    
 
1991/0705    
 
1990/03091    
	if(p->upage->va != (USERADDR|(p->pid&0xFFFF))) 
		panic("mapstack %d 0x%lux 0x%lux", p->pid, p->upage->pa, p->upage->va); 
	tlbvirt = USERADDR; 
1991/0507/sys/src/9/gnot/mmu.c:29,341991/0705/sys/src/9/gnot/mmu.c:30,41
1990/03091    
	putkmmu(tlbvirt, tlbphys); 
1990/1211    
	u = (User*)USERADDR; 
1990/1004    
 
1991/0705    
	if(p->newtlb) { 
		flushmmu(); 
		clearmmucache(); 
		p->newtlb = 0; 
	} 
 
1990/1004    
	/* 
	 *  if not a kernel process and this process was not the  
	 *  last process on this machine, flush & preload mmu 
1991/0507/sys/src/9/gnot/mmu.c:69,751991/0705/sys/src/9/gnot/mmu.c:76,82
1990/03091    
} 
 
void 
putmmu(ulong tlbvirt, ulong tlbphys) 
1991/0705    
putmmu(ulong tlbvirt, ulong tlbphys, Page *p) 
1990/03091    
{ 
	if(tlbvirt&KZERO) 
		panic("putmmu"); 
1991/0507/sys/src/9/gnot/mmu.c:101,1071991/0705/sys/src/9/gnot/mmu.c:108,114
1990/1004    
clearmmucache(void) 
{ 
	if(u == 0) 
		panic("flushmmucache"); 
1991/0705    
		panic("clearmmucache"); 
1990/1004    
	u->mc.next = 0; 
1990/06021    
} 
 


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