summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjake <jake@FreeBSD.org>2002-12-21 10:44:30 +0000
committerjake <jake@FreeBSD.org>2002-12-21 10:44:30 +0000
commit74619d7495a813ca5a3dfc5f280215216b5b526e (patch)
tree60bade983a5e308f9e4ddf6e8cabe7d94250bc68
parentc6a59dac98550cddc0b5160b22279fcdd5800708 (diff)
downloadFreeBSD-src-74619d7495a813ca5a3dfc5f280215216b5b526e.zip
FreeBSD-src-74619d7495a813ca5a3dfc5f280215216b5b526e.tar.gz
Make pmap_qenter and pmap_qremove look more like the other pmaps.
-rw-r--r--sys/sparc64/sparc64/pmap.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/sys/sparc64/sparc64/pmap.c b/sys/sparc64/sparc64/pmap.c
index c3d27f5..3e29af7 100644
--- a/sys/sparc64/sparc64/pmap.c
+++ b/sys/sparc64/sparc64/pmap.c
@@ -935,12 +935,14 @@ void
pmap_qenter(vm_offset_t sva, vm_page_t *m, int count)
{
vm_offset_t va;
- int i;
va = sva;
- for (i = 0; i < count; i++, va += PAGE_SIZE)
- pmap_kenter(va, VM_PAGE_TO_PHYS(m[i]));
- tlb_range_demap(kernel_pmap, sva, sva + (count * PAGE_SIZE) - 1);
+ while (count-- > 0) {
+ pmap_kenter(va, VM_PAGE_TO_PHYS(*m));
+ va += PAGE_SIZE;
+ m++;
+ }
+ tlb_range_demap(kernel_pmap, sva, va);
}
/*
@@ -951,12 +953,13 @@ void
pmap_qremove(vm_offset_t sva, int count)
{
vm_offset_t va;
- int i;
va = sva;
- for (i = 0; i < count; i++, va += PAGE_SIZE)
+ while (count-- > 0) {
pmap_kremove(va);
- tlb_range_demap(kernel_pmap, sva, sva + (count * PAGE_SIZE) - 1);
+ va += PAGE_SIZE;
+ }
+ tlb_range_demap(kernel_pmap, sva, va);
}
#ifndef KSTACK_MAX_PAGES
OpenPOWER on IntegriCloud