Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/arch/vax/vax/pmap.c,v rcsdiff: /ftp/cvs/cvsroot/src/sys/arch/vax/vax/pmap.c,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.160 retrieving revision 1.160.10.3 diff -u -p -r1.160 -r1.160.10.3 --- src/sys/arch/vax/vax/pmap.c 2008/04/24 15:35:27 1.160 +++ src/sys/arch/vax/vax/pmap.c 2009/04/28 07:34:54 1.160.10.3 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.160 2008/04/24 15:35:27 ad Exp $ */ +/* $NetBSD: pmap.c,v 1.160.10.3 2009/04/28 07:34:54 skrll Exp $ */ /* * Copyright (c) 1994, 1998, 1999, 2003 Ludd, University of Lule}, Sweden. * All rights reserved. @@ -30,10 +30,11 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.160 2008/04/24 15:35:27 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.160.10.3 2009/04/28 07:34:54 skrll Exp $"); #include "opt_ddb.h" #include "opt_cputype.h" +#include "opt_modular.h" #include "opt_multiprocessor.h" #include "opt_lockdebug.h" #include "opt_pipe.h" @@ -92,7 +93,8 @@ uintptr_t scratch; #define SCRATCHPAGES 4 -struct pmap kernel_pmap_store; +static struct pmap kernel_pmap_store; +struct pmap *const kernel_pmap_ptr = &kernel_pmap_store; struct pte *Sysmap; /* System page table */ struct pv_entry *pv_table; /* array of entries, one per LOGICAL page */ @@ -237,8 +239,8 @@ calc_kvmsize(vsize_t usrptsize) #if VAX46 || VAX49 kvmsize += 0x800000; /* 8 MB framebuffer */ #endif -#ifdef LKM - /* LKMs are allocated out of kernel_map */ +#ifdef MODULAR + /* Modules are allocated out of kernel_map */ #define MAXLKMSIZ 0x100000 /* XXX */ kvmsize += MAXLKMSIZ; #endif @@ -471,7 +473,7 @@ pmap_steal_memory(vsize_t size, vaddr_t v = (vm_physmem[0].avail_start << PGSHIFT) | KERNBASE; vm_physmem[0].avail_start += npgs; vm_physmem[0].start += npgs; - bzero((void *)v, size); + memset((void *)v, 0, size); return v; } @@ -808,8 +810,8 @@ grow_p0(struct pmap *pm, int reqlen) from, to, srclen, dstlen)); if (inuse) - bcopy(from, to, srclen); - bzero(to+srclen, dstlen-srclen); + memcpy( to, from, srclen); + memset(to+srclen, 0, dstlen-srclen); p0br = (u_long)pm->pm_p0br; pm->pm_p0br = (struct pte *)nptespc; pm->pm_p0lr = (len/PPTESZ); @@ -841,9 +843,9 @@ grow_p1(struct pmap *pm, int len) * Copy the old ptes to the new space. * Done by moving on system page table. */ - bzero(kvtopte(nptespc), vax_btop(nlen-olen) * PPTESZ); + memset(kvtopte(nptespc), 0, vax_btop(nlen-olen) * PPTESZ); if (optespc) - bcopy(kvtopte(optespc), kvtopte(nptespc+nlen-olen), + memcpy( kvtopte(nptespc+nlen-olen), kvtopte(optespc), vax_btop(olen) * PPTESZ); pm->pm_p1ap = (struct pte *)nptespc; @@ -889,7 +891,7 @@ pmap_create(void) { struct pmap *pmap; - MALLOC(pmap, struct pmap *, sizeof(*pmap), M_VMPMAP, M_WAITOK|M_ZERO); + pmap = malloc(sizeof(*pmap), M_VMPMAP, M_WAITOK|M_ZERO); pmap_pinit(pmap); simple_lock_init(&pmap->pm_lock); return (pmap); @@ -963,7 +965,7 @@ pmap_destroy(pmap_t pmap) panic("pmap_destroy used pmap"); #endif pmap_release(pmap); - FREE(pmap, M_VMPMAP); + free(pmap, M_VMPMAP); } } @@ -1036,12 +1038,12 @@ pmap_kremove(vaddr_t va, vsize_t len) continue; if (pte->pg_sref == 0) panic("pmap_kremove"); - bzero(pte, LTOHPN * sizeof(struct pte)); + memset(pte, 0, LTOHPN * sizeof(struct pte)); pte += LTOHPN; } #else len >>= VAX_PGSHIFT; - bzero(pte, len * sizeof(struct pte)); + memset(pte, 0, len * sizeof(struct pte)); #endif #if defined(MULTIPROCESSOR) cpu_send_ipi(IPI_DEST_ALL, IPI_TBIA); @@ -1054,7 +1056,7 @@ pmap_kremove(vaddr_t va, vsize_t len) * upgrades mappings to more "rights". */ int -pmap_enter(pmap_t pmap, vaddr_t v, paddr_t p, vm_prot_t prot, int flags) +pmap_enter(pmap_t pmap, vaddr_t v, paddr_t p, vm_prot_t prot, u_int flags) { struct pv_entry *pv, *tmp; int s, newpte, oldpte; @@ -1336,7 +1338,7 @@ pmap_protect_long(pmap_t pmap, vaddr_t s panic("pmap_remove PG_SREF page"); #endif RECURSESTART; - bzero(pts, sizeof(struct pte) * LTOHPN); + memset(pts, 0, sizeof(struct pte) * LTOHPN); if (pt != Sysmap) { if (ptpinuse(pts) == 0) rmptep(pts); @@ -1564,7 +1566,7 @@ pmap_page_protect_long(struct pv_entry * if ((pv->pv_attr & (PG_V|PG_M)) != (PG_V|PG_M)) pv->pv_attr |= g[0]|g[1]|g[2]|g[3]|g[4]|g[5]|g[6]|g[7]; - bzero(g, sizeof(struct pte) * LTOHPN); + memset(g, 0, sizeof(struct pte) * LTOHPN); if (pv->pv_pmap != pmap_kernel()) { if (ptpinuse(g) == 0) rmptep((void *)g); @@ -1586,7 +1588,7 @@ pmap_page_protect_long(struct pv_entry * if ((pv->pv_attr & (PG_V|PG_M)) != (PG_V|PG_M)) pv->pv_attr |= g[0]|g[1]|g[2]|g[3]|g[4]|g[5]|g[6]|g[7]; - bzero(g, sizeof(struct pte) * LTOHPN); + memset(g, 0, sizeof(struct pte) * LTOHPN); if (pl->pv_pmap != pmap_kernel()) { if (ptpinuse(g) == 0) rmptep((void *)g); @@ -1795,7 +1797,7 @@ get_ptp(int w) if ((a = ptpp)) { ptpp = (int *)*ptpp; - bzero(a, VAX_NBPG); + memset(a, 0, VAX_NBPG); return (vaddr_t)a; } a = (int *)getpage(w);