Home | History | Annotate | Download | only in man9
History log of /src/share/man/man9/uvm.9
RevisionDateAuthorComments
 1.115  04-Feb-2024  mrg update my email address.
 1.114  03-Jul-2017  wiz Remove workaround for ancient HTML generation code.
 1.113  18-Mar-2017  riastradh Use `\(em', not `--'.

Refill sentences and tweak wording where appropriate while here.
 1.112  05-Jan-2017  wiz branches: 1.112.2;
New sentence, new line.
 1.111  02-Jan-2017  cherry Document sys/uvm/uvm_init.c:uvm_md_init()
 1.110  23-Mar-2015  riastradh branches: 1.110.2;
Reorganize UFP_* flags with markup and more detail.
 1.109  23-Mar-2015  wiz Bump date for previous. Use more markup in AUTHORS section.
 1.108  23-Mar-2015  riastradh Describe UFP_DIRTYONLY and UFP_BACKWARD flags to uvn_findpages.

PR kern/49335
 1.107  02-Jul-2012  jym Document atop(9), ptoa(9), round_page(9) and trunc_page(9).
 1.106  01-Jun-2011  rmind branches: 1.106.4;
Split parts of uvm(9) into uvm_km(9) and uvm_map(9) man pages.

OK mrg@
 1.105  27-Apr-2011  wiz Bump date for uvm_swap_stats() removal; remove superfluous Pp.
 1.104  27-Apr-2011  rmind Remove public uvm_swap_stats() routine, keep it internal.
 1.103  08-Nov-2010  dholland The "active" and "inactive" members of struct uvmexp were removed in
rev. 1.118 of uvm_extern.h with the merge of yamt-pdpolicy in 2006. So
they shouldn't still be documented as part of the structure. Bump date.
 1.102  17-Apr-2010  jruoho branches: 1.102.2;
Add USENIX paper to SEE ALSO.
 1.101  21-Dec-2009  matt uvm_page_physload takes paddr_t's not vaddr_t's.
 1.100  21-Oct-2009  wiz Bump date for uarea swap-out removal.
 1.99  21-Oct-2009  rmind Remove uarea swap-out functionality:

- Addresses the issue described in PR/38828.
- Some simplification in threading and sleepq subsystems.
- Eliminates pmap_collect() and, as a side note, allows pmap optimisations.
- Eliminates XS_CTL_DATA_ONSTACK in scsipi code.
- Avoids few scans on LWP list and thus potentially long holds of proc_lock.
- Cuts ~1.5k lines of code. Reduces amd64 kernel size by ~4k.
- Removes __SWAP_BROKEN cases.

Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on
acorn26 (thanks to <bjh21>).

Discussed on <tech-kern>, reviewed by <ad>.
 1.98  03-Aug-2009  rmind Split descriptions of UBC functions from uvm(9) into separate ubc(9) man page.
 1.97  12-Mar-2009  wiz New sentence, new line.
 1.96  12-Mar-2009  abs Clarify free_list usage in uvm_page_physload() regarding faster/slower RAM.
Slower RAM should be assigned a higher free_list id.
No functional change to code, just comments and manpage
 1.95  12-Mar-2009  joerg Replace Ft br Fn ... Pp dance with simpler .Bl -ohang.
 1.94  09-Nov-2008  wiz branches: 1.94.2;
Bump date for previous.
 1.93  09-Nov-2008  rmind Update uvm_km_suballoc() description.
Also closes PR/38713.
 1.92  06-Aug-2008  skrll s/non-zero/true/,s/zero/false/

where applicable.
 1.91  04-Aug-2008  pooka ubc doesn't require a vnode vm object these days.
 1.90  29-May-2008  mrg remove clause #3 from my license where there are no other
copyright holders involved.
 1.89  02-Dec-2007  wiz branches: 1.89.6; 1.89.8; 1.89.10;
Standardize spelling. Remove superfluous Pp. Fix typo.
 1.88  21-Nov-2007  dsieger Remove extraneous .Ed
 1.87  15-Oct-2007  pooka document ubc_uiomove()
 1.86  10-Oct-2007  pooka * uvn_attach() is a goner
