<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/vm/vm_object.c, branch release/4.6.2</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>This commit was manufactured by cvs2svn to create branch 'RELENG_4_6'.</title>
<updated>2002-07-03T13:01:42+00:00</updated>
<author>
<name>cvs2svn</name>
<email>cvs2svn@FreeBSD.org</email>
</author>
<published>2002-07-03T13:01:42+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=db0a3b09965d55f9dee7a58fb04e31df42b6ae73'/>
<id>db0a3b09965d55f9dee7a58fb04e31df42b6ae73</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC 1.201 - add a sequential iteration optimization to vm_object_page_clean().</title>
<updated>2002-06-18T19:37:02+00:00</updated>
<author>
<name>Matthew Dillon</name>
<email>dillon@FreeBSD.org</email>
</author>
<published>2002-06-18T19:37:02+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b46b38937d14d4e0af79ab8231fc84d5fea6d8ab'/>
<id>b46b38937d14d4e0af79ab8231fc84d5fea6d8ab</id>
<content type='text'>
This greatly improves msync() and VM object flushing and greatly improves
cpu overheads related to VM object flushing on large objects.  Yahoo has
been running this patch set since March (and it has also been in -current
since March).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This greatly improves msync() and VM object flushing and greatly improves
cpu overheads related to VM object flushing on large objects.  Yahoo has
been running this patch set since March (and it has also been in -current
since March).
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC implement kern.maxvnodes (primarily kern/vfs_subr.c 1.326), sync,</title>
<updated>2001-11-03T19:59:28+00:00</updated>
<author>
<name>Matthew Dillon</name>
<email>dillon@FreeBSD.org</email>
</author>
<published>2001-11-03T19:59:28+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=8e442063f0d76b88afb63b63e0b8228d9446de0e'/>
<id>8e442063f0d76b88afb63b63e0b8228d9446de0e</id>
<content type='text'>
and other VM optimizations and fixes.

* Add VOBJDIRTY flag to vnode to avoid certain indirections.
* Turn the mount structure vnode list into an LRU queue (LIST -&gt; TAILQ)
* Attempt to reuse vnodes when we hit the maxvnodes limit
* Optimize msync() to avoid unnecessary v_interlocks
* Optimize ffs_sync() for same
* Fix vm_object double-termination bug
* Add KASSERT to ensure that backing object is not freed out from
  under remaining VM pages.

These fixes change the mount structure and will create a binary kld module
incompatibility with filesystem kld's, but I deem the scaling issues with
4.x that we are fixing to be more important.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
and other VM optimizations and fixes.

* Add VOBJDIRTY flag to vnode to avoid certain indirections.
* Turn the mount structure vnode list into an LRU queue (LIST -&gt; TAILQ)
* Attempt to reuse vnodes when we hit the maxvnodes limit
* Optimize msync() to avoid unnecessary v_interlocks
* Optimize ffs_sync() for same
* Fix vm_object double-termination bug
* Add KASSERT to ensure that backing object is not freed out from
  under remaining VM pages.

