Commit Graph

48 Commits

Author SHA1 Message Date
pk 0985cc7d7e Remove obsolete function declarations.
Move switchexit() to cpu.h
2000-05-31 12:04:29 +00:00
pk fca92e02ab Fix a couple of typos. 2000-05-31 11:23:21 +00:00
pk d4ac7f24ca Implement HyperSPARC specific pmap_{zero,copy}_page functions. 2000-05-01 14:06:41 +00:00
pk 78391926bf Allow for CPU specific page clear and page copy functions. 2000-04-30 21:09:43 +00:00
soren 95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
thorpej 2cfc62b5ae Update for pmap API change. 1999-11-14 02:39:09 +00:00
pk b19b1fc269 Each process (i.e. each `pmap') needs a region table for each CPU.
Implement this by making the fields `pm_reg_ptp' and `pm_reg_ptp_pa'
pointers to an array of `ncpu' region table pointers and corresponding
physical addresses.

This is a somewhat unfortunate side effect of having the per-CPU data
addressable by the same virtual address on each CPU.
1999-10-04 19:18:33 +00:00
chs f3a668ed84 eliminate the PMAP_NEW option by making it required for all ports.
ports which previously had no support for PMAP_NEW now implement
the pmap_k* interfaces as wrappers around the non-k versions.
1999-09-12 01:16:55 +00:00
thorpej 3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
pk 7c5f595062 mmu_pagein() prototype: change address argument to `vaddr_t'. 1999-06-28 14:44:57 +00:00
thorpej 0288ffb53a pmap_change_wiring() -> pmap_unwire(). 1999-06-17 19:23:20 +00:00
thorpej f5a527bb4e Remove pmap_pageable(); no pmap implements it, and it is not really useful,
because pmap_enter()/pmap_change_wiring() (soon to be pmap_unwire())
communicate the information in greater detail.
1999-06-17 18:21:21 +00:00
mycroft 9c6b797796 Changes for modified pmap_enter() API:
* Map the message buffer with access_type = VM_PROT_READ|VM_PROT_WRITE `just
  because'.
* Map the file system buffers with access_type = VM_PROT_READ|VM_PROT_WRITE to
  avoid possible problems with pagemove().
* Do not use VM_PROT_EXEC with either of the above.
* Map pages for /dev/mem with access_type = prot.  Also, DO NOT use
  pmap_kenter() for this, as we DO NOT want to lose modification information.
* Map pages in dumpsys() with VM_PROT_READ.
* Map pages in m68k mappedcopyin()/mappedcopyout() and writeback() with
  access_type = prot.
* For now, bus_dma*(), pmap_map(), vmapbuf(), and similar functions still use
  access_type = 0.  This should probably be revisited.
1999-03-26 23:41:25 +00:00
thorpej 8abe0d6b1c Adjust for the new "reaper" kernel thread: do not free the vmspace and
u-area in machine-dependent code.  Instead, call exit2() to schedule
the reaper to free them for us, once it is safe to do so (i.e. we are
no longer running on the dead proc's vmspace and stack).
1998-09-09 00:07:48 +00:00
pk b8a1caac4a Convert to [pv]addr_t & [pv]size_t. 1998-08-21 14:12:18 +00:00
fvdl ede1a3fc5b Make this compile again. 1998-03-02 17:58:34 +00:00
thorpej 85d56961e5 Update a comment relative to the vm_bootstrap_steal_memory() change, and
don't include pmap_free_pages() or pmap_next_page() in the new non-contig
case.
1998-01-08 23:48:16 +00:00
thorpej 9ca174a51d Implement pmap_activate(). 1998-01-02 22:57:56 +00:00
pk 24ad0e8316 Prototype pmap_writetext(). 1997-08-04 20:00:47 +00:00
pk 27434aef27 Follow lock changes (DEBUG => LOCKDEBUG). 1997-07-06 23:57:16 +00:00
pk 4846e5ba47 Adjust for generic lock changes. 1997-07-06 23:52:52 +00:00
pk a9b31740a2 Remove __VM_PMAP_HACK. 1997-06-28 19:56:12 +00:00
pk 957b6c1c18 Define macros for encoding I/O space bits into the physical address
passed to pmap_enter().
1997-05-24 19:59:25 +00:00
gwr e2a58b69f7 Add #define __VM_PMAP_HACK as a temporary measure. 1997-05-16 21:35:30 +00:00
pk d94f5b92f9 prototype mmu_pagein4m() #if DEBUG is on. 1996-05-27 20:29:03 +00:00
pk 75eb006fa2 No longer need to call mmu_pagein() through a pointer. 1996-05-27 01:13:02 +00:00
thorpej 722d0da592 RCS Id police. 1996-05-20 00:56:39 +00:00
abrown 4bbf23d04c Copyright police (s/Harvard University/Harvard College/). 1996-05-16 15:56:54 +00:00
pk 0ab4a52862 Add SRMMU/sun4m support. Size and layout of `struct pmap' has changed. 1996-03-31 22:09:13 +00:00
christos 9a07d9dec9 Add missing prototypes and fix the fp struct for svr4. 1996-03-14 19:49:04 +00:00
gwr 2de7b2e5cb update PMAP_PREFER 1996-02-28 22:44:33 +00:00
pk 10a0b4b79e Prototype pmap_dumpsize() and pmap_dumpmmu(). 1995-07-05 18:45:46 +00:00
pk e1873796ae Make size of `struct pmap' independent of `MMU3_L', so libkvm is
usable on all machines.
1995-04-13 16:24:40 +00:00
pk ba43a19831 3-level MMU changes: software MMU data structures now display a VM model
consisting of `regions', `segments' and `page maps'.
1995-04-13 13:48:46 +00:00
mycroft 22cefc03bc Bring back pmap_kernel(), for now always inlined as a pointer to
kernel_pmap_store.
1995-04-10 12:41:29 +00:00
jtc 71ab4ed9dc KERNEL -> _KERNEL 1995-03-28 18:13:48 +00:00
pk d374af4496 Prototype for pmap_pa_exists(). 1995-03-10 16:56:27 +00:00
pk 6cfe5f9b6f pmap_init() already declared elsewhere. 1995-01-10 16:15:20 +00:00
mycroft 820f9da835 Validate /dev/mem addresses again. 1995-01-09 11:22:06 +00:00
pk c09156bf8b Introduce pmap_prefer() which is used to obtain a cache-friendly virtual
address.
1994-12-10 11:43:56 +00:00
deraadt 274a90762d copyright/Id cleanup 1994-11-20 20:51:32 +00:00
deraadt 3dd85af7b5 fixed rss code by charles 1994-11-14 06:09:19 +00:00
deraadt 4bb1df3001 maintain resident_count and wired_count 1994-08-06 22:08:32 +00:00
pk 65c532b7a2 Allocate pmap's segmap separately.
Keep some tags on segment boundaries to optimise ctx_alloc().
1994-06-10 14:32:54 +00:00
deraadt 81c57a3c62 for newish vm 1994-05-24 02:25:40 +00:00
pk bdf4c9bf54 pmap_t typedef outside `#ifdef KERNEL', as it is brought into user
scope by <vm/vm_map.h>
1994-02-01 11:58:37 +00:00
deraadt 7ee2311b78 stdarg.h, varargs.h, psl.h, autoconf.h: posted patches from torek
cpu.h: cpu_adjstack() won't work well in the NetBSD execve - need a
	different model, stub enablertclock() for now..
exec.h: a netbsd-type exec.h file (ie. empty)
param.h: add MID_MACHINE
pmap.h: delete kernel_pmap hack - it doesn't work for us, + two proto's
vmparam.h: VM_MIN_ADDRESS = 0!
1993-10-11 02:28:23 +00:00
deraadt 4588caefaa Chris Torek's sparc port. Missing lots of things. 1993-10-02 10:22:00 +00:00