freebsd-dev/sys/vm
Maxime Henrion 07159f9c56 Cleanup of the d_mmap_t interface.
- Get rid of the useless atop() / pmap_phys_address() detour.  The
  device mmap handlers must now give back the physical address
  without atop()'ing it.
- Don't borrow the physical address of the mapping in the returned
  int.  Now we properly pass a vm_offset_t * and expect it to be
  filled by the mmap handler when the mapping was successful.  The
  mmap handler must now return 0 when successful, any other value
  is considered as an error.  Previously, returning -1 was the only
  way to fail.  This change thus accidentally fixes some devices
  which were bogusly returning errno constants which would have been
  considered as addresses by the device pager.
- Garbage collect the poorly named pmap_phys_address() now that it's
  no longer used.
- Convert all the d_mmap_t consumers to the new API.

I'm still not sure wheter we need a __FreeBSD_version bump for this,
since and we didn't guarantee API/ABI stability until 5.1-RELEASE.

Discussed with:		alc, phk, jake
Reviewed by:		peter
Compile-tested on:	LINT (i386), GENERIC (alpha and sparc64)
Runtime-tested on:	i386
2003-02-25 03:21:22 +00:00
..
default_pager.c
device_pager.c Cleanup of the d_mmap_t interface. 2003-02-25 03:21:22 +00:00
phys_pager.c Increase the scope of the page queues lock in phys_pager_getpages(). 2002-12-27 06:09:56 +00:00
pmap.h Cleanup of the d_mmap_t interface. 2003-02-25 03:21:22 +00:00
swap_pager.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
swap_pager.h Make struct swblock kernel only, to make vm/swap_pager.h userland includable. 2003-01-03 16:23:12 +00:00
uma_core.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
uma_dbg.c atomic_set_8 isn't MI. Instead, follow Jake's suggestions about 2002-11-11 11:50:03 +00:00
uma_dbg.h - Use my freebsd email alias in the copyright. 2002-09-19 06:05:32 +00:00
uma_int.h - Add support for machine dependant page allocation routines. MD code 2002-11-01 01:01:27 +00:00
uma.h Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
vm_contig.c - Hold the kernel_object's lock around vm_page_insert(..., kernel_object, 2002-12-23 20:39:15 +00:00
vm_extern.h use 'void *' instead of 'caddr_t' for useracc, kernacc, vslock and vsunlock. 2003-01-21 11:34:57 +00:00
vm_fault.c Merge all the various copies of vm_fault_quick() into a single 2003-01-16 00:02:21 +00:00
vm_glue.c use 'void *' instead of 'caddr_t' for useracc, kernacc, vslock and vsunlock. 2003-01-21 11:34:57 +00:00
vm_init.c Move the definitions of the hw.physmem, hw.usermem and hw.availpages 2002-11-07 23:57:17 +00:00
vm_kern.c Allow kmem_malloc() without Giant if M_NOWAIT is specified. 2003-01-04 19:26:35 +00:00
vm_kern.h Move kernel_vm_end's declaration to pmap.h; add a comment regarding the 2003-02-15 19:38:23 +00:00
vm_map.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
vm_map.h Add a needed #include. 2003-01-01 00:13:01 +00:00
vm_meter.c Make 'sysctl vm.vmtotal' work properly using updated patch from Hiten. 2003-01-11 07:29:47 +00:00
vm_mmap.c Bow to the whining masses and change a union back into void *. Retain 2003-01-13 00:33:17 +00:00
vm_object.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
vm_object.h - Remove vm_object_init2(). It is unused. 2002-12-29 21:01:14 +00:00
vm_page.c In vm_page_dirty(), assert that the page is not in the free queue(s). 2003-02-24 17:30:45 +00:00
vm_page.h - Remove vm_page_sleep_busy(). The transition to vm_page_sleep_if_busy(), 2002-12-19 07:23:46 +00:00
vm_pageout.c Add a comment describing how pagedaemon_wakeup() should be used and 2003-02-09 20:40:36 +00:00
vm_pageout.h Make vm_pageout_page_free() static. 2003-01-14 02:28:39 +00:00
vm_pageq.c Remove GIANT_REQUIRED from vm_pageq_remove(). 2003-02-16 06:36:48 +00:00
vm_pager.c o Remove some long dead code: from revision 1.41 of vm/vm_pager.c 2002-07-01 02:38:05 +00:00
vm_pager.h Allow the VM object flushing code to cluster. When the filesystem syncer 2002-12-28 21:03:42 +00:00
vm_param.h Rev 1.16 renamed VM_METER to VM_TOTAL. This is breaking 3rd-party apps. 2003-01-18 21:14:02 +00:00
vm_swap.c Fix swapping to a file, it was broken when SPECSTRATEGY was introduced. 2003-01-20 20:00:32 +00:00
vm_unix.c Use the fields in the sysentvec and in the vm map header in place of the 2002-09-21 22:07:17 +00:00
vm_zeroidle.c - Create a new scheduler api that is defined in sys/sched.h 2002-10-12 05:32:24 +00:00
vm.h Change the way ELF coredumps are handled. Instead of unconditionally 2002-12-16 19:24:43 +00:00
vnode_pager.c We can get past here on a normal vnode as well, so use VOP_STRATEGY if so. 2003-01-13 21:32:16 +00:00
vnode_pager.h