<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/libexec/rpc.rstatd/rstat_proc.c, branch release/9.2.0</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>Use sysctl to fetch stats from the kernel instead of reading variables</title>
<updated>2008-06-10T18:47:43+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2008-06-10T18:47:43+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=87f2ff4f3e022b69cf0827f357011f83703ab4a2'/>
<id>87f2ff4f3e022b69cf0827f357011f83703ab4a2</id>
<content type='text'>
directly via libkvm.

PR:		kern/122875, bin/123014
Tested by:	Danny Braniss  danny cs.huji.ac.il
MFC after:	1 week
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
directly via libkvm.

PR:		kern/122875, bin/123014
Tested by:	Danny Braniss  danny cs.huji.ac.il
MFC after:	1 week
</pre>
</div>
</content>
</entry>
<entry>
<title>Add the variable's type to the declaration.</title>
<updated>2003-06-02T02:34:36+00:00</updated>
<author>
<name>David E. O'Brien</name>
<email>obrien@FreeBSD.org</email>
</author>
<published>2003-06-02T02:34:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bd273f0c0b41f4445f542dba6f44c57f5d752ace'/>
<id>bd273f0c0b41f4445f542dba6f44c57f5d752ace</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Run a revision of the devstat interface:</title>
<updated>2003-03-15T21:59:06+00:00</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2003-03-15T21:59:06+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=7194d335cfa65141113997cdc4ac01fe9c4504c1'/>
<id>7194d335cfa65141113997cdc4ac01fe9c4504c1</id>
<content type='text'>
Kernel:

Change statistics to use the *uptime() timescale (ie: relative to
boottime) rather than the UTC aligned timescale.  This makes the
device statistics code oblivious to clock steps.

Change timestamps to bintime format, they are cheaper.

Remove the "busy_count", and replace it with two counter fields:
"start_count" and "end_count", which are updated in the down and
up paths respectively.  This removes the locking constraint on
devstat.

Add a timestamp argument to devstat_start_transaction(), this will
normally be a timestamp set by the *_bio() function in bp-&gt;bio_t0.
Use this field to calculate duration of I/O operations.

Add two timestamp arguments to devstat_end_transaction(), one is
the current time, a NULL pointer means "take timestamp yourself",
the other is the timestamp of when this transaction started (see
above).

Change calculation of busy_time to operate on "the salami principle":
Only when we are idle, which we can determine by the start+end
counts being identical, do we update the "busy_from" field in the
down path.  In the up path we accumulate the timeslice in busy_time
and update busy_from.

Change the byte_* and num_* fields into two arrays: bytes[] and
operations[].

Userland:

Change the misleading "busy_time" name to be called "snap_time" and
make the time long double since that is what most users need anyway,
fill it using clock_gettime(CLOCK_MONOTONIC) to put it on the same
timescale as the kernel fields.

Change devstat_compute_etime() to operate on struct bintime.

Remove the version 2 legacy interface: the change to bintime makes
compatibility far too expensive.

Fix a bug in systat's "vm" page where boot relative busy times would
be bogus.

Bump __FreeBSD_version to 500107

Review &amp; Collaboration by:	ken
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Kernel:

Change statistics to use the *uptime() timescale (ie: relative to
boottime) rather than the UTC aligned timescale.  This makes the
device statistics code oblivious to clock steps.

Change timestamps to bintime format, they are cheaper.

Remove the "busy_count", and replace it with two counter fields:
"start_count" and "end_count", which are updated in the down and
up paths respectively.  This removes the locking constraint on
devstat.

Add a timestamp argument to devstat_start_transaction(), this will
normally be a timestamp set by the *_bio() function in bp-&gt;bio_t0.
Use this field to calculate duration of I/O operations.

Add two timestamp arguments to devstat_end_transaction(), one is
the current time, a NULL pointer means "take timestamp yourself",
the other is the timestamp of when this transaction started (see
above).

Change calculation of busy_time to operate on "the salami principle":
Only when we are idle, which we can determine by the start+end
counts being identical, do we update the "busy_from" field in the
down path.  In the up path we accumulate the timeslice in busy_time
and update busy_from.

