db_memrw.c: There is no pmap_pte in pmap.new.c, use kvtopte.
disksubr.c: kill register, use explicit types (egcs). kgdb_machdep.c: There is no pmap_pte in pmap.new.c, use kvtopte. locore.s: PTmap, PTD and PTDpde are not used with pmap.new.c. machdep.c: remove unused reference to panicstr (egcs). Some pmap.new.c changes. vm_machdep.c: Change i386_btop to ns532_btop in pmap.new.c code.
This commit is contained in:
parent
425a6f2c60
commit
0a733bc86a
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: db_memrw.c,v 1.5 1997/04/21 16:17:32 matthias Exp $ */
|
||||
/* $NetBSD: db_memrw.c,v 1.6 1998/04/21 20:12:17 matthias Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1996 Gordon W. Ross
|
||||
|
@ -92,7 +92,7 @@ set_pte(addr, pte)
|
|||
vm_offset_t addr;
|
||||
pt_entry_t pte;
|
||||
{
|
||||
*(pt_entry_t *)pmap_pte(pmap_kernel(), addr) = pte;
|
||||
*kvtopte(addr) = pte;
|
||||
pmap_update();
|
||||
}
|
||||
|
||||
|
@ -133,7 +133,7 @@ db_write_text(addr, size, data)
|
|||
set_pte(prevpg, oldpte);
|
||||
|
||||
firstpage:
|
||||
oldpte = *(pt_entry_t *)pmap_pte(pmap_kernel(), pgva);
|
||||
oldpte = *kvtopte(pgva);
|
||||
if ((oldpte & PG_V) == 0) {
|
||||
printf(" address %p not a valid page\n", dst);
|
||||
return;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: disksubr.c,v 1.13 1997/08/27 11:24:05 bouyer Exp $ */
|
||||
/* $NetBSD: disksubr.c,v 1.14 1998/04/21 20:12:17 matthias Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1982, 1986, 1988 Regents of the University of California.
|
||||
|
@ -64,10 +64,10 @@ char *
|
|||
readdisklabel(dev, strat, lp, osdep)
|
||||
dev_t dev;
|
||||
void (*strat) __P((struct buf *));
|
||||
register struct disklabel *lp;
|
||||
struct disklabel *lp;
|
||||
struct cpu_disklabel *osdep;
|
||||
{
|
||||
register struct buf *bp;
|
||||
struct buf *bp;
|
||||
struct disklabel *dlp;
|
||||
char *msg = NULL;
|
||||
|
||||
|
@ -113,12 +113,12 @@ readdisklabel(dev, strat, lp, osdep)
|
|||
*/
|
||||
int
|
||||
setdisklabel(olp, nlp, openmask, osdep)
|
||||
register struct disklabel *olp, *nlp;
|
||||
struct disklabel *olp, *nlp;
|
||||
u_long openmask;
|
||||
struct cpu_disklabel *osdep;
|
||||
{
|
||||
register i;
|
||||
register struct partition *opp, *npp;
|
||||
int i;
|
||||
struct partition *opp, *npp;
|
||||
|
||||
if (nlp->d_magic != DISKMAGIC || nlp->d_magic2 != DISKMAGIC ||
|
||||
dkcksum(nlp) != 0)
|
||||
|
@ -161,7 +161,7 @@ int
|
|||
writedisklabel(dev, strat, lp, osdep)
|
||||
dev_t dev;
|
||||
void (*strat) __P((struct buf *));
|
||||
register struct disklabel *lp;
|
||||
struct disklabel *lp;
|
||||
struct cpu_disklabel *osdep;
|
||||
{
|
||||
struct buf *bp;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: kgdb_machdep.c,v 1.5 1997/04/21 16:17:39 matthias Exp $ */
|
||||
/* $NetBSD: kgdb_machdep.c,v 1.6 1998/04/21 20:12:17 matthias Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1996 Matthias Pfaller.
|
||||
|
@ -50,15 +50,15 @@ kgdb_acc(va, len)
|
|||
size_t len;
|
||||
{
|
||||
vm_offset_t last_va;
|
||||
pt_entry_t pte;
|
||||
pt_entry_t *pte;
|
||||
|
||||
last_va = va + len;
|
||||
va &= ~PGOFSET;
|
||||
last_va &= ~PGOFSET;
|
||||
|
||||
do {
|
||||
pte = *(pt_entry_t *)pmap_pte(pmap_kernel(), va);
|
||||
if ((pte & PG_V) == 0)
|
||||
pte = kvtopte(va);
|
||||
if ((*pte & PG_V) == 0)
|
||||
return (0);
|
||||
va += NBPG;
|
||||
} while (va < last_va);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: locore.s,v 1.50 1998/04/11 17:44:11 matthias Exp $ */
|
||||
/* $NetBSD: locore.s,v 1.51 1998/04/21 20:12:18 matthias Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1993 Philip A. Nelson.
|
||||
|
@ -61,11 +61,7 @@
|
|||
* PTmap is recursive pagemap at top of virtual address space.
|
||||
* Within PTmap, the page directory can be found (third indirection).
|
||||
*/
|
||||
#ifdef PMAP_NEW
|
||||
SET(PTmap, (PDSLOT_PTE << PDSHIFT))
|
||||
SET(PTD, (_C_LABEL(PTmap) + PDSLOT_PTE * NBPG))
|
||||
SET(PTDpde, (_C_LABEL(PTD) + PDSLOT_PTE * PDE_SIZE))
|
||||
#else
|
||||
#if !defined(PMAP_NEW)
|
||||
SET(PTmap, (PTDPTDI << PDSHIFT))
|
||||
SET(PTD, (_C_LABEL(PTmap) + PTDPTDI * NBPG))
|
||||
SET(PTDpde, (_C_LABEL(PTD) + PTDPTDI * PDE_SIZE))
|
||||
|
@ -75,11 +71,7 @@
|
|||
* APTmap, APTD is the alternate recursive pagemap.
|
||||
* It's used when modifying another process's page tables.
|
||||
*/
|
||||
#ifdef PMAP_NEW
|
||||
SET(APTmap, (PDSLOT_APTE << PDSHIFT))
|
||||
SET(APTD, (_C_LABEL(APTmap) + PDSLOT_APTE * NBPG))
|
||||
SET(APTDpde, (_C_LABEL(PTD) + PDSLOT_APTE * PDE_SIZE))
|
||||
#else
|
||||
#if !defined(PMAP_NEW)
|
||||
SET(APTmap, (APTDPTDI << PDSHIFT))
|
||||
SET(APTD, (_C_LABEL(APTmap) + APTDPTDI * NBPG))
|
||||
SET(APTDpde, (_C_LABEL(PTD) + APTDPTDI * PDE_SIZE))
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: machdep.c,v 1.74 1998/04/11 17:44:11 matthias Exp $ */
|
||||
/* $NetBSD: machdep.c,v 1.75 1998/04/21 20:12:18 matthias Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1996 Matthias Pfaller.
|
||||
|
@ -677,7 +677,6 @@ cpu_reboot(howto, bootstr)
|
|||
char *bootstr;
|
||||
{
|
||||
extern int cold;
|
||||
extern const char *panicstr;
|
||||
int s;
|
||||
|
||||
/* If system is cold, just halt. */
|
||||
|
@ -1124,8 +1123,11 @@ init532()
|
|||
if (maxphysmem != 0 && avail_end > maxphysmem)
|
||||
avail_end = maxphysmem;
|
||||
physmem = btoc(avail_end);
|
||||
#ifndef NKPDE
|
||||
nkpde = min(NKPDE_MAX,
|
||||
#if defined(PMAP_NEW)
|
||||
nkpde = max(min(nkpde, NKPTP_MAX), NKPTP_MIN);
|
||||
#else
|
||||
if (nkpde == 0)
|
||||
nkpde = min(NKPDE_MAX,
|
||||
NKPDE_BASE + ((u_int) avail_end >> 20) * NKPDE_SCALE);
|
||||
#endif
|
||||
|
||||
|
@ -1144,7 +1146,11 @@ init532()
|
|||
pd = (pd_entry_t *) alloc_pages(1);
|
||||
|
||||
/* Recursively map in the page directory */
|
||||
#if defined(PMAP_NEW)
|
||||
pd[PDSLOT_PTE] = (pd_entry_t)pd | PG_V | PG_KW;
|
||||
#else
|
||||
pd[PTDPTDI] = (pd_entry_t)pd | PG_V | PG_KW;
|
||||
#endif
|
||||
|
||||
/* Map interrupt stack. */
|
||||
map(pd, 0xffc00000, alloc_pages(1), PG_KW, 0x001000);
|
||||
|
@ -1312,7 +1318,11 @@ cpu_reset()
|
|||
di();
|
||||
|
||||
/* Alias kernel memory at 0. */
|
||||
#if defined(PMAP_NEW)
|
||||
PDP_BASE[0] = PDP_BASE[pdei(KERNBASE)];
|
||||
#else
|
||||
PTD[0] = PTD[pdei(KERNBASE)];
|
||||
#endif
|
||||
pmap_update();
|
||||
|
||||
/* Jump to low memory. */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: vm_machdep.c,v 1.23 1998/04/11 17:44:11 matthias Exp $ */
|
||||
/* $NetBSD: vm_machdep.c,v 1.24 1998/04/21 20:12:18 matthias Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1996 Matthias Pfaller.
|
||||
|
@ -406,11 +406,11 @@ vmapbuf(bp, len)
|
|||
* where we we just allocated (TLB will be flushed when our
|
||||
* mapping is removed).
|
||||
*/
|
||||
tpte = PTE_BASE + i386_btop(taddr);
|
||||
tpte = PTE_BASE + ns532_btop(taddr);
|
||||
while (len) {
|
||||
fpa = pmap_extract(vm_map_pmap(&bp->b_proc->p_vmspace->vm_map),
|
||||
faddr);
|
||||
*tpte = fpa | PG_RW | PG_V | pmap_pg_g;
|
||||
*tpte = fpa | PG_RW | PG_V;
|
||||
tpte++;
|
||||
faddr += PAGE_SIZE;
|
||||
len -= PAGE_SIZE;
|
||||
|
|
Loading…
Reference in New Issue