* document UBC_FAULTBUSY
 1.85  11-Aug-2007  pooka branches: 1.85.2;
boolean_t -> bool sweep
 1.84  24-Jun-2007  rumble TRUE -> true, FALSE -> false.
 1.83  06-May-2007  pavel Sync the uvm_fault interface with reality after the removal of the
"fault type" third argument in rev. 1.110 of sys/uvm/uvm_fault.c

Hi Drochner!
 1.82  07-Mar-2007  dogcow running in emulated wizd mode, convert caddr_t to void *.
 1.81  17-Feb-2007  wiz Sort SEE ALSO (by section number first, then by name).
 1.80  16-Feb-2007  rmind - Add link to memoryallocators(9) in kmem_*(9), vmem(9), uvm(9), malloc(9),
pool(9) and pool_cache(9) manuals.
- Sort uvm(9) "SEE ALSO" section.
 1.79  07-Dec-2006  elad Back out uvm_is_swap_device().
 1.78  01-Dec-2006  elad branches: 1.78.2;
Introduce uvm_is_swap_device(), to check if the passed struct vnode * is
used as a swap device or not.

Okay mrg@.
 1.77  13-Oct-2006  wiz Bump date for previous.
 1.76  05-Oct-2006  chs add support for O_DIRECT (I/O directly to application memory,
bypassing any kernel caching for file data).
 1.75  04-Oct-2006  pooka and lo, the uvm_coredump() peril was no more (since almost 5 years ago)
 1.74  13-Jun-2006  yamt uvm_swapin: process -> lwp
 1.73  04-Mar-2006  sketch branches: 1.73.2;
Bump date for previous.
 1.72  27-Feb-2006  sketch Update documentation to reflect reality; uvm_init() runs after the console
has been configured, then cpu_startup() prints the initial copyright banner.
 1.71  29-Jan-2006  rpaulo More ktrace-lwp that I got wrong in the first try.

Thanks to Gregory McGarry for pointing this out.
 1.70  20-Dec-2005  rpaulo Adapt man pages to ktrace-lwp.
 1.69  01-Dec-2005  yamt reflect yamt-readahead changes.
 1.68  25-Sep-2005  jmmv Fix two typos in ubc_alloc.
 1.67  10-Sep-2005  wiz Whitespace nits.
 1.66  13-Aug-2005  jmmv uvm_unmap returns void, not int.
Also drop some spaces before commas, as they ought not to be there.
 1.65  11-May-2005  skrll Grammar.
 1.64  04-Apr-2005  wiz Drop trailing whitespace, typo fix, and some additional articles.
 1.63  01-Apr-2005  yamt bump date for the previous.
 1.62  01-Apr-2005  yamt merge yamt-km-doc branch.
 1.61  11-Mar-2005  rumble Fix a tiny typo.
 1.60  11-Jan-2005  wiz branches: 1.60.2;
We have 2005 now.
 1.59  09-Jan-2005  chs adjust the UBC mapping code to support non-vnode uvm_objects.
this means we can no longer look at the vnode size to determine how many
pages to request in a fault, which is good since for NFS the size can change
out from under us on the server anyway. there's also a new flag UBC_UNMAP
for ubc_release(), so that the file system code can make the decision about
whether to cache mappings for files being used as executables.
 1.58  08-Dec-2004  wiz Actually, undo br/";" changes of previous, they are necessary
because .Ft/.Fn are not used in the SYNOPSIS.
 1.57  08-Dec-2004  wiz Consistency with other man pages: do not break between function type and function;
