<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/vm/default_pager.c, branch release/3.0.0_cvs</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 tag</title>
<updated>1999-01-21T00:55:32+00:00</updated>
<author>
<name>cvs2svn</name>
<email>cvs2svn@FreeBSD.org</email>
</author>
<published>1999-01-21T00:55:32+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2e61cbb7f50878e738849ea4384118c13733f09c'/>
<id>2e61cbb7f50878e738849ea4384118c13733f09c</id>
<content type='text'>
'RELENG_3_0_0_RELEASE'.

This commit was manufactured to restore the state of the 3.0-RELEASE image.
Releases prior to 5.3-RELEASE are omitting the secure/ and crypto/ subdirs.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
'RELENG_3_0_0_RELEASE'.

This commit was manufactured to restore the state of the 3.0-RELEASE image.
Releases prior to 5.3-RELEASE are omitting the secure/ and crypto/ subdirs.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed two potentially serious classes of bugs:</title>
<updated>1998-10-13T08:24:45+00:00</updated>
<author>
<name>David Greenman</name>
<email>dg@FreeBSD.org</email>
</author>
<published>1998-10-13T08:24:45+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=6cde7a165f154ed47b58fc42d6d2041e18384680'/>
<id>6cde7a165f154ed47b58fc42d6d2041e18384680</id>
<content type='text'>
1) The vnode pager wasn't properly tracking the file size due to
   "size" being page rounded in some cases and not in others.
   This sometimes resulted in corrupted files. First noticed by
   Terry Lambert.
   Fixed by changing the "size" pager_alloc parameter to be a 64bit
   byte value (as opposed to a 32bit page index) and changing the
   pagers and their callers to deal with this properly.
2) Fixed a bogus type cast in round_page() and trunc_page() that
   caused some 64bit offsets and sizes to be scrambled. Removing
   the cast required adding casts at a few dozen callers.
   There may be problems with other bogus casts in close-by
   macros. A quick check seemed to indicate that those were okay,
   however.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
1) The vnode pager wasn't properly tracking the file size due to
   "size" being page rounded in some cases and not in others.
   This sometimes resulted in corrupted files. First noticed by
   Terry Lambert.
   Fixed by changing the "size" pager_alloc parameter to be a 64bit
   byte value (as opposed to a 32bit page index) and changing the
   pagers and their callers to deal with this properly.
2) Fixed a bogus type cast in round_page() and trunc_page() that
   caused some 64bit offsets and sizes to be scrambled. Removing
   the cast required adding casts at a few dozen callers.
   There may be problems with other bogus casts in close-by
   macros. A quick check seemed to indicate that those were okay,
   however.
