<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test/sys/vm/vnode_pager.h, branch stable/7</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test/atom?h=stable%2F7</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test/atom?h=stable%2F7'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/'/>
<updated>2005-01-24T21:21:59Z</updated>
<entry>
<title>Move the body of vop_stdcreatevobject() over to the vnode_pager under</title>
<updated>2005-01-24T21:21:59Z</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2005-01-24T21:21:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=d07a6d3f6177239bbc47a24131f87738c1dfb1c3'/>
<id>urn:sha1:d07a6d3f6177239bbc47a24131f87738c1dfb1c3</id>
<content type='text'>
the name Sande^H^H^H^H^Hvnode_create_vobject().

Make the new function take a size argument which removes the need for
a VOP_STAT() or a very pessimistic guess for disks.

Call that new function from vop_stdcreatevobject().

Make vnode_pager_alloc() private now that its only user came home.
</content>
</entry>
<entry>
<title>/* -&gt; /*- for license, minor formatting changes</title>
<updated>2005-01-07T02:29:27Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2005-01-07T02:29:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=60727d8b86294910d41cbda1a50a855ea0537449'/>
<id>urn:sha1:60727d8b86294910d41cbda1a50a855ea0537449</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove advertising clause from University of California Regent's license,</title>
<updated>2004-04-06T20:15:37Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2004-04-06T20:15:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=05eb3785e755044e8f30f064b5be4fe1ac788dbd'/>
<id>urn:sha1:05eb3785e755044e8f30f064b5be4fe1ac788dbd</id>
<content type='text'>
per letter dated July 22, 1999.

Approved by: core
</content>
</entry>
<entry>
<title>Remove __P.</title>
<updated>2002-03-19T22:20:14Z</updated>
<author>
<name>Alfred Perlstein</name>
<email>alfred@FreeBSD.org</email>
</author>
<published>2002-03-19T22:20:14Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=11caded34f959dae72d4415f1e9f84d0dfa32e98'/>
<id>urn:sha1:11caded34f959dae72d4415f1e9f84d0dfa32e98</id>
<content type='text'>
</content>
</entry>
<entry>
<title>- Remove a number of extra newlines that do not belong here according to</title>
<updated>2002-03-10T21:52:48Z</updated>
<author>
<name>Eivind Eklund</name>
<email>eivind@FreeBSD.org</email>
</author>
<published>2002-03-10T21:52:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=a128794977a3126a851055a5113d890488eb111f'/>
<id>urn:sha1:a128794977a3126a851055a5113d890488eb111f</id>
<content type='text'>
  style(9)
- Minor space adjustment in cases where we have "( ", " )", if(), return(),
  while(), for(), etc.
- Add /* SYMBOL */ after a few #endifs.

Reviewed by:	alc
</content>
</entry>
<entry>
<title>vnode_pager_freepage() is really vm_page_free() in disguise,</title>
<updated>2001-04-19T06:18:23Z</updated>
<author>
<name>Alfred Perlstein</name>
<email>alfred@FreeBSD.org</email>
</author>
<published>2001-04-19T06:18:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=d8d5fa88052057af4d498b408f66d28be2f95df4'/>
<id>urn:sha1:d8d5fa88052057af4d498b408f66d28be2f95df4</id>
<content type='text'>
nuke vnode_pager_freepage() and replace all calls to it with vm_page_free()
</content>
</entry>
<entry>
<title>Change #ifdef KERNEL to #ifdef _KERNEL in the public headers.  "KERNEL"</title>
<updated>1999-12-29T05:07:58Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>1999-12-29T05:07:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=c447342094276b4d604449bb776063c7b88c4992'/>
<id>urn:sha1:c447342094276b4d604449bb776063c7b88c4992</id>
<content type='text'>
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot).  This is consistant with the other
BSD's who made this change quite some time ago.  More commits to come.
</content>
</entry>
<entry>
<title>$Id$ -&gt; $FreeBSD$</title>
<updated>1999-08-28T01:08:13Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>1999-08-28T01:08:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=c3aac50f284c6cca5b4f2eb46aaa13812cb8b630'/>
<id>urn:sha1:c3aac50f284c6cca5b4f2eb46aaa13812cb8b630</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fixed two potentially serious classes of bugs:</title>
<updated>1998-10-13T08:24:45Z</updated>
<author>
<name>David Greenman</name>
<email>dg@FreeBSD.org</email>
</author>
<published>1998-10-13T08:24:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=6cde7a165f154ed47b58fc42d6d2041e18384680'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>In the author's words:</title>
<updated>1998-02-26T06:39:59Z</updated>
<author>
<name>Mike Smith</name>
<email>msmith@FreeBSD.org</email>
</author>
<published>1998-02-26T06:39:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=ce75f2c365a32572982d8e77ee0405f5b2bd7d8d'/>
<id>urn:sha1:ce75f2c365a32572982d8e77ee0405f5b2bd7d8d</id>
<content type='text'>
These diffs implement the first stage of a VOP_{GET|PUT}PAGES pushdown
for local media FS's.

See ffs_putpages in /sys/ufs/ufs/ufs_readwrite.c for implementation
details for generic *_{get|put}pages for local media FS's.  Support
is trivial to add for any FS that formerly relied on the default
behaviour of the vnode_pager in in EOPNOTSUPP cases (just copy the
ffs_getpages() code for the FS in question's *_{get|put}pages).

Obviously, it would be better if each local media FS implemented a
more optimal method, instead of calling an exported interface from
the /sys/vm/vnode_pager.c, but this is a necessary first step in
getting the FS's to a point where they can be supplied with better
implementations on a case-by-case basis.

Obviously, the cd9660_putpages() can be rather trivial (since it
is a read-only FS type 8-)).

A slight (temporary) modification is made to print a diagnostic message
in the case where the underlying filesystem attempts to engage in the
previous behaviour.  Failure is likely to be ungraceful.

Submitted by:	terry@freebsd.org (Terry Lambert)
</content>
</entry>
</feed>