These fixes change the mount structure and will create a binary kld module
incompatibility with filesystem kld's, but I deem the scaling issues with
4.x that we are fixing to be more important.
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC: pmap interface optimizations, optionally physically backed SYSVSHM.</title>
<updated>2000-08-04T22:31:11+00:00</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2000-08-04T22:31:11+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=5fe02406b28ae31a4dcc53954a1ca7aeb0c4e949'/>
<id>5fe02406b28ae31a4dcc53954a1ca7aeb0c4e949</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC: various minor spelling fixes</title>
<updated>2000-08-02T22:04:31+00:00</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>2000-08-02T22:04:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c9c62036de727d5b7dd879e47e22082766488d7c'/>
<id>c9c62036de727d5b7dd879e47e22082766488d7c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC 1.175: vm_object_shadow(): Remove an incorrect assertion.</title>
<updated>2000-07-13T08:30:31+00:00</updated>
<author>
<name>Alan Cox</name>
<email>alc@FreeBSD.org</email>
</author>
<published>2000-07-13T08:30:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=977425bc5641f36386563253c9adec1146c6ec13'/>
<id>977425bc5641f36386563253c9adec1146c6ec13</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC: Remove MAX_PERF with extreme prejudice.</title>
<updated>2000-03-17T10:47:36+00:00</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2000-03-17T10:47:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a74d39ef0c70fcf0268737387112e7369014534c'/>
<id>a74d39ef0c70fcf0268737387112e7369014534c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>    Add MAP_NOSYNC feature to mmap(), and MADV_NOSYNC and MADV_AUTOSYNC to</title>
<updated>1999-12-12T03:19:33+00:00</updated>
<author>
<name>Matthew Dillon</name>
<email>dillon@FreeBSD.org</email>
</author>
<published>1999-12-12T03:19:33+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=4f79d873c19c33d2b41899b5a0a2672e858e2051'/>
<id>4f79d873c19c33d2b41899b5a0a2672e858e2051</id>
<content type='text'>
    madvise().

    This feature prevents the update daemon from gratuitously flushing
    dirty pages associated with a mapped file-backed region of memory.  The
    system pager will still page the memory as necessary and the VM system
    will still be fully coherent with the filesystem.  Modifications made
    by other means to the same area of memory, for example by write(), are
    unaffected.  The feature works on a page-granularity basis.

    MAP_NOSYNC allows one to use mmap() to share memory between processes
    without incuring any significant filesystem overhead, putting it in
    the same performance category as SysV Shared memory and anonymous memory.

Reviewed by: julian, alc, dg
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
    madvise().

    This feature prevents the update daemon from gratuitously flushing
    dirty pages associated with a mapped file-backed region of memory.  The
    system pager will still page the memory as necessary and the VM system
    will still be fully coherent with the filesystem.  Modifications made
    by other means to the same area of memory, for example by write(), are
    unaffected.  The feature works on a page-granularity basis.

    MAP_NOSYNC allows one to use mmap() to share memory between processes
    without incuring any significant filesystem overhead, putting it in
    the same performance category as SysV Shared memory and anonymous memory.

Reviewed by: julian, alc, dg
</pre>
</div>
</content>
</entry>
<entry>
<title>useracc() the prequel:</title>
<updated>1999-10-29T18:09:36+00:00</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>1999-10-29T18:09:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=923502ff91327138aa9ef1d59ea7044d2936e0ef'/>
<id>923502ff91327138aa9ef1d59ea7044d2936e0ef</id>
<content type='text'>
Merge the contents (less some trivial bordering the silly comments)
of &lt;vm/vm_prot.h&gt; and &lt;vm/vm_inherit.h&gt; into &lt;vm/vm.h&gt;.  This puts
the #defines for the vm_inherit_t and vm_prot_t types next to their
typedefs.

This paves the road for the commit to follow shortly: change
useracc() to use VM_PROT_{READ|WRITE} rather than B_{READ|WRITE}
as argument.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Merge the contents (less some trivial bordering the silly comments)
of &lt;vm/vm_prot.h&gt; and &lt;vm/vm_inherit.h&gt; into &lt;vm/vm.h&gt;.  This puts
the #defines for the vm_inherit_t and vm_prot_t types next to their
typedefs.

This paves the road for the commit to follow shortly: change
useracc() to use VM_PROT_{READ|WRITE} rather than B_{READ|WRITE}
as argument.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove the last vestiges of "vm_map_t phys_map".  It's been unused</title>
<updated>1999-10-29T05:17:20+00:00</updated>
<author>
<name>Alan Cox</name>
<email>alc@FreeBSD.org</email>
</author>
<published>1999-10-29T05:17:20+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=02577fa23efe9d6f6d657bdab7e2497f6ad24b55'/>
<id>02577fa23efe9d6f6d657bdab7e2497f6ad24b55</id>
<content type='text'>
since i386/i386/machdep.c rev 1.45 (or 1994 :-) ).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
since i386/i386/machdep.c rev 1.45 (or 1994 :-) ).
</pre>
</div>
</content>
</entry>
</feed>
