diff options
author | alc <alc@FreeBSD.org> | 2004-04-26 17:22:07 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2004-04-26 17:22:07 +0000 |
commit | c3d9e01a8fd924d31259a44147237ff1d4770cd2 (patch) | |
tree | d30a35888239ebe289de2889cd5550c0b681db3c /sys/alpha | |
parent | cf34985420c2567b012502c0ff5fade12ee558e4 (diff) | |
download | FreeBSD-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.c | 5 |
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)) |