Implement pmap_procwr().

(Not tested.  gdb doesn't work on powerpc yet.)
This commit is contained in:
tsubai 1999-02-26 14:40:45 +00:00
parent d93a991a48
commit 01614b7217
2 changed files with 20 additions and 2 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: pmap.h,v 1.9 1998/09/01 16:35:50 tsubai Exp $ */
/* $NetBSD: pmap.h,v 1.10 1999/02/26 14:40:45 tsubai Exp $ */
/*-
* Copyright (C) 1995, 1996 Wolfgang Solfrank.
@ -75,6 +75,9 @@ paddr_t pmap_extract __P((struct pmap *, vaddr_t));
void ptemodify __P((paddr_t, u_int, u_int));
int ptebits __P((paddr_t, int));
#define PMAP_NEED_PROCWR
void pmap_procwr __P((struct proc *, vaddr_t, size_t));
static __inline paddr_t
vtophys(va)
vaddr_t va;

View File

@ -1,4 +1,4 @@
/* $NetBSD: pmap.c,v 1.15 1999/02/04 12:45:31 tsubai Exp $ */
/* $NetBSD: pmap.c,v 1.16 1999/02/26 14:40:45 tsubai Exp $ */
/*
* Copyright (C) 1995, 1996 Wolfgang Solfrank.
@ -1444,3 +1444,18 @@ pmap_deactivate(p)
struct proc *p;
{
}
/*
* Synchronize caches corresponding to [addr, addr+len) in p.
*/
void
pmap_procwr(p, va, len)
struct proc *p;
vaddr_t va;
size_t len;
{
paddr_t pa;
pa = pmap_extract(p->p_vmspace->vm_map.pmap, va);
syncicache((void *)pa, len);
}