<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/lib/libc_r/uthread/uthread_read.c, branch release/5.5.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F5.5.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F5.5.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2002-08-29T23:06:07Z</updated>
<entry>
<title>Remove much of the dereferencing of the fd table entries to look</title>
<updated>2002-08-29T23:06:07Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2002-08-29T23:06:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=d8b5986dd6a718d948b9ea0e2da3256ac45bff42'/>
<id>urn:sha1:d8b5986dd6a718d948b9ea0e2da3256ac45bff42</id>
<content type='text'>
at file flags and replace it with functions that will avoid null
pointer checks.

MFC to be done by archie ;-)

PR:		42100
Reviewed by:	archie, robert
MFC after:	3 days
</content>
</entry>
<entry>
<title>To be consistent, use the __weak_reference macro from &lt;sys/cdefs.h&gt;</title>
<updated>2001-04-10T04:19:21Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2001-04-10T04:19:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=437df4859af22264a2c620a3720c776bf0c4a58d'/>
<id>urn:sha1:437df4859af22264a2c620a3720c776bf0c4a58d</id>
<content type='text'>
instead of #pragma weak to create weak definitions.

Suggested by:	bde
</content>
</entry>
<entry>
<title>Add weak definitions for wrapped system calls.  In general:</title>
<updated>2001-01-24T13:03:38Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2001-01-24T13:03:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e5106342c6de9cbe26c4827e4e29bae309cd8cfb'/>
<id>urn:sha1:e5106342c6de9cbe26c4827e4e29bae309cd8cfb</id>
<content type='text'>
	_foo - wrapped system call
	foo - weak definition to _foo

and for cancellation points:

	_foo - wrapped system call
	__foo - enter cancellation point, call _foo(), leave
	        cancellation point
	foo - weak definition to __foo

Change use of global _thread_run to call a function to get the
currently running thread.

Make all pthread_foo functions weak definitions to _pthread_foo,
where _pthread_foo is the implementation.  This allows an application
to provide its own pthread functions.

Provide slightly different versions of pthread_mutex_lock and
pthread_mutex_init so that we can tell the difference between
a libc mutex and an application mutex.  Threads holding mutexes
internal to libc should never be allowed to exit, call signal
handlers, or cancel.

Approved by:	-arch
</content>
</entry>
<entry>
<title>Simplify sytem call renaming.  Instead of _foo() &lt;-- _libc_foo &lt;-- foo(),</title>
<updated>2000-01-27T23:07:25Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2000-01-27T23:07:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=9233c4d9426e03b28e043baeefb6d5a37dc4086e'/>
<id>urn:sha1:9233c4d9426e03b28e043baeefb6d5a37dc4086e</id>
<content type='text'>
just use _foo() &lt;-- foo().  In the case of a libpthread that doesn't do
call conversion (such as linuxthreads and our upcoming libpthread), this
is adequate.  In the case of libc_r, we still need three names, which are
now _thread_sys_foo() &lt;-- _foo() &lt;-- foo().

Convert all internal libc usage of: aio_suspend(), close(), fsync(), msync(),
nanosleep(), open(), fcntl(), read(), and write() to _foo() instead of foo().

Remove all internal libc usage of: creat(), pause(), sleep(), system(),
tcdrain(), wait(), and waitpid().

Make thread cancellation fully POSIX-compliant.

Suggested by:	deischen
</content>
</entry>
<entry>
<title>Track libc's three-tier symbol naming.  libc_r must currently implement</title>
<updated>2000-01-12T09:28:58Z</updated>
<author>
<name>Jason Evans</name>
<email>jasone@FreeBSD.org</email>
</author>
<published>2000-01-12T09:28:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=f560c4e709d6f3b1edb5349d928670577918afb8'/>
<id>urn:sha1:f560c4e709d6f3b1edb5349d928670577918afb8</id>
<content type='text'>
the _libc_*() entry points and add *() weak aliases.  This will all
change for the better when libc_r becomes libpthread.
</content>
</entry>
<entry>
<title>add pthread_cancel, obtained from OpenBSD.</title>
<updated>1999-11-28T05:38:13Z</updated>
<author>
<name>Alfred Perlstein</name>
<email>alfred@FreeBSD.org</email>
</author>
<published>1999-11-28T05:38:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=7285bccf1a9224fadd3b7b81be034cd04f35a820'/>
<id>urn:sha1:7285bccf1a9224fadd3b7b81be034cd04f35a820</id>
<content type='text'>
eischen (Daniel Eischen) added wrappers to protect against cancled
threads orphaning internal resources.

the cancelability code is still a bit fuzzy but works for test
programs of my own, OpenBSD's and some examples from ORA's books.

add readdir_r to both libc and libc_r

add some 'const' attributes to function parameters

Reviewed by: eischen, jasone
</content>
</entry>
<entry>
<title>$Id$ -&gt; $FreeBSD$</title>
<updated>1999-08-28T00:22:10Z</updated>
<author>
<name>Peter Wemm</name>
<email>peter@FreeBSD.org</email>
</author>
<published>1999-08-28T00:22:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=7f3dea244c40159a41ab22da77a434d7c5b5e85a'/>
<id>urn:sha1:7f3dea244c40159a41ab22da77a434d7c5b5e85a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add RCS IDs to those files without them.</title>
<updated>1999-08-05T12:15:30Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>1999-08-05T12:15:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=fa7c4d557556a90c64eaf10038c0d2a685801357'/>
<id>urn:sha1:fa7c4d557556a90c64eaf10038c0d2a685801357</id>
<content type='text'>
Fix copyrights (s/REGENTS/AUTHOR).

Suggested by:	tg
Approved by:	jb
</content>
</entry>
<entry>
<title>Check the access mode in the flags before waiting on a read or a write</title>
<updated>1998-06-10T22:28:45Z</updated>
<author>
<name>John Birrell</name>
<email>jb@FreeBSD.org</email>
</author>
<published>1998-06-10T22:28:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=8eb25828ad86a9625c67e1d65849a7bfc28d853e'/>
<id>urn:sha1:8eb25828ad86a9625c67e1d65849a7bfc28d853e</id>
<content type='text'>
that might never be possible if the file was not opened in the corrent
mode. This prevents a hang for bad programs. Why do people code like that?
</content>
</entry>
<entry>
<title>Implement compile time debug support instead of tracking file name and</title>
<updated>1998-06-09T23:21:05Z</updated>
<author>
<name>John Birrell</name>
<email>jb@FreeBSD.org</email>
</author>
<published>1998-06-09T23:21:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ddc8afd422568750de7698d8a92b79b27599dd2f'/>
<id>urn:sha1:ddc8afd422568750de7698d8a92b79b27599dd2f</id>
<content type='text'>
line number every time a file descriptor is locked.

This looks like a big change but it isn't. It should reduce the size
of libc_r and make it run slightly faster.
</content>
</entry>
</feed>
