diff --git a/sys/amd64/amd64/genassym.c b/sys/amd64/amd64/genassym.c index fdc0b77e3c43..c92e2c02fe20 100644 --- a/sys/amd64/amd64/genassym.c +++ b/sys/amd64/amd64/genassym.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)genassym.c 5.11 (Berkeley) 5/10/91 - * $Id: genassym.c,v 1.9 1994/09/01 05:12:16 davidg Exp $ + * $Id: genassym.c,v 1.10 1994/09/02 05:58:50 davidg Exp $ */ #include @@ -66,7 +66,6 @@ main() struct sigframe *sigf = (struct sigframe *)0; register unsigned i; - printf("#define\tI386_CR3PAT %d\n", I386_CR3PAT); printf("#define\tUDOT_SZ %d\n", sizeof(struct user)); printf("#define\tP_FORW %d\n", &p->p_forw); printf("#define\tP_BACK %d\n", &p->p_back); @@ -91,7 +90,6 @@ main() /* printf("#define\tV_PGREC %d\n", &vm->v_pgrec); */ /* printf("#define\tV_FASTPGREC %d\n", &vm->v_fastpgrec); */ printf("#define\tUPAGES %d\n", UPAGES); - printf("#define\tHIGHPAGES %d\n", HIGHPAGES); printf("#define\tCLSIZE %d\n", CLSIZE); printf("#define\tNBPG %d\n", NBPG); printf("#define\tNPTEPG %d\n", NPTEPG); diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index b76d86df6db8..15b90ddfaccf 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)locore.s 7.3 (Berkeley) 5/13/91 - * $Id: locore.s,v 1.25 1994/09/05 05:20:29 davidg Exp $ + * $Id: locore.s,v 1.26 1994/09/05 14:09:41 bde Exp $ */ /* @@ -480,7 +480,6 @@ NON_GPROF_ENTRY(btext) /* load base of page directory and enable mapping */ movl %esi,%eax /* phys address of ptd in proc 0 */ - orl $I386_CR3PAT,%eax movl %eax,%cr3 /* load ptd addr into mmu */ movl %cr0,%eax /* get control word */ orl $CR0_PE|CR0_PG,%eax /* enable paging */ diff --git a/sys/amd64/amd64/locore.s b/sys/amd64/amd64/locore.s index b76d86df6db8..15b90ddfaccf 100644 --- a/sys/amd64/amd64/locore.s +++ b/sys/amd64/amd64/locore.s @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)locore.s 7.3 (Berkeley) 5/13/91 - * $Id: locore.s,v 1.25 1994/09/05 05:20:29 davidg Exp $ + * $Id: locore.s,v 1.26 1994/09/05 14:09:41 bde Exp $ */ /* @@ -480,7 +480,6 @@ NON_GPROF_ENTRY(btext) /* load base of page directory and enable mapping */ movl %esi,%eax /* phys address of ptd in proc 0 */ - orl $I386_CR3PAT,%eax movl %eax,%cr3 /* load ptd addr into mmu */ movl %cr0,%eax /* get control word */ orl $CR0_PE|CR0_PG,%eax /* enable paging */ diff --git a/sys/amd64/amd64/support.S b/sys/amd64/amd64/support.S index 93962a927199..0f929f8ec696 100644 --- a/sys/amd64/amd64/support.S +++ b/sys/amd64/amd64/support.S @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: support.s,v 1.15 1994/08/09 11:21:44 davidg Exp $ + * $Id: support.s,v 1.16 1994/09/04 10:24:22 davidg Exp $ */ #include "assym.s" /* system definitions */ @@ -1189,7 +1189,6 @@ ENTRY(rcr3) /* void load_cr3(caddr_t cr3) */ ENTRY(load_cr3) movl 4(%esp),%eax - orl $I386_CR3PAT,%eax movl %eax,%cr3 ret diff --git a/sys/amd64/amd64/support.s b/sys/amd64/amd64/support.s index 93962a927199..0f929f8ec696 100644 --- a/sys/amd64/amd64/support.s +++ b/sys/amd64/amd64/support.s @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: support.s,v 1.15 1994/08/09 11:21:44 davidg Exp $ + * $Id: support.s,v 1.16 1994/09/04 10:24:22 davidg Exp $ */ #include "assym.s" /* system definitions */ @@ -1189,7 +1189,6 @@ ENTRY(rcr3) /* void load_cr3(caddr_t cr3) */ ENTRY(load_cr3) movl 4(%esp),%eax - orl $I386_CR3PAT,%eax movl %eax,%cr3 ret diff --git a/sys/amd64/include/vmparam.h b/sys/amd64/include/vmparam.h index 0fb5f97f2182..b2da40947489 100644 --- a/sys/amd64/include/vmparam.h +++ b/sys/amd64/include/vmparam.h @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * from: @(#)vmparam.h 5.9 (Berkeley) 5/12/91 - * $Id: vmparam.h,v 1.13 1994/05/25 08:57:22 rgrimes Exp $ + * $Id: vmparam.h,v 1.14 1994/09/01 03:16:40 davidg Exp $ */ @@ -47,23 +47,6 @@ * Machine dependent constants for 386. */ -/* - * Virtual address space arrangement. On 386, both user and kernel - * share the address space, not unlike the vax. - * USRTEXT is the start of the user text/data space, while USRSTACK - * is the top (end) of the user stack. Immediately above the user stack - * resides the user structure, which is UPAGES long and contains the - * kernel stack. - * - * Immediately after the user structure is the page table map, and then - * kernal address space. - */ -#define USRTEXT 0UL -/* #define USRSTACK 0xFDBFE000UL */ -#define BTOPUSRSTACK (0xFDC00-(UPAGES)) /* btop(USRSTACK) */ -#define LOWPAGES 0UL -#define HIGHPAGES UPAGES - /* * Virtual memory related constants, all in bytes */ @@ -84,6 +67,8 @@ #define SGROWSIZ (128UL*1024) /* amount to grow stack */ #endif +#define USRTEXT (1*NBPG) /* base of user text XXX bogus */ + /* * Default sizes of swap allocation chunks (see dmap.h). * The actual values may be changed in vminit() based on MAXDSIZ. @@ -111,11 +96,6 @@ */ #define USRIOSIZE 1024 -/* - * The size of the clock loop. - */ -#define LOOPPAGES (maxfree - firstfree) - /* * The time for a process to be blocked before being very swappable. * This is a number of seconds which the system takes as being a non-trivial @@ -127,82 +107,12 @@ */ #define MAXSLP 20 -/* - * A swapped in process is given a small amount of core without being bothered - * by the page replacement algorithm. Basically this says that if you are - * swapped in you deserve some resources. We protect the last SAFERSS - * pages against paging and will just swap you out rather than paging you. - * Note that each process has at least UPAGES+CLSIZE pages which are not - * paged anyways (this is currently 8+2=10 pages or 5k bytes), so this - * number just means a swapped in process is given around 25k bytes. - * Just for fun: current memory prices are 4600$ a megabyte on VAX (4/22/81), - * so we loan each swapped in process memory worth 100$, or just admit - * that we don't consider it worthwhile and swap it out to disk which costs - * $30/mb or about $0.75. - * { wfj 6/16/89: Retail AT memory expansion $800/megabyte, loan of $17 - * on disk costing $7/mb or $0.18 (in memory still 100:1 in cost!) } - */ -#define SAFERSS 8 /* nominal ``small'' resident set size - protected against replacement */ - -/* - * DISKRPM is used to estimate the number of paging i/o operations - * which one can expect from a single disk controller. - */ -#define DISKRPM 60 - -/* - * Klustering constants. Klustering is the gathering - * of pages together for pagein/pageout, while clustering - * is the treatment of hardware page size as though it were - * larger than it really is. - * - * KLMAX gives maximum cluster size in CLSIZE page (cluster-page) - * units. Note that KLMAX*CLSIZE must be <= DMMIN in dmap.h. - */ - -#define KLMAX (4/CLSIZE) -#define KLSEQL (2/CLSIZE) /* in klust if vadvise(VA_SEQL) */ -#define KLIN (4/CLSIZE) /* default data/stack in klust */ -#define KLTXT (4/CLSIZE) /* default text in klust */ -#define KLOUT (4/CLSIZE) - -/* - * KLSDIST is the advance or retard of the fifo reclaim for sequential - * processes data space. - */ -#define KLSDIST 3 /* klusters advance/retard for seq. fifo */ - -/* - * There are two clock hands, initially separated by HANDSPREAD bytes - * (but at most all of user memory). The amount of time to reclaim - * a page once the pageout process examines it increases with this - * distance and decreases as the scan rate rises. - */ -#define HANDSPREAD (2 * 1024 * 1024) - -/* - * The number of times per second to recompute the desired paging rate - * and poke the pagedaemon. - */ -#define RATETOSCHEDPAGING 4 - -/* - * Believed threshold (in megabytes) for which interleaved - * swapping area is desirable. - */ -#define LOTSOFMEM 2 - -#define mapin(pte, v, pfnum, prot) \ - {(*(int *)(pte) = ((pfnum)<p_addr) - -/* - * Flush MMU TLB - */ - -#ifndef I386_CR3PAT -#define I386_CR3PAT 0x0 -#endif - #endif /* _MACHINE_VMPARAM_H_ */ diff --git a/sys/i386/i386/genassym.c b/sys/i386/i386/genassym.c index fdc0b77e3c43..c92e2c02fe20 100644 --- a/sys/i386/i386/genassym.c +++ b/sys/i386/i386/genassym.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)genassym.c 5.11 (Berkeley) 5/10/91 - * $Id: genassym.c,v 1.9 1994/09/01 05:12:16 davidg Exp $ + * $Id: genassym.c,v 1.10 1994/09/02 05:58:50 davidg Exp $ */ #include @@ -66,7 +66,6 @@ main() struct sigframe *sigf = (struct sigframe *)0; register unsigned i; - printf("#define\tI386_CR3PAT %d\n", I386_CR3PAT); printf("#define\tUDOT_SZ %d\n", sizeof(struct user)); printf("#define\tP_FORW %d\n", &p->p_forw); printf("#define\tP_BACK %d\n", &p->p_back); @@ -91,7 +90,6 @@ main() /* printf("#define\tV_PGREC %d\n", &vm->v_pgrec); */ /* printf("#define\tV_FASTPGREC %d\n", &vm->v_fastpgrec); */ printf("#define\tUPAGES %d\n", UPAGES); - printf("#define\tHIGHPAGES %d\n", HIGHPAGES); printf("#define\tCLSIZE %d\n", CLSIZE); printf("#define\tNBPG %d\n", NBPG); printf("#define\tNPTEPG %d\n", NPTEPG); diff --git a/sys/i386/i386/locore.s b/sys/i386/i386/locore.s index b76d86df6db8..15b90ddfaccf 100644 --- a/sys/i386/i386/locore.s +++ b/sys/i386/i386/locore.s @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)locore.s 7.3 (Berkeley) 5/13/91 - * $Id: locore.s,v 1.25 1994/09/05 05:20:29 davidg Exp $ + * $Id: locore.s,v 1.26 1994/09/05 14:09:41 bde Exp $ */ /* @@ -480,7 +480,6 @@ NON_GPROF_ENTRY(btext) /* load base of page directory and enable mapping */ movl %esi,%eax /* phys address of ptd in proc 0 */ - orl $I386_CR3PAT,%eax movl %eax,%cr3 /* load ptd addr into mmu */ movl %cr0,%eax /* get control word */ orl $CR0_PE|CR0_PG,%eax /* enable paging */ diff --git a/sys/i386/i386/support.s b/sys/i386/i386/support.s index 93962a927199..0f929f8ec696 100644 --- a/sys/i386/i386/support.s +++ b/sys/i386/i386/support.s @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: support.s,v 1.15 1994/08/09 11:21:44 davidg Exp $ + * $Id: support.s,v 1.16 1994/09/04 10:24:22 davidg Exp $ */ #include "assym.s" /* system definitions */ @@ -1189,7 +1189,6 @@ ENTRY(rcr3) /* void load_cr3(caddr_t cr3) */ ENTRY(load_cr3) movl 4(%esp),%eax - orl $I386_CR3PAT,%eax movl %eax,%cr3 ret diff --git a/sys/i386/include/vmparam.h b/sys/i386/include/vmparam.h index 0fb5f97f2182..b2da40947489 100644 --- a/sys/i386/include/vmparam.h +++ b/sys/i386/include/vmparam.h @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * from: @(#)vmparam.h 5.9 (Berkeley) 5/12/91 - * $Id: vmparam.h,v 1.13 1994/05/25 08:57:22 rgrimes Exp $ + * $Id: vmparam.h,v 1.14 1994/09/01 03:16:40 davidg Exp $ */ @@ -47,23 +47,6 @@ * Machine dependent constants for 386. */ -/* - * Virtual address space arrangement. On 386, both user and kernel - * share the address space, not unlike the vax. - * USRTEXT is the start of the user text/data space, while USRSTACK - * is the top (end) of the user stack. Immediately above the user stack - * resides the user structure, which is UPAGES long and contains the - * kernel stack. - * - * Immediately after the user structure is the page table map, and then - * kernal address space. - */ -#define USRTEXT 0UL -/* #define USRSTACK 0xFDBFE000UL */ -#define BTOPUSRSTACK (0xFDC00-(UPAGES)) /* btop(USRSTACK) */ -#define LOWPAGES 0UL -#define HIGHPAGES UPAGES - /* * Virtual memory related constants, all in bytes */ @@ -84,6 +67,8 @@ #define SGROWSIZ (128UL*1024) /* amount to grow stack */ #endif +#define USRTEXT (1*NBPG) /* base of user text XXX bogus */ + /* * Default sizes of swap allocation chunks (see dmap.h). * The actual values may be changed in vminit() based on MAXDSIZ. @@ -111,11 +96,6 @@ */ #define USRIOSIZE 1024 -/* - * The size of the clock loop. - */ -#define LOOPPAGES (maxfree - firstfree) - /* * The time for a process to be blocked before being very swappable. * This is a number of seconds which the system takes as being a non-trivial @@ -127,82 +107,12 @@ */ #define MAXSLP 20 -/* - * A swapped in process is given a small amount of core without being bothered - * by the page replacement algorithm. Basically this says that if you are - * swapped in you deserve some resources. We protect the last SAFERSS - * pages against paging and will just swap you out rather than paging you. - * Note that each process has at least UPAGES+CLSIZE pages which are not - * paged anyways (this is currently 8+2=10 pages or 5k bytes), so this - * number just means a swapped in process is given around 25k bytes. - * Just for fun: current memory prices are 4600$ a megabyte on VAX (4/22/81), - * so we loan each swapped in process memory worth 100$, or just admit - * that we don't consider it worthwhile and swap it out to disk which costs - * $30/mb or about $0.75. - * { wfj 6/16/89: Retail AT memory expansion $800/megabyte, loan of $17 - * on disk costing $7/mb or $0.18 (in memory still 100:1 in cost!) } - */ -#define SAFERSS 8 /* nominal ``small'' resident set size - protected against replacement */ - -/* - * DISKRPM is used to estimate the number of paging i/o operations - * which one can expect from a single disk controller. - */ -#define DISKRPM 60 - -/* - * Klustering constants. Klustering is the gathering - * of pages together for pagein/pageout, while clustering - * is the treatment of hardware page size as though it were - * larger than it really is. - * - * KLMAX gives maximum cluster size in CLSIZE page (cluster-page) - * units. Note that KLMAX*CLSIZE must be <= DMMIN in dmap.h. - */ - -#define KLMAX (4/CLSIZE) -#define KLSEQL (2/CLSIZE) /* in klust if vadvise(VA_SEQL) */ -#define KLIN (4/CLSIZE) /* default data/stack in klust */ -#define KLTXT (4/CLSIZE) /* default text in klust */ -#define KLOUT (4/CLSIZE) - -/* - * KLSDIST is the advance or retard of the fifo reclaim for sequential - * processes data space. - */ -#define KLSDIST 3 /* klusters advance/retard for seq. fifo */ - -/* - * There are two clock hands, initially separated by HANDSPREAD bytes - * (but at most all of user memory). The amount of time to reclaim - * a page once the pageout process examines it increases with this - * distance and decreases as the scan rate rises. - */ -#define HANDSPREAD (2 * 1024 * 1024) - -/* - * The number of times per second to recompute the desired paging rate - * and poke the pagedaemon. - */ -#define RATETOSCHEDPAGING 4 - -/* - * Believed threshold (in megabytes) for which interleaved - * swapping area is desirable. - */ -#define LOTSOFMEM 2 - -#define mapin(pte, v, pfnum, prot) \ - {(*(int *)(pte) = ((pfnum)<p_addr) - -/* - * Flush MMU TLB - */ - -#ifndef I386_CR3PAT -#define I386_CR3PAT 0x0 -#endif - #endif /* _MACHINE_VMPARAM_H_ */ diff --git a/sys/ufs/mfs/mfs_vnops.c b/sys/ufs/mfs/mfs_vnops.c index ded8c79ab945..d89429409495 100644 --- a/sys/ufs/mfs/mfs_vnops.c +++ b/sys/ufs/mfs/mfs_vnops.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)mfs_vnops.c 8.3 (Berkeley) 9/21/93 - * $Id$ + * $Id: mfs_vnops.c,v 1.3 1994/08/02 07:54:44 davidg Exp $ */ #include @@ -190,85 +190,6 @@ mfs_strategy(ap) return (0); } -#if defined(vax) || defined(tahoe) -/* - * Memory file system I/O. - * - * Essentially play ubasetup() and disk interrupt service routine by - * doing the copies to or from the memfs process. If doing physio - * (i.e. pagein), we must map the I/O through the kernel virtual - * address space. - */ -void -mfs_doio(bp, base) - register struct buf *bp; - caddr_t base; -{ - register struct pte *pte, *ppte; - register caddr_t vaddr; - int off, npf, npf2, reg; - caddr_t kernaddr, offset; - - /* - * For phys I/O, map the b_data into kernel virtual space using - * the Mfsiomap pte's. - */ - if ((bp->b_flags & B_PHYS) == 0) { - kernaddr = bp->b_data; - } else { - if (bp->b_flags & (B_PAGET | B_UAREA | B_DIRTY)) - panic("swap on memfs?"); - off = (int)bp->b_data & PGOFSET; - npf = btoc(bp->b_bcount + off); - /* - * Get some mapping page table entries - */ - while ((reg = rmalloc(mfsmap, (long)npf)) == 0) { - mfsmap_want++; - sleep((caddr_t)&mfsmap_want, PZERO-1); - } - reg--; - pte = vtopte(bp->b_proc, btop(bp->b_data)); - /* - * Do vmaccess() but with the Mfsiomap page table. - */ - ppte = &Mfsiomap[reg]; - vaddr = &mfsiobuf[reg * NBPG]; - kernaddr = vaddr + off; - for (npf2 = npf; npf2; npf2--) { - mapin(ppte, (u_int)vaddr, pte->pg_pfnum, - (int)(PG_V|PG_KW)); -#if defined(tahoe) - if ((bp->b_flags & B_READ) == 0) - mtpr(P1DC, vaddr); -#endif - ppte++; - pte++; - vaddr += NBPG; - } - } - offset = base + (bp->b_blkno << DEV_BSHIFT); - if (bp->b_flags & B_READ) - bp->b_error = copyin(offset, kernaddr, bp->b_bcount); - else - bp->b_error = copyout(kernaddr, offset, bp->b_bcount); - if (bp->b_error) - bp->b_flags |= B_ERROR; - /* - * Release pte's used by physical I/O. - */ - if (bp->b_flags & B_PHYS) { - rmfree(mfsmap, (long)npf, (long)++reg); - if (mfsmap_want) { - mfsmap_want = 0; - wakeup((caddr_t)&mfsmap_want); - } - } - biodone(bp); -} -#endif /* vax || tahoe */ - -#if defined(hp300) || defined(i386) || defined(mips) || defined(sparc) || defined(luna68k) /* * Memory file system I/O. * @@ -289,7 +210,6 @@ mfs_doio(bp, base) bp->b_flags |= B_ERROR; biodone(bp); } -#endif /* * This is a noop, simply returning what one has been given. diff --git a/sys/vm/vm_meter.c b/sys/vm/vm_meter.c index d99f30629e7a..e1f0072650e2 100644 --- a/sys/vm/vm_meter.c +++ b/sys/vm/vm_meter.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)vm_meter.c 8.4 (Berkeley) 1/4/94 - * $Id$ + * $Id: vm_meter.c,v 1.3 1994/08/02 07:55:27 davidg Exp $ */ #include @@ -44,7 +44,6 @@ struct loadavg averunnable; /* load average, of runnable procs */ int maxslp = MAXSLP; -int saferss = SAFERSS; void vmmeter()