thorpej
d47ea67c1f
Define one page free list, and put all pages on it.
1998-07-08 04:43:18 +00:00
gwr
1b01ec0993
First cut at UVM support. Compiles, but not tested yet.
1998-06-09 20:47:17 +00:00
gwr
c714d95b83
First cut at MACHINE_NEW_NONCONTIG - not enabled yet.
1998-06-09 20:31:28 +00:00
thorpej
6626878e7b
It is no longer necessary for pmap_pinit() and pmap_release() to be
...
pmap interface functions, as NetBSD no longer uses statically allocated
pmaps (except for the kernel pmap, which is special-cased anyhow).
1998-05-19 19:00:11 +00:00
jeremy
a1efa84a4d
Modified the comments for the recentlty implemented pmap_map() function.
1998-02-09 19:56:37 +00:00
gwr
e387ffba22
Add pmap_map
1998-02-08 04:57:58 +00:00
gwr
eff2e270bd
Merge arch/sun3x into arch/sun3
1998-02-05 04:56:24 +00:00
gwr
cc1b4e4724
In pmap_bootstrap_copyprom, copy only the last PTE from the PROM's
...
DVMA segment (for the page reserved by the PROM). If we copy all
the mappings, pmap_enter_kernel may complain about finding valid
PTEs that are not recorded in our PV lists. Make pmap_remove_pte
do something reasonable if it finds a PTE for a managed page that
has not been recorded in the PV lists. (Plus other minor stuff).
1998-01-22 22:00:25 +00:00
gwr
58126a3b29
Separate pmap_activate() from _pmap_switch(), so the latter can remain
...
equivalent to what locore.s:cpu_switch does with in-line assembly when
PMAP_DEBUG is not defined. Also do splimp/splx in pmap_activate.
1998-01-22 21:48:42 +00:00
thorpej
d14e18faa9
Make pmap_activate() take a proc *.
1998-01-02 20:10:26 +00:00
gwr
9420004b46
Remove the for-loop that wants to map multiple msgbuf pages.
...
Multiple msgbuf pages will not work without a redesign of
the kernel VM layout, so let's not pretend we can do it.
1997-10-23 02:24:41 +00:00
gwr
c669b1bdeb
Do the cpu_kcore_hdr initialization a little differently.
...
(also fix - was not setting pg_frame, pg_valid)
1997-10-05 20:43:27 +00:00
leo
d4713d24c2
Implement the kernel part of pr-1891. This allows for a more flexible sized
...
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
jeremy
bbf76eb63e
Implement pmap and va caching within C table managers to help speed
...
up PV->(pmap,va) operations.
1997-07-02 03:23:57 +00:00
veego
6cf26b26ae
s/_round_page/m68k_round_page/ s/_trunc_page/m68k_trunc_page/
...
s/_btop/m68k_btop/ s/_ptob/m68k_ptob/
1997-06-10 19:42:25 +00:00
jeremy
3f6f86d875
Undo changes which make pmap_xxxx_page() functions re-entrant; just block
...
all interrupts which might cause re-entrancy.
Allow virtual addresses which are not managed by the MI VM system to
participate in the PV system.
Remove a few frivoulous TLB cache flushes.
1997-05-30 07:02:14 +00:00
jeremy
1b2aae80c2
Added new lock system for the two virtual pages used in temporary mappings.
...
Allows pmap_zero_page() and pmap_copy_page() to be re-entrant.
1997-05-28 04:28:52 +00:00
jeremy
0304ff6aed
Implement code to dynamically size the number of page tables based on available
...
RAM at boot.
Also did some cleanup of unused functions, updated several comments, and
removed unecessary 'XXX's.
1997-05-20 06:01:19 +00:00
gwr
24af362f60
Implement pmap_pa_exists() so that /dev/mem works.
...
This was the reason ps (kvm_getargs) did not work.
1997-05-01 15:00:11 +00:00
thorpej
a2be180b39
Adjust for new kcore.h
1997-04-09 21:00:35 +00:00
jeremy
68755b199e
Physical page status functions pmap_clear_reference()
...
and pmap_clear_modify() weren't testing if the page whose status was being
changed was being managed. This caused kernel panics with X11.
1997-04-01 02:15:33 +00:00
gwr
c29412f1bb
fix a warning
1997-03-26 23:27:12 +00:00
gwr
c874276d35
First cut at crashdump support.
1997-03-21 22:46:05 +00:00
gwr
ee531cb3c9
s/sun3x_/_/ in sun3x_(round|trunc)_(page|seg) macros
1997-03-13 17:40:33 +00:00
gwr
51cfd7ed4d
Get the numbers of kernel MMU tables right.
1997-03-06 05:16:34 +00:00
gwr
9a79f92460
Clean out some junk I forgot to remove last time...
1997-03-06 00:15:56 +00:00
gwr
a4e5a18b63
Add pmap_bootstrap_setprom() with sets the PROM level-A tables to
...
allow the PROM monitor to see mappings in kernel space. This also
fixes a problem with exiting to the monitor with the stack pointer
set to some place in kernel space. Also fix NUM_KERN_PTES, and
change get_pte() so it works on any virtual address.
1997-03-06 00:04:18 +00:00
jeremy
290f55615a
Took switch statement out of main loop in pmap_protect() and explained more
...
of the rationale behind it.
1997-03-02 07:59:21 +00:00
jeremy
996c634929
Rewrite pmap_remove() to be speedier with large address spaces.
1997-02-22 03:18:30 +00:00
jeremy
035b20b171
Update copyright and fix typos in macro definition used when not debugging.
1997-02-19 04:17:32 +00:00
gwr
7190ad9936
Fix a major bug in pmap_remove_kernel() that causd the removal of
...
one page too many (worse, it unmapped our stack page... Ouch!)
Also, use loadcrp() and such instead of calling pmap_activate
in various places so we have more control over TLB flush.
Now pmap_activate() is called only by locore (and that call is
done only if PMAP_DEBUG is defined). Other minor clean-up...
1997-02-16 19:38:08 +00:00
gwr
7275a8976f
Add pmap_count(), fix some bugs... (from Jeremy).
1997-02-14 03:56:49 +00:00
gwr
27b8c79679
Latest version from Jeremy. Changes too numerous to describe here.
1997-02-12 23:09:32 +00:00
thorpej
8501929f45
Use copypage() and zeropage() in the right places.
1997-02-02 08:41:10 +00:00
gwr
2e2e2a855c
Change "machdep.h" to <machine/machdep.h>
1997-01-27 22:33:34 +00:00
gwr
aaf91fd6aa
Adapt to rename of pcb_mmuctx to pcb_mmucrp, and corrected
...
prototype of loadcrp(), which kills some bogus type casts.
1997-01-17 16:27:17 +00:00
gwr
f286cdd282
Move declaration of struct mmu_rootptr to mc68851.h
...
Kill a cast that is now unnecessary.
1997-01-16 22:12:50 +00:00
gwr
2ffbfe169b
Punt some historical stuff that was ifdefed out.
1997-01-14 21:01:33 +00:00
gwr
cd05f4190d
Initial import. Gets as far as nfs_mountroot.
1997-01-14 20:57:07 +00:00