remove semicolon after function.
Remove superfluous Pp and bump date for uvm_unmap documentation.
 1.56  06-Dec-2004  yamt document uvm_unmap.
 1.55  23-Nov-2004  yamt note that wired pages can't be loaned out.
 1.54  08-Jan-2004  wiz Bump date for previous.
 1.53  07-Jan-2004  atatat Remove more references to the old sysctl infrastructure.
 1.52  19-Dec-2003  pk Document uvm_km_kmemalloc1().
 1.51  13-Nov-2003  wiz Bump date for uvm_useracc removal.
 1.50  13-Nov-2003  chs uvm_useracc() is gone.
 1.49  03-Nov-2003  wiz Use Dv for some defines; replace > with \*[Gt] for HTML.
 1.48  03-Nov-2003  yamt document a recent uvm_pagefree PG_ZERO change.
 1.47  31-Aug-2003  wiz Bump date for previous; use Dv for a #define; add an article for better grammar.
 1.46  31-Aug-2003  enami uvm_map() takes sixth argument `align'.
 1.45  30-Jun-2003  wiz Fixes to make these man page look nice with groff-1.19.
 1.44  14-May-2003  wiz setup -> set up, from jmc@openbsd.
 1.43  03-May-2003  wiz Misc fixes from jmc@openbsd.
 1.42  16-Apr-2003  wiz Use
.In header.h
instead of
.Fd #include \*[Lt]header.h\*[Gt]
Much easier to read and write, and supported by groff for ages.
Okayed by ross.
 1.41  16-Apr-2003  wiz Drop trailing space.
 1.40  07-Apr-2003  wiz More e.g. cleanup. Igor Sobrado, PR 19692.
 1.39  06-Apr-2003  wiz SunOS 4. From Igor Sobrado in PR 19820.
 1.38  09-Mar-2003  manu Fix to uvm_map documentation, approved bu Chuck Silvers:
uvm_map size parameter is not in PAGE_SIZE units, it is a multiple of PAGE_SIZE.
 1.37  17-Nov-2002  chs change uvm_uarea_alloc() to indicate whether the returned uarea is already
backed by physical pages (ie. because it reused a previously-freed one),
so that we can skip a bunch of useless work in that case.
this fixes the underlying problem behind PR 18543, and also speeds up fork()
quite a bit (eg. 7% on my pc, 1% on my ultra2) when we get a cache hit.
 1.36  27-Sep-2002  wiz Bump date for recent changes.
Begin new sentences on new lines.
Use .Aq instead of \*[Lt]\*[Gt] if possible.
 1.35  22-Sep-2002  chs document new stuff:
UVM_KMF_CANFAIL, uvm_uarea_alloc(), uvm_uarea_free(), pmap_remove_all().
 1.34  02-Jun-2002  drochner update uvm_page_physload() description for "waitok" and "nsegs"
obeyed now, and clarify "rlist" initialization.
 1.33  29-Mar-2002  manu Added uvm_swap_stats()
 1.32  21-Feb-2002  reinoud Add the missing `int free_list' argument to the uvm_page_physadd() in the
documentation.
 1.31  13-Feb-2002  ross Generate <>& symbolically. I'm avoiding .../dist/... directories for now.
 1.30  05-Jan-2002  deberg fix typo
 1.29  26-Dec-2001  wiz Drop some .Pp, sort sections.
 1.28  24-Dec-2001  jdolecek Some basic documentation of uvm_loan() and uvm_unloan()
 1.27  17-Aug-2001  chs put back a sentence that was accidentally removed.
 1.26  28-Jul-2001  chs update uvm_pagealloc() and uvmspace_exec() arguments.
add "void" to functions which take no arguments.
untabify flags lists.
 1.25  28-Jul-2001  chs vm_map_t -> struct vm_map *.
add UBC interfaces.
 1.24  21-Jun-2001  jdolecek s/by published/published by/
 1.23  21-Jun-2001  wiz Fix typos, punctuation and whitespace.
 1.22  12-May-2001  wiz Refer pmap(9), not pmap_init(9).
 1.21  06-May-2001  gmcgarry pmap(9) does exist now
 1.20  25-Apr-2001  simonb Spell occurred correctly.
 1.19  21-Apr-2001  jdolecek update prototype for uvm_map_pageable()