Change the byte_* and num_* fields into two arrays: bytes[] and
operations[].

Userland:

Change the misleading "busy_time" name to be called "snap_time" and
make the time long double since that is what most users need anyway,
fill it using clock_gettime(CLOCK_MONOTONIC) to put it on the same
timescale as the kernel fields.

Change devstat_compute_etime() to operate on struct bintime.

Remove the version 2 legacy interface: the change to bintime makes
compatibility far too expensive.

Fix a bug in systat's "vm" page where boot relative busy times would
be bogus.

Bump __FreeBSD_version to 500107

Review &amp; Collaboration by:	ken
</pre>
</div>
</content>
</entry>
<entry>
<title>Update to current devstat API.</title>
<updated>2003-03-15T21:04:50+00:00</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2003-03-15T21:04:50+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a57042df908fd4755e241bf01fbdee9c3f58b8c3'/>
<id>a57042df908fd4755e241bf01fbdee9c3f58b8c3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add #include &lt;sys/resource.h&gt;</title>
<updated>2003-02-16T15:21:26+00:00</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2003-02-16T15:21:26+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=fd3a502df23ec41d417bf1f7c79fd5924321d0a4'/>
<id>fd3a502df23ec41d417bf1f7c79fd5924321d0a4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove &lt;sys/dkstat.h&gt; #include</title>
<updated>2003-02-16T14:09:16+00:00</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2003-02-16T14:09:16+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=1b16b2892654b969cc7465a3aaf0f95d70db028c'/>
<id>1b16b2892654b969cc7465a3aaf0f95d70db028c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename local function havedisk() to haveadisk() to avoid conflict a</title>
<updated>2002-10-02T18:29:50+00:00</updated>
<author>
<name>Mike Barcroft</name>
<email>mike@FreeBSD.org</email>
</author>
<published>2002-10-02T18:29:50+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=821aa3b401ccef46258105601197dad3c452f960'/>
<id>821aa3b401ccef46258105601197dad3c452f960</id>
<content type='text'>
with another function by the same name in a system header.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
with another function by the same name in a system header.
</pre>
</div>
</content>
</entry>
<entry>
<title>Include &lt;nlist.h&gt; for nlist interfaces instead of depending on namespace</title>
<updated>2002-08-18T17:57:08+00:00</updated>
<author>
<name>Bruce Evans</name>
<email>bde@FreeBSD.org</email>
</author>
<published>2002-08-18T17:57:08+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=7309e024bfd7ff5ecb299077cafd1305b1be1f2f'/>
<id>7309e024bfd7ff5ecb299077cafd1305b1be1f2f</id>
<content type='text'>
pollution in &lt;kvm.h&gt;.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
pollution in &lt;kvm.h&gt;.
</pre>
</div>
</content>
</entry>
<entry>
<title>Spell void * as void * rather than caddr_t.  This is complicated by the</title>
<updated>2002-04-28T15:18:50+00:00</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2002-04-28T15:18:50+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=f249dbcc7149848de00cd8f4e93fe140dfa3f219'/>
<id>f249dbcc7149848de00cd8f4e93fe140dfa3f219</id>
<content type='text'>
fact that caddr_t is often misspelled as char *.

Sponsored by:	DARPA, NAI Labs
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fact that caddr_t is often misspelled as char *.

Sponsored by:	DARPA, NAI Labs
</pre>
</div>
</content>
</entry>
<entry>
<title>o __P removal</title>
<updated>2002-02-07T05:24:53+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2002-02-07T05:24:53+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a174e5b13a175815f5fd5137885ce59136d46853'/>
<id>a174e5b13a175815f5fd5137885ce59136d46853</id>
<content type='text'>
o use new style prototypes and function definitions
o signal handlers need an argument.  Mark it unused.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
o use new style prototypes and function definitions
o signal handlers need an argument.  Mark it unused.
</pre>
</div>
</content>
</entry>
</feed>