</pre>
</div>
</content>
</entry>
<entry>
<title>Back out DIAGNOSTIC changes.</title>
<updated>1998-02-06T12:14:30+00:00</updated>
<author>
<name>Eivind Eklund</name>
<email>eivind@FreeBSD.org</email>
</author>
<published>1998-02-06T12:14:30+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=0b08f5f73743f75cfe4603d65bf68a36aca310af'/>
<id>0b08f5f73743f75cfe4603d65bf68a36aca310af</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Turn DIAGNOSTIC into a new-style option.</title>
<updated>1998-02-04T22:34:03+00:00</updated>
<author>
<name>Eivind Eklund</name>
<email>eivind@FreeBSD.org</email>
</author>
<published>1998-02-04T22:34:03+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=47cfdb166d16af183216e459e4e48aff9d2beabf'/>
<id>47cfdb166d16af183216e459e4e48aff9d2beabf</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed unused #includes.</title>
<updated>1997-09-01T03:17:34+00:00</updated>
<author>
<name>Bruce Evans</name>
<email>bde@FreeBSD.org</email>
</author>
<published>1997-09-01T03:17:34+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=79624e2147c33b30d3ea0ea962a88e342d1181f8'/>
<id>79624e2147c33b30d3ea0ea962a88e342d1181f8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed type mismatches for functions with args of type vm_prot_t and/or</title>
<updated>1997-08-25T22:15:31+00:00</updated>
<author>
<name>Bruce Evans</name>
<email>bde@FreeBSD.org</email>
</author>
<published>1997-08-25T22:15:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b9dcd593ff1f6ff7ed984f3c4058133bd398e26a'/>
<id>b9dcd593ff1f6ff7ed984f3c4058133bd398e26a</id>
<content type='text'>
vm_inherit_t.  These types are smaller than ints, so the prototypes
should have used the promoted type (int) to match the old-style function
definitions.  They use just vm_prot_t and/or vm_inherit_t.  This depends
on gcc features to work.  I fixed the definitions since this is easiest.
The correct fix may be to change the small types to u_int, to optimize
for time instead of space.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
vm_inherit_t.  These types are smaller than ints, so the prototypes
should have used the promoted type (int) to match the old-style function
definitions.  They use just vm_prot_t and/or vm_inherit_t.  This depends
on gcc features to work.  I fixed the definitions since this is easiest.
The correct fix may be to change the small types to u_int, to optimize
for time instead of space.
</pre>
</div>
</content>
</entry>
<entry>
<title>Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$.  We are not</title>
<updated>1997-02-22T09:48:43+00:00</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>1997-02-22T09:48:43+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=6875d25465631b7563f1b90e6b05e2640dc81f4e'/>
<id>6875d25465631b7563f1b90e6b05e2640dc81f4e</id>
<content type='text'>
ready for it yet.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ready for it yet.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make the long-awaited change from $Id$ to $FreeBSD$</title>
<updated>1997-01-14T07:20:47+00:00</updated>
<author>
<name>Jordan K. Hubbard</name>
<email>jkh@FreeBSD.org</email>
</author>
<published>1997-01-14T07:20:47+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=1130b656e5fe4c2d1ba299e024d1b40eaeebd380'/>
<id>1130b656e5fe4c2d1ba299e024d1b40eaeebd380</id>
<content type='text'>
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
</pre>
</div>
</content>
</entry>
<entry>
<title>Various bugfixes/cleanups from me and others:</title>
<updated>1996-06-16T20:37:31+00:00</updated>
<author>
<name>John Dyson</name>
<email>dyson@FreeBSD.org</email>
</author>
<published>1996-06-16T20:37:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b5b40fa62bb2242349871af92f3e5bd9d971f063'/>
<id>b5b40fa62bb2242349871af92f3e5bd9d971f063</id>
<content type='text'>
1) Remove potential race conditions on waking up in vm_page_free_wakeup
   by making sure that it is at splvm().
2) Fix another bug in vm_map_simplify_entry.
3) Be more complete about converting from default to swap pager
   when an object grows to be large enough that there can be
   a problem with data structure allocation under low memory
   conditions.
4) Make some madvise code more efficient.
5) Added some comments.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
1) Remove potential race conditions on waking up in vm_page_free_wakeup
   by making sure that it is at splvm().
2) Fix another bug in vm_map_simplify_entry.
3) Be more complete about converting from default to swap pager
   when an object grows to be large enough that there can be
   a problem with data structure allocation under low memory
   conditions.
4) Make some madvise code more efficient.
5) Added some comments.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make sure that pageout deadlocks cannot occur.  There is a problem</title>
<updated>1996-05-29T05:12:23+00:00</updated>
<author>
<name>John Dyson</name>
<email>dyson@FreeBSD.org</email>
</author>
<published>1996-05-29T05:12:23+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a5b6fd29a34d94a404f860c52995f6c1d2851e6e'/>
<id>a5b6fd29a34d94a404f860c52995f6c1d2851e6e</id>
<content type='text'>
that the datastructures needed to support the swap pager can take
enough space to fully deplete system memory, and cause a deadlock.
This change keeps large objects from being filled with dirty pages
without the appropriate swap pager datastructures.  Right now,
default objects greater than 1/4 the size of available system memory
are converted to swap objects, thereby eliminating the risk of deadlock.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
that the datastructures needed to support the swap pager can take
enough space to fully deplete system memory, and cause a deadlock.
This change keeps large objects from being filled with dirty pages
without the appropriate swap pager datastructures.  Right now,
default objects greater than 1/4 the size of available system memory
are converted to swap objects, thereby eliminating the risk of deadlock.
</pre>
</div>
</content>
</entry>
</feed>
