summaryrefslogtreecommitdiffstats
path: root/sys/alpha
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2004-04-26 17:22:07 +0000
committeralc <alc@FreeBSD.org>2004-04-26 17:22:07 +0000
commitc3d9e01a8fd924d31259a44147237ff1d4770cd2 (patch)
treed30a35888239ebe289de2889cd5550c0b681db3c /sys/alpha
parentcf34985420c2567b012502c0ff5fade12ee558e4 (diff)
downloadFreeBSD-src-c3d9e01a8fd924d31259a44147237ff1d4770cd2.zip
FreeBSD-src-c3d9e01a8fd924d31259a44147237ff1d4770cd2.tar.gz
Since pmap_pinit() wants a prezeroed page, change it to ask for one. (Note
that vm_page_grab(), unlike vm_page_alloc(), always returns a prezeroed page if VM_ALLOC_ZERO is specified. So, checking is unnecessary.)
Diffstat (limited to 'sys/alpha')
-rw-r--r--sys/alpha/alpha/pmap.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/sys/alpha/alpha/pmap.c b/sys/alpha/alpha/pmap.c
index 30afacb..1d8b531 100644
--- a/sys/alpha/alpha/pmap.c
+++ b/sys/alpha/alpha/pmap.c
@@ -1074,7 +1074,7 @@ pmap_pinit(pmap)
*/
VM_OBJECT_LOCK(pmap->pm_pteobj);
lev1pg = vm_page_grab(pmap->pm_pteobj, NUSERLEV3MAPS + NUSERLEV2MAPS,
- VM_ALLOC_NORMAL | VM_ALLOC_RETRY | VM_ALLOC_WIRED);
+ VM_ALLOC_NORMAL | VM_ALLOC_RETRY | VM_ALLOC_WIRED | VM_ALLOC_ZERO);
vm_page_lock_queues();
vm_page_flag_clear(lev1pg, PG_BUSY);
@@ -1083,9 +1083,6 @@ pmap_pinit(pmap)
VM_OBJECT_UNLOCK(pmap->pm_pteobj);
pmap->pm_lev1 = (pt_entry_t*) ALPHA_PHYS_TO_K0SEG(VM_PAGE_TO_PHYS(lev1pg));
- if ((lev1pg->flags & PG_ZERO) == 0)
- bzero(pmap->pm_lev1, PAGE_SIZE);
-
/* install self-referential address mapping entry (not PG_ASM) */
pmap->pm_lev1[PTLEV1I] = pmap_phys_to_pte(VM_PAGE_TO_PHYS(lev1pg))
OpenPOWER on IntegriCloud