<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/kern/sys_pipe.c, branch release/5.2.1</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>- Implement selwakeuppri() which allows raising the priority of a</title>
<updated>2003-11-09T09:17:26+00:00</updated>
<author>
<name>Seigo Tanimura</name>
<email>tanimura@FreeBSD.org</email>
</author>
<published>2003-11-09T09:17:26+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=512824f8f7748f7bb54ef900bc8e68a95a3d0f4d'/>
<id>512824f8f7748f7bb54ef900bc8e68a95a3d0f4d</id>
<content type='text'>
  thread being waken up.  The thread waken up can run at a priority as
  high as after tsleep().

- Replace selwakeup()s with selwakeuppri()s and pass appropriate
  priorities.

- Add cv_broadcastpri() which raises the priority of the broadcast
  threads.  Used by selwakeuppri() if collision occurs.

Not objected in:	-arch, -current
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  thread being waken up.  The thread waken up can run at a priority as
  high as after tsleep().

- Replace selwakeup()s with selwakeuppri()s and pass appropriate
  priorities.

- Add cv_broadcastpri() which raises the priority of the broadcast
  threads.  Used by selwakeuppri() if collision occurs.

Not objected in:	-arch, -current
</pre>
</div>
</content>
</entry>
<entry>
<title> - Delay the allocation of memory for the pipe mutex until we need it.</title>
<updated>2003-11-06T05:58:26+00:00</updated>
<author>
<name>Alan Cox</name>
<email>alc@FreeBSD.org</email>
</author>
<published>2003-11-06T05:58:26+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3b2c54e7bc733bf2648b70f457d3108153fc8e31'/>
<id>3b2c54e7bc733bf2648b70f457d3108153fc8e31</id>
<content type='text'>
   This avoids the need to free said memory in various error cases along
   the way.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
   This avoids the need to free said memory in various error cases along
   the way.
</pre>
</div>
</content>
</entry>
<entry>
<title> - Simplify pipespace() by eliminating the explicit creation of vm objects.</title>
<updated>2003-11-06T05:08:12+00:00</updated>
<author>
<name>Alan Cox</name>
<email>alc@FreeBSD.org</email>
</author>
<published>2003-11-06T05:08:12+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=fc17df5264977992ddb6e7483abfd4c9369a6115'/>
<id>fc17df5264977992ddb6e7483abfd4c9369a6115</id>
<content type='text'>
   Instead, let the vm objects be lazily instantiated at fault time.  This
   results in the allocation of fewer vm objects and vm map entries due to
   aggregation in the vm system.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
   Instead, let the vm objects be lazily instantiated at fault time.  This
   results in the allocation of fewer vm objects and vm map entries due to
   aggregation in the vm system.
</pre>
</div>
</content>
</entry>
<entry>
<title>Unlock pipe mutex when failing MAC pipe ioctl access control check.</title>
<updated>2003-11-03T17:58:23+00:00</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2003-11-03T17:58:23+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=730ecf8254477a22a315f73277a461573a1d5f70'/>
<id>730ecf8254477a22a315f73277a461573a1d5f70</id>
<content type='text'>
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
</pre>
</div>
</content>
</entry>
<entry>
<title>Change all SYSCTLS which are readonly and have a related TUNABLE</title>
<updated>2003-10-21T18:28:36+00:00</updated>
<author>
<name>Mike Silbersack</name>
<email>silby@FreeBSD.org</email>
</author>
<published>2003-10-21T18:28:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=184dcdc7c8180a316f2aaac1d2efdb8e0dd01b49'/>
<id>184dcdc7c8180a316f2aaac1d2efdb8e0dd01b49</id>
<content type='text'>
from CTLFLAG_RD to CTLFLAG_RDTUN so that sysctl(8) can provide
more useful error messages.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
from CTLFLAG_RD to CTLFLAG_RDTUN so that sysctl(8) can provide
more useful error messages.
</pre>
</div>
</content>
</entry>
<entry>
<title>falloc allocates a file structure and adds it to the file descriptor</title>
<updated>2003-10-19T20:41:07+00:00</updated>
<author>
<name>David Malone</name>
<email>dwmalone@FreeBSD.org</email>
</author>
<published>2003-10-19T20:41:07+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=e1419c08e2520d267e0a14e1bb10ae3bebbb12ae'/>
<id>e1419c08e2520d267e0a14e1bb10ae3bebbb12ae</id>
<content type='text'>
table, acquiring the necessary locks as it works. It usually returns
two references to the new descriptor: one in the descriptor table
and one via a pointer argument.