XXX there are probably more things which need an update here
 1.18  06-Apr-2001  wiz Two typos.
 1.17  23-Mar-2001  drochner remove the "STANDARD UVM RETURN VALUES" section which is not true anymore
 1.16  23-Mar-2001  drochner update uvm_vslock arguments and return value
 1.15  21-Sep-2000  ad Use .{B,Bs,F,N,O}x and fix miscellaneous errors.
 1.14  29-Jun-2000  mrg <vm/vm.h> is gone. fix a few minor errors.
 1.13  07-May-2000  mrg branches: 1.13.4;
feex speeling eroor
 1.12  05-Apr-2000  enami - Remove empty line before .Pp
- Remove .Pp before .Sh
 1.11  05-Apr-2000  enami Add missing reset nS to 0.
 1.10  04-Apr-2000  kleink Typo.
 1.9  29-Mar-2000  deberg fix UVM whatis entry, fixes kern/9692
 1.8  26-Mar-2000  kleink Update for uvm object offsets being described by voff_t's.
 1.7  06-May-1999  hwr s/described in papers published Sun Microsystems/described in papers published
by Sun Microsystems/
 1.6  16-Mar-1999  garbled More .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages. Many more to
come.
 1.5  14-Aug-1998  eeh Document vm_offset_t => {vaddr_t,paddr_t} changes in the interface.
 1.4  09-May-1998  kleink Use size_t to pass the length of the memory region to operate on to chgkprot(),
kernacc(), useracc(), vslock() and vsunlock(); (unsigned) ints are not
adequate on all platforms.
 1.3  09-May-1998  mrg uvm_swapout is a static function, not exported. does not belong in uvm.9
 1.2  08-May-1998  kleink Fix a couple of prototypes, and sync with the recent vslock()/vsunlock()
interface change. Also, add an item for uvm_swapout().
 1.1  04-May-1998  mrg add uvm.9
 1.13.4.1  04-Apr-2001  he Pull up revision 1.16 (requested by drochner):
Update uvm_vslock arguments and return value.
 1.60.2.1  18-Feb-2005  yamt document changes on yamt-km branch.
 1.73.2.1  19-Jun-2006  chap Sync with head.
 1.78.2.2  12-May-2007  snj Pull up following revision(s) (requested by pavel in ticket #623):
share/man/man9/uvm.9: revision 1.83
Sync the uvm_fault interface with reality after the removal of the
"fault type" third argument in rev. 1.110 of sys/uvm/uvm_fault.c
Hi Drochner!
 1.78.2.1  09-Dec-2006  bouyer Pull up following revision(s) (requested by elad in ticket #261):
sys/uvm/uvm_extern.h: revision 1.123
sys/uvm/uvm_swap.c: revision 1.115
share/man/man9/uvm.9: revision 1.79
Back out uvm_is_swap_device().
 1.85.2.2  09-Jan-2008  matt sync with HEAD
 1.85.2.1  06-Nov-2007  matt sync with HEAD
 1.89.10.2  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.89.10.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.89.8.1  04-Jun-2008  yamt sync with head
 1.89.6.2  05-Oct-2008  mjf Sync with HEAD.
 1.89.6.1  02-Jun-2008  mjf Sync with HEAD.
 1.94.2.1  13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.102.2.4  09-Nov-2010  uebayasi Sync with HEAD.
 1.102.2.3  02-Nov-2010  uebayasi Drop the 'paddr_t avail_start' and 'paddr_t avail_end' arguments
from uvm_page_physload_device(9).

Those two arguments are used by uvm_page_physload(9) to specify a
range of physical memory available for general purpose pages (pages
which are linked to freelists). Totally irrelevant to device
segments.
 1.102.2.2  21-Oct-2010  uebayasi Document uvm_page_physload_device(9).
 1.102.2.1  17-Apr-2010  uebayasi file uvm.9 was added on branch uebayasi-xip on 2010-10-21 17:16:28 +0000
 1.106.4.2  30-Oct-2012  yamt sync with head
 1.106.4.1  02-Dec-2011  yamt update
 1.110.2.2  20-Mar-2017  pgoyette Sync with HEAD
 1.110.2.1  07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.112.2.1  21-Apr-2017  bouyer Sync with HEAD

RSS XML Feed