freebsd-skq/sys/vm
jhb b6e2dc1111 - Lock the VM around the pmap_swapin_proc() call in faultin().
- Don't lock Giant in the scheduler() function except for when calling
  faultin().
- In swapout_procs(), lock the VM before the proccess to avoid a lock order
  violation.
- In swapout_procs(), release the allproc lock before calling swapout().
  We restart the process scan after swapping out a process.
- In swapout_procs(), un #if 0 the code to bump the vmspace reference count
  and lock the process' vm structures.  This bug was introduced by me and
  could result in the vmspace being free'd out from under a running
  process.
- Fix an old bug where the vmspace reference count was not free'd if we
  failed the swap_idle_threshold2 test.
2001-05-23 22:35:45 +00:00
..
default_pager.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
device_pager.c Assert Giant is held for the device pager alloc and getpages methods since 2001-05-23 22:27:52 +00:00
phys_pager.c Set the phys_pager_alloc_lock to 1 when it is acquired so that it is 2001-05-23 19:52:23 +00:00
pmap.h Unrevert the pmap_map() changes. They weren't broken on x86. 2001-03-07 05:29:21 +00:00
swap_pager.c - Fix the sw_alloc_interlock to actually lock itself when the lock is 2001-05-23 22:31:15 +00:00
swap_pager.h - If swap metadata does not fit into the KVM, reduce the number of 2000-12-13 10:01:00 +00:00
vm_extern.h Remove unused 3rd argument from vsunlock() which abused B_WRITE. 2000-03-13 10:47:24 +00:00
vm_fault.c Take a more conservative approach and still lock Giant around VM faults 2001-05-23 22:09:18 +00:00
vm_glue.c - Lock the VM around the pmap_swapin_proc() call in faultin(). 2001-05-23 22:35:45 +00:00
vm_init.c Sort includes from previous commit. 2001-05-22 05:35:45 +00:00
vm_kern.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_kern.h Fix null-pointer dereference crash when the system is intentionally 2000-02-16 21:11:33 +00:00
vm_map.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_map.h Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_meter.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_mmap.c - Obtain Giant in mmap() syscall while messing with file descriptors and 2001-05-23 22:17:43 +00:00
vm_object.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_object.h Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_page.c Sort includes. 2001-05-22 07:01:11 +00:00
vm_page.h Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_pageout.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_pageout.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 05:07:58 +00:00
vm_pager.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_pager.h Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_param.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 05:07:58 +00:00
vm_swap.c Introduce per-swap area accounting in the VM system, and export 2001-02-23 18:46:21 +00:00
vm_unix.c Acquire Giant around vm_map_remove() inside of the obreak() syscall for 2001-05-23 22:13:10 +00:00
vm_zone.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vm_zone.h Undo part of the tangle of having sys/lock.h and sys/mutex.h included in 2001-05-01 08:13:21 +00:00
vm.h Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vnode_pager.c Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
vnode_pager.h vnode_pager_freepage() is really vm_page_free() in disguise, 2001-04-19 06:18:23 +00:00