As falloc releases the FILEDESC lock before returning, there is a
potential for a process to close the reference in the file descriptor
table before falloc's caller gets to use the file. I don't think this
can happen in practice at the moment, because Giant indirectly protects
closes.

To stop the file being completly closed in this situation, this change
makes falloc set the refcount to two when both references are returned.
This makes life easier for several of falloc's callers, because the
first thing they previously did was grab an extra reference on the
file.

Reviewed by:	iedowse
Idea run past:	jhb
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
table, acquiring the necessary locks as it works. It usually returns
two references to the new descriptor: one in the descriptor table
and one via a pointer argument.

As falloc releases the FILEDESC lock before returning, there is a
potential for a process to close the reference in the file descriptor
table before falloc's caller gets to use the file. I don't think this
can happen in practice at the moment, because Giant indirectly protects
closes.

To stop the file being completly closed in this situation, this change
makes falloc set the refcount to two when both references are returned.
This makes life easier for several of falloc's callers, because the
first thing they previously did was grab an extra reference on the
file.

Reviewed by:	iedowse
Idea run past:	jhb
</pre>
</div>
</content>
</entry>
<entry>
<title>fix a problem referencing free'd memory.  This is only a problem for</title>
<updated>2003-10-12T07:06:02+00:00</updated>
<author>
<name>John-Mark Gurney</name>
<email>jmg@FreeBSD.org</email>
</author>
<published>2003-10-12T07:06:02+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9e5de980c6b23c978d8fdec863f529c2216b6cc0'/>
<id>9e5de980c6b23c978d8fdec863f529c2216b6cc0</id>
<content type='text'>
kqueue write events on a socket and you regularly create tons of pipes
which overwrites the structure causing a panic when removing the knote
from the list.  If the peer has gone away (and it's a write knote), then
don't bother trying to remove the knote from the list.

Submitted by:	Brian Buchanan and myself
Obtained from:	nCircle
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
kqueue write events on a socket and you regularly create tons of pipes
which overwrites the structure causing a panic when removing the knote
from the list.  If the peer has gone away (and it's a write knote), then
don't bother trying to remove the knote from the list.

Submitted by:	Brian Buchanan and myself
Obtained from:	nCircle
</pre>
</div>
</content>
</entry>
<entry>
<title>pipe_build_write_buffer() only requires read access of the page that it</title>
<updated>2003-09-12T07:13:15+00:00</updated>
<author>
<name>Alan Cox</name>
<email>alc@FreeBSD.org</email>
</author>
<published>2003-09-12T07:13:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=27d203eab329f0c6065e1d14fab9e1ecbf61795f'/>
<id>27d203eab329f0c6065e1d14fab9e1ecbf61795f</id>
<content type='text'>
obtains from pmap_extract_and_hold().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
obtains from pmap_extract_and_hold().
</pre>
</div>
</content>
</entry>
<entry>
<title>Use pmap_extract_and_hold() in pipe_build_write_buffer().  Consequently,</title>
<updated>2003-09-08T04:58:32+00:00</updated>
<author>
<name>Alan Cox</name>
<email>alc@FreeBSD.org</email>
</author>
<published>2003-09-08T04:58:32+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=03be99d20cc663670cb51ade16266ca770f1f0ae'/>
<id>03be99d20cc663670cb51ade16266ca770f1f0ae</id>
<content type='text'>
pipe_build_write_buffer() no longer requires Giant on entry.

Reviewed by:	tegge
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
pipe_build_write_buffer() no longer requires Giant on entry.

Reviewed by:	tegge
</pre>
</div>
</content>
</entry>
<entry>
<title>Giant is no longer required by pipe_destroy_write_buffer().  Reduce</title>
<updated>2003-09-06T21:02:10+00:00</updated>
<author>
<name>Alan Cox</name>
<email>alc@FreeBSD.org</email>
</author>
<published>2003-09-06T21:02:10+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=603d3d4a44efc8924906a56e61520e1d47d0ec24'/>
<id>603d3d4a44efc8924906a56e61520e1d47d0ec24</id>
<content type='text'>
unnecessary white space from pipe_destroy_write_buffer().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
unnecessary white space from pipe_destroy_write_buffer().
</pre>
</div>
</content>
</entry>
</feed>
