<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/lib/libpthread/sys/lock.c, branch release/5.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F5.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F5.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2003-11-04T20:01:38Z</updated>
<entry>
<title>Add the ability to reinitialize libpthread's internal FIFO-queueing</title>
<updated>2003-11-04T20:01:38Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2003-11-04T20:01:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=d6b826bac7cba8bd901ca2db952bb1dc514ca79f'/>
<id>urn:sha1:d6b826bac7cba8bd901ca2db952bb1dc514ca79f</id>
<content type='text'>
locks.

Reviewed by:	davidxu
</content>
</entry>
<entry>
<title>Only generate code for _LCK_ASSERT if _LCK_DEBUG is defined.</title>
<updated>2003-10-02T03:24:26Z</updated>
<author>
<name>David Xu</name>
<email>davidxu@FreeBSD.org</email>
</author>
<published>2003-10-02T03:24:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=28e2ce478d04a60f22169aedfce85d93c1ed3328'/>
<id>urn:sha1:28e2ce478d04a60f22169aedfce85d93c1ed3328</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't assume sizeof(long) = sizeof(int) on x86; use int</title>
<updated>2003-09-03T17:56:26Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2003-09-03T17:56:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=850108c0b4ef4545310af9b03c4a8531b8b36d55'/>
<id>urn:sha1:850108c0b4ef4545310af9b03c4a8531b8b36d55</id>
<content type='text'>
instead of long types for low-level locks.

Add prototypes for some internal libc functions that are
wrapped by the library as cancellation points.

Add memory barriers to alpha atomic swap functions (submitted
by davidxu).

Requested by:	bde
</content>
</entry>
<entry>
<title>Change low-level locking a bit so that we can tell if</title>
<updated>2003-05-24T02:29:25Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2003-05-24T02:29:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=1cb570c53190e8b569091f708781c6bf9c3126c7'/>
<id>urn:sha1:1cb570c53190e8b569091f708781c6bf9c3126c7</id>
<content type='text'>
a lock is being waitied on.

Fix a races in join and cancellation.

When trying to wait on a CV and the library is not yet
threaded, make it threaded so that waiting actually works.

When trying to nanosleep() and we're not threaded, just
call the system call nanosleep instead of adding the thread
to the wait queue.

Clean up adding/removing new threads to the "all threads queue",
assigning them unique ids, and tracking how many active threads
there are.  Do it all when the thread is added to the scheduling
queue instead of making pthread_create() know how to do it.

Fix a race where a thread could be marked for signal delivery
but it could be exited before we actually add the signal to it.

Other minor cleanups and bug fixes.

Submitted by:	davidxu
Approved by:	re@ (blanket for libpthread)
</content>
</entry>
<entry>
<title>Add a method of yielding the current thread with the scheduler</title>
<updated>2003-05-16T19:58:30Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2003-05-16T19:58:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=fd626336fd97bad05a86f02b646c66d2fe14d01a'/>
<id>urn:sha1:fd626336fd97bad05a86f02b646c66d2fe14d01a</id>
<content type='text'>
lock held (_thr_sched_switch_unlocked()) and use this to avoid
dropping the scheduler lock and having the scheduler retake the
same lock again.

Add a better way of detecting if a low-level lock is in use.

When switching out a thread due to blocking in the UTS, don't
switch to the KSE's scheduler stack only to switch back to
another thread.  If possible switch to the new thread directly
from the old thread and avoid the overhead of the extra
context switch.

Check for pending signals on a thread when entering the scheduler
and add them to the threads signal frame.  This includes some
other minor signal fixes.

Most of this was a joint effor between davidxu and myself.

Reviewed by:	davidxu
Approved by:	re@ (blanket for libpthread)
</content>
</entry>
<entry>
<title>Protect against a race between granting a lock and accessing</title>
<updated>2003-05-04T22:29:09Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2003-05-04T22:29:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=c72cd7c9e2e07a2c466f0f61ece3cfc2e464218c'/>
<id>urn:sha1:c72cd7c9e2e07a2c466f0f61ece3cfc2e464218c</id>
<content type='text'>
other parts of the lock.

Submitted by:	davidxu
</content>
</entry>
<entry>
<title>Sorry folks; I accidentally committed a patch from what I was working</title>
<updated>2003-04-18T07:09:43Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2003-04-18T07:09:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e4c2ac1637ab1039778694ccb3b91425371e0562'/>
<id>urn:sha1:e4c2ac1637ab1039778694ccb3b91425371e0562</id>
<content type='text'>
on a couple of days ago.  This should be the most recent changes.

Noticed by:	davidxu
</content>
</entry>
<entry>
<title>Add FIFO queueing locking operations based on atomic swap.</title>
<updated>2003-04-18T05:02:39Z</updated>
<author>
<name>Daniel Eischen</name>
<email>deischen@FreeBSD.org</email>
</author>
<published>2003-04-18T05:02:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=b025fc9a31c85b9cde9969e1fea55ea4caf650d5'/>
<id>urn:sha1:b025fc9a31c85b9cde9969e1fea55ea4caf650d5</id>
<content type='text'>
Modify thread errno for the new libpthread changes.

Reviewed by:	davidxu
</content>
</entry>
</feed>
