summaryrefslogtreecommitdiff
path: root/sys/arch/amiga
diff options
context:
space:
mode:
authorArtur Grabowski <art@cvs.openbsd.org>2001-05-09 15:31:29 +0000
committerArtur Grabowski <art@cvs.openbsd.org>2001-05-09 15:31:29 +0000
commitbef5c1203e8b821e3eeb308fe0fec1cd4a4b82aa (patch)
treebb24a5db88cb91fcf4803d90a1e26c911df635ac /sys/arch/amiga
parent0a2e27bb7e82e11d8f2582564af9ba749623642e (diff)
More sync to NetBSD.
- Change pmap_change_wiring to pmap_unwire because it's only called that way. - Remove pmap_pageable because it's seldom implemented and when it is, it's either almost useless or incorrect. The same information is already passed to the pmap anyway by pmap_enter and pmap_unwire.
Diffstat (limited to 'sys/arch/amiga')
-rw-r--r--sys/arch/amiga/amiga/pmap.c50
1 files changed, 8 insertions, 42 deletions
diff --git a/sys/arch/amiga/amiga/pmap.c b/sys/arch/amiga/amiga/pmap.c
index afb0675235b..5bc3b48f405 100644
--- a/sys/arch/amiga/amiga/pmap.c
+++ b/sys/arch/amiga/amiga/pmap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pmap.c,v 1.28 2001/05/05 21:26:34 art Exp $ */
+/* $OpenBSD: pmap.c,v 1.29 2001/05/09 15:31:24 art Exp $ */
/* $NetBSD: pmap.c,v 1.68 1999/06/19 19:44:09 is Exp $ */
/*-
@@ -1492,29 +1492,22 @@ validate:
}
/*
- * Routine: pmap_change_wiring
+ * Routine: pmap_unwire
* Function: Change the wiring attribute for a map/virtual-address
* pair.
* In/out conditions:
* The mapping must already exist in the pmap.
*/
void
-pmap_change_wiring(pmap, va, wired)
+pmap_unwire(pmap, va)
pmap_t pmap;
vaddr_t va;
- boolean_t wired;
{
u_int *pte;
- /*
- * Never called this way.
- */
- if (wired)
- panic("pmap_change_wiring: wired");
-
#ifdef DEBUG
if (pmapdebug & PDB_FOLLOW)
- printf("pmap_change_wiring(%p, %lx, %x)\n", pmap, va, wired);
+ printf("pmap_unwire(%p, %lx)\n", pmap, va);
#endif
if (pmap == NULL)
return;
@@ -1528,7 +1521,7 @@ pmap_change_wiring(pmap, va, wired)
*/
if (!pmap_ste_v(pmap, va)) {
if (pmapdebug & PDB_PARANOIA)
- printf("pmap_change_wiring: invalid STE for %lx\n",
+ printf("pmap_unwire: invalid STE for %lx\n",
va);
return;
}
@@ -1538,21 +1531,18 @@ pmap_change_wiring(pmap, va, wired)
*/
if (!pmap_pte_v(pte)) {
if (pmapdebug & PDB_PARANOIA)
- printf("pmap_change_wiring: invalid PTE for %lx\n",
+ printf("pmap_unwire: invalid PTE for %lx\n",
va);
}
#endif
- if ((wired && !pmap_pte_w(pte)) || (!wired && pmap_pte_w(pte))) {
- if (wired)
- pmap->pm_stats.wired_count++;
- else
+ if (pmap_pte_w(pte)) {
pmap->pm_stats.wired_count--;
}
/*
* Wiring is not a hardware characteristic so there is no need
* to invalidate TLB.
*/
- pmap_pte_set_w(pte, wired);
+ pmap_pte_set_w(pte, 0);
}
/*
@@ -1840,30 +1830,6 @@ pmap_copy_page(src, dst)
physcopyseg(src, dst);
}
-
-/*
- * Routine: pmap_pageable
- * Function:
- * Make the specified pages (by pmap, offset)
- * pageable (or not) as requested.
- *
- * A page which is not pageable may not take
- * a fault; therefore, its page table entry
- * must remain valid for the duration.
- *
- * This routine is merely advisory; pmap_enter
- * will specify that these pages are to be wired
- * down (or not) as appropriate.
- */
-void
-pmap_pageable(pmap, sva, eva, pageable)
- pmap_t pmap;
- vaddr_t sva, eva;
- boolean_t pageable;
-{
- /* nothing */
-}
-
/*
* Clear the modify bits on the specified physical page.
*/