Commit Graph

409 Commits

Author SHA1 Message Date
vangyzen
c46e1b80b9 Improve errno documentation in pthread_create(3) and thr_new(2)
Add some missing errno values to thr_new(2) and pthread_create(3).
In particular, EDEADLK was not documented in the latter.
While I'm here, improve some English and cross-references.

Reviewed by:	kib
Sponsored by:	Dell Inc.
Differential Revision:	https://reviews.freebsd.org/D6663
2016-06-03 14:30:32 +00:00
jilles
bc2144d2fa Remove mentions that PTHREAD_PROCESS_SHARED is not supported from man pages.
Also add support for process-shared synchronization objects to the HISTORY
sections where they already exist.
2016-05-31 21:16:34 +00:00
jilles
4afa5fbece Fix typo ESRC -> ESRCH in pthread man pages. 2016-05-31 21:09:42 +00:00
jilles
7dad7e4019 Remove non-history libkse references and fix PTHREAD_PROCESSES_PRIVATE typo. 2016-05-29 18:25:11 +00:00
asomers
d14be2b60f Add bit_count to the bitstring(3) api
Add a bit_count function, which efficiently counts the number of bits set in
a bitstring.

sys/sys/bitstring.h
tests/sys/sys/bitstring_test.c
share/man/man3/bitstring.3
	Add bit_alloc

sys/kern/subr_unit.c
	Use bit_count instead of a naive counting loop in check_unrhdr, used
	when INVARIANTS are enabled. The userland test runs about 6x faster
	in a generic build, or 8.5x faster when built for Nehalem, which has
	the POPCNT instruction.

sys/sys/param.h
	Bump __FreeBSD_version due to the addition of bit_alloc

UPDATING
	Add a note about the ABI incompatibility of the bitstring(3)
	changes, as suggested by lidl.

Suggested by:	gibbs
Reviewed by:	gibbs, ngie
MFC after:	9 days
X-MFC-With:	299090, 300538
Relnotes:	yes
Sponsored by:	Spectra Logic Corp
Differential Revision:	https://reviews.freebsd.org/D6255
2016-05-23 20:29:18 +00:00
kib
8da898f26c Add implementation of robust mutexes, hopefully close enough to the
intention of the POSIX IEEE Std 1003.1TM-2008/Cor 1-2013.

A robust mutex is guaranteed to be cleared by the system upon either
thread or process owner termination while the mutex is held.  The next
mutex locker is then notified about inconsistent mutex state and can
execute (or abandon) corrective actions.

The patch mostly consists of small changes here and there, adding
neccessary checks for the inconsistent and abandoned conditions into
existing paths.  Additionally, the thread exit handler was extended to
iterate over the userspace-maintained list of owned robust mutexes,
unlocking and marking as terminated each of them.

The list of owned robust mutexes cannot be maintained atomically
synchronous with the mutex lock state (it is possible in kernel, but
is too expensive).  Instead, for the duration of lock or unlock
operation, the current mutex is remembered in a special slot that is
also checked by the kernel at thread termination.

Kernel must be aware about the per-thread location of the heads of
robust mutex lists and the current active mutex slot.  When a thread
touches a robust mutex for the first time, a new umtx op syscall is
issued which informs about location of lists heads.

The umtx sleep queues for PP and PI mutexes are split between
non-robust and robust.

Somewhat unrelated changes in the patch:
1. Style.
2. The fix for proper tdfind() call use in umtxq_sleep_pi() for shared
   pi mutexes.
3. Removal of the userspace struct pthread_mutex m_owner field.
4. The sysctl kern.ipc.umtx_vnode_persistent is added, which controls
   the lifetime of the shared mutex associated with a vnode' page.

Reviewed by:	jilles (previous version, supposedly the objection was fixed)
Discussed with:	brooks, Martin Simmons <martin@lispworks.com> (some aspects)
Tested by:	pho
Sponsored by:	The FreeBSD Foundation
2016-05-17 09:56:22 +00:00
kib
aaff081bf2 Warn about consequences of suspending threads in arbitrary state of
execution.

While there, fix minor nits in markup.

Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2016-05-05 10:22:19 +00:00
asomers
09b44517ca Improve performance and functionality of the bitstring(3) api
Two new functions are provided, bit_ffs_at() and bit_ffc_at(), which allow
for efficient searching of set or cleared bits starting from any bit offset
within the bit string.

Performance is improved by operating on longs instead of bytes and using
ffsl() for searches within a long. ffsl() is a compiler builtin in both
clang and gcc for most architectures, converting what was a brute force
while loop search into a couple of instructions.

All of the bitstring(3) API continues to be contained in the header file.
Some of the functions are large enough that perhaps they should be uninlined
and moved to a library, but that is beyond the scope of this commit.

sys/sys/bitstring.h:
        Convert the majority of the existing bit string implementation from
        macros to inline functions.

        Properly protect the implementation from inadvertant macro expansion
        when included in a user's program by prefixing all private
        macros/functions and local variables with '_'.

        Add bit_ffs_at() and bit_ffc_at(). Implement bit_ffs() and
        bit_ffc() in terms of their "at" counterparts.

        Provide a kernel implementation of bit_alloc(), making the full API
        usable in the kernel.

        Improve code documenation.

share/man/man3/bitstring.3:
        Add pre-exisiting API bit_ffc() to the synopsis.

        Document new APIs.

        Document the initialization state of the bit strings
        allocated/declared by bit_alloc() and bit_decl().

        Correct documentation for bitstr_size(). The original code comments
        indicate the size is in bytes, not "elements of bitstr_t". The new
        implementation follows this lead. Only hastd assumed "elements"
        rather than bytes and it has been corrected.

etc/mtree/BSD.tests.dist:
tests/sys/Makefile:
tests/sys/sys/Makefile:
tests/sys/sys/bitstring.c:
        Add tests for all existing and new functionality.

include/bitstring.h
	Include all headers needed by sys/bitstring.h

lib/libbluetooth/bluetooth.h:
usr.sbin/bluetooth/hccontrol/le.c:
        Include bitstring.h instead of sys/bitstring.h.

sbin/hastd/activemap.c:
        Correct usage of bitstr_size().

sys/dev/xen/blkback/blkback.c
        Use new bit_alloc.

sys/kern/subr_unit.c:
        Remove hard-coded assumption that sizeof(bitstr_t) is 1.  Get rid of
        unrb.busy, which caches the number of bits set in unrb.map.  When
        INVARIANTS are disabled, nothing needs to know that information.
        callapse_unr can be adapted to use bit_ffs and bit_ffc instead.
        Eliminating unrb.busy saves memory, simplifies the code, and
        provides a slight speedup when INVARIANTS are disabled.

sys/net/flowtable.c:
        Use the new kernel implementation of bit-alloc, instead of hacking
        the old libc-dependent macro.

sys/sys/param.h
        Update __FreeBSD_version to indicate availability of new API

Submitted by:   gibbs, asomers
Reviewed by:    gibbs, ngie
MFC after:      4 weeks
Sponsored by:   Spectra Logic Corp
Differential Revision:  https://reviews.freebsd.org/D6004
2016-05-04 22:34:11 +00:00
gjb
184889bac8 Separate manual pages into their own package.
Sponsored by:	The FreeBSD Foundation
2016-01-21 16:36:33 +00:00
cem
bb2ba2b058 Document bitset(9) 2015-10-17 19:55:58 +00:00
hselasky
0647fdddb3 Make the system queue header file fully usable within C++ programs by
adding macros to define class lists.

This change is backwards compatible for all use within C and C++
programs. Only C++ programs will have added support to use the queue
macros within classes. Previously the queue macros could only be used
within structures.

The queue.3 manual page has been updated to describe the new
functionality and some alphabetic sorting has been done while
at it.

Differential Revision:	https://reviews.freebsd.org/D2745
PR:			200827 (exp-run)
MFC after:		2 weeks
2015-06-28 21:06:45 +00:00
sjg
008d7c831f Add META_MODE support.
Off by default, build behaves normally.
WITH_META_MODE we get auto objdir creation, the ability to
start build from anywhere in the tree.

Still need to add real targets under targets/ to build packages.

Differential Revision:       D2796
Reviewed by: brooks imp
2015-06-13 19:20:56 +00:00
sjg
75a137820d dirdeps.mk now sets DEP_RELDIR 2015-06-08 23:35:17 +00:00
pkelsey
8a477638bd Provide an unambiguous description of the potential hazard in calling
pthread_setspecific(3) from a key destructor.

Reviewed by: jhb
Approved by: jmallett (mentor)
MFC after: 3 days
2015-05-28 16:18:41 +00:00
sjg
65145fa4c8 Merge sync of head 2015-05-27 01:19:58 +00:00
pkelsey
ffa8ae0e9f Added description of POSIX-specified behavior when invoked on a key from within that key's destructor.
Reviewed by: jhb, -doc
Approved by: jmallett (mentor)
MFC after: 3 days
Sponsored by: Norse Corp, Inc.
2015-05-19 02:24:55 +00:00
brooks
2906a9e028 Bump doc date missed in r281605.
MFC after:	1 day
2015-04-20 16:23:59 +00:00
kib
9a774084c8 Make wait6(2), waitid(3) and ppoll(2) cancellation points. The
waitid() function is required to be cancellable by the standard.  The
wait6() and ppoll() follow the other syscalls in their groups.

Reviewed by:	jhb, jilles (previous versions)
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2015-04-18 21:35:41 +00:00
brooks
0786305598 Fix a minor function definition inconsistancy.
MFC after:	3 days
2015-04-16 15:35:17 +00:00
kib
e465ad4586 Formatting changes to the pthread_testcancel(3).
Use list for the cancellation points enumeration.  Move notes about
functions into the list inline.

The discussion of the idiomatic use of cancellation facilities does
not belong to RETURN VALUES section, move it to NOTES.

Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2015-03-29 19:37:41 +00:00
kib
6531ee3ae5 Make kevent(2) a cancellation point.
Note that to cancel blocked kevent(2) call, changelist must be empty,
since we cannot cancel a call which already made changes to the
process state.  And in reverse, call which only makes changes to the
kqueue state, without waiting for an event, is not cancellable.  This
makes a natural usage model to migrate kqueue loop to support
cancellation, where existing single kevent(2) call must be split into
two: first uncancellable update of kqueue, then cancellable wait for
events.

Note that this is ABI-incompatible change, but it is believed that
there is no cancel-safe code that relies on kevent(2) not being a
cancellation point.  Option to preserve the ABI would be to keep
kevent(2) as is, but add new call with flags to specify cancellation
behaviour, which only value seems to add complications.

Suggested and reviewed by:	jilles
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2015-03-29 19:14:41 +00:00
kib
f3fd716384 Provide individual prototype and generate macros for the red-black tree.
This helps to reduce code size in statically linked applications.

Submitted by:	Sebastian Huber <sebastian.huber@embedded-brains.de>
MFC after:	2 weeks
2015-01-24 12:43:36 +00:00
kargl
962e063cdb Fix a typographical error.
Confirmed by:	n1256.pdf
Obtained from:	Dragonfly BSD
2015-01-06 23:04:41 +00:00
bapt
132a39653e sort SEE ALSO 2014-12-26 22:41:10 +00:00
bapt
07a696a80c Escape Ed to prevent mandoc to avoid confusion with the mdoc's Ed macros 2014-12-26 21:11:33 +00:00
sjg
b137080f19 Merge from head@274682 2014-11-19 01:07:58 +00:00
jhb
5081f978b2 Correct a typo: this is the manpage for pthread_cleanup_pop, not push.
Submitted by:	ian
2014-10-27 15:45:37 +00:00
jhb
a3ed3e1c79 Clarify that pthread_cleanup_push()/pop() are implemented as macros that
create a new code block and thus must be balanced at the same lexical
scope.  (This is also a requirement in POSIX.)

PR:		194280
Submitted by:	dr2867.business@pacbell.net
MFC after:	1 week
2014-10-25 19:31:34 +00:00
sjg
d7cd1d425c Merge head from 7/28 2014-08-19 06:50:54 +00:00
gavin
034eb30570 Clarify descriptions of pthread_cond_wait() and pthread_cond_timedwait()
Requested by:	Malcolm Douglas via freebsd-doc
Reviewed by:	jhb
MFC after:	1 week
2014-08-12 12:44:52 +00:00
joel
beb1a3ec65 Silence mandoc lint. 2014-07-29 19:41:00 +00:00
bapt
7163c79198 use .Mt to mark up email addresses consistently (part6)
PR:		191174
Submitted by:	Franco Fichtner <franco at lastsummer.de>
2014-06-23 08:27:27 +00:00
kevlo
c31550101a Add MLINKS for macros decribed in queue.3 manpage. 2014-06-17 02:10:40 +00:00
sjg
ed3fc70bf5 Merge from head 2014-05-08 23:54:15 +00:00
imp
2118f42afd Use src.opts.mk in preference to bsd.own.mk except where we need stuff
from the latter.
2014-05-06 04:22:01 +00:00
sjg
5e568154a0 Merge head 2014-04-28 07:50:45 +00:00
jmg
0978bc3225 Xref pthread_cancel...
bump Dd, _exit was still dated 1996!  yes, it has been modified a few
times since then...

MFC after:	1 week
2014-03-16 01:17:09 +00:00
eadler
118094e60b multiple: Remove 3rd clause from BSD license where approved by the
regents and renumber.

This patch skips files in contrib/ and crypto/

Acked by:	imp
Discussed with:	emaste
2014-03-14 03:07:51 +00:00
jhb
38b34d1e81 - Update a few places to account for va_copy().
- Create a separate 'return values' section and move some statements about
  return values to that section.
- Note that each invocation of va_start() and va_copy() must be paired with
  va_end() in the same function.

MFC after:	1 week
2014-02-05 17:41:00 +00:00
bms
81d177d59f RB_FOREACH_[REVERSE_]FROM() do not require the head pointer. Reword. 2013-11-10 19:49:18 +00:00
bms
c1c266094e Document the RB_FOREACH_FROM() and RB_FOREACH_REVERSE_FROM() macros.
These are largely syntactic sugar. However, they improve code
readability where an RB_FOREACH() or RB_FOREACH_REVERSE()
traversal has been interrupted and must be resumed. Performance
is improved by avoiding unnecessary traversal from the head node.
2013-11-10 19:41:04 +00:00
glebius
b1f334bafb Document RB_FOREACH_SAFE() and RB_FOREACH_REVERSE_SAFE().
Submitted by:	Mikhail <mp lenta.ru>
2013-11-04 16:56:35 +00:00
sjg
62bb106222 Merge from head 2013-09-05 20:18:59 +00:00
lstewart
aa062bf658 Add new FOREACH_FROM variants of the queue(3) FOREACH macros which can
optionally start the traversal from a previously found element by passing the
element in as "var". Passing a NULL "var" retains the same semantics as the
regular FOREACH macros.

Kudos to phk for suggesting the "FROM" suffix instead of my original proposal.

Reviewed by:	jhb (previous version), rpaulo
MFC after:	1 week
2013-06-18 02:57:56 +00:00
jilles
3e711d2906 pthread_testcancel(3): Update list of cancellation points.
This should be a fairly complete list of cancellation points in libc, libthr
and librt, including standard as well as non-standard functions.
2013-06-11 21:40:20 +00:00
joel
a6e9df7131 mdoc: convert .Fd to .In, which is much nicer. 2013-06-04 07:37:06 +00:00
eadler
cdb158999f Start sentences on new lines. 2013-05-09 02:04:28 +00:00
joel
3cd1c80381 Remove cross-references to nonexistent CPU_SET(3) manpage.
Also fix cpu_getaffinity(2) document title.

PR:		176317
Submitted by:	brucec
2013-04-21 06:46:41 +00:00
hiren
096e091386 Fixing a typo.
Submitted by:	Benedikt Steinbusch (benedikt.steinbusch@googlemail.com)
Approved by:	sbruno (mentor)
2013-04-15 03:02:55 +00:00
sjg
97d8b94956 sync from head 2013-04-12 20:48:55 +00:00
joel
d5b5017793 Remove contractions. 2013-04-11 18:46:41 +00:00
sjg
0ee5295509 Updated dependencies 2013-02-16 01:23:54 +00:00
sjg
778e93c51a Sync from head 2012-11-04 02:52:03 +00:00
jilles
124486c6e9 siginfo(3): Document TRAP_DTRACE signal code.
MFC after:	1 week
2012-09-14 22:12:04 +00:00
jilles
4205a40cc9 siginfo(3): Document SI_LWP signal code.
Describe SI_LWP as being generated by pthread_kill() because thr_kill() is
a private undocumented function.

MFC after:	1 week
2012-09-14 22:10:01 +00:00
jilles
f6a078256d siginfo(3): Document SI_USER and SI_KERNEL signal codes.
MFC after:	1 week
2012-09-14 22:05:09 +00:00
eadler
e08a8123c5 Bump date missed in r202756
PR:		docs/171624
Submitted by:	bdrewery
Approved by:	gabor
MFC after:	3 days
2012-09-14 17:50:42 +00:00
ed
0fa239bbd7 Implement LIST_PREV().
Regular LISTs have been implemented in such a way that the prev-pointer
does not point to the previous element, but to the next-pointer stored
in the previous element. This is done to simplify LIST_REMOVE(). This
macro can be implemented without knowing the address of the list head.

Unfortunately this makes it harder to implement LIST_PREV(), which is
why this macro was never here. Still, it is possible to implement this
macro. If the prev-pointer points to the list head, we return NULL.
Otherwise we simply subtract the offset of the prev-pointer within the
structure.

It's not as efficient as traversing forward of course, but in practice
it shouldn't be that bad. In almost all use cases, people will want to
compare the value returned by LIST_PREV() against NULL, so an optimizing
compiler will not emit code that does more branching than TAILQs.

While there, make the code a bit more readable by introducing
__member2struct(). This makes STAILQ_LAST() far more readable.

MFC after:	1 month
2012-09-12 21:03:48 +00:00
marcel
9dd41e3647 Sync FreeBSD's bmake branch with Juniper's internal bmake branch.
Requested by: Simon Gerraty <sjg@juniper.net>
2012-08-22 19:25:57 +00:00
joel
b078416fae Remove trailing whitespace. 2012-08-21 20:40:12 +00:00
davidxu
20f511dcbd Add manual pages for clock_getcpuclockid and pthread_getcpuclockid. 2012-08-21 09:18:28 +00:00
gjb
8670397617 General mdoc(7) and typo fixes.
PR:		167734
Submitted by:	Nobuyuki Koganemaru (kogane!jp.freebsd.org)
MFC after:	3 days
2012-05-11 20:06:46 +00:00
joel
0ef023ae5b mdoc: fix column names, indentation, column separation within each row, and
quotation. Also make sure we have the same amount of columns in each row as
the number of columns we specify in the head arguments.

Reviewed by:	brueffer
2012-04-07 09:05:30 +00:00
eadler
1ef5fe44d3 Remove trailing whitespace per mdoc lint warning
Disussed with:	gavin
No objection from:	doc
Approved by:	joel
MFC after:	3 days
2012-03-29 05:02:12 +00:00
joel
db7581ccf5 Make sure sections are sorted into conventional order. 2012-03-25 16:00:56 +00:00
davidxu
aea001420f Add implementation note about when a condition variable can be destroyed. 2012-03-16 05:05:37 +00:00
gjb
9761e3fdaf Fix various typos in manual pages.
Submitted by:	amdmi3
PR:		165431
MFC after:	1 week
2012-02-25 14:31:25 +00:00
kevlo
f0596397a6 Add offsetof.3 man page
Obtained from:	OpenBSD
2012-02-08 08:42:17 +00:00
uqs
962d9f7018 Pull up vendor changes to mdoc(7)
This switches us to using -isoC-2011 as the symbol name which is used by
groff and mdocml. It follows the change to 4 digit years as done with
IEEE Std 1003 post-1999.

MFC after:	2 weeks (groff changes only)
2012-01-05 21:36:12 +00:00
ed
3e678d58aa Reimplement <tgmath.h> on top of __generic().
The macro construction used now, is almost identical to the code
provided in C11 proposal N1404. This new version doesn't seem to
introduce any regressions according to the regression test in tools/,
but still seems to malfunction with Clang on certain aspects.

The new code does work successfully with GCC 4.2, 4.6 and 4.7. With 4.7,
it also works when __generic() is implemented on top of _Generic().

Discussed with:	stefanf
2012-01-05 10:46:22 +00:00
ed
88405d6b4d Document restriction on 32-bits and 64-bits datatypes. 2011-12-27 22:14:35 +00:00
ed
cbd2bf6e79 Add missing \.
While sorting the MLINKS by name, I forgot to re-add it.
2011-12-27 13:01:10 +00:00
ed
f175ea262c Add manual page for atomic operations. 2011-12-27 12:58:54 +00:00
rse
3eabc3bd67 Fix a little typo and get rid of a cryptic description by aligning the
text to the remaining description.

Approved by: re
2011-09-02 18:13:46 +00:00
emaste
d213ff44f3 Remove note that claims pthread_set_name_np is for debugging only.
As Garrett points out,
  It is no more a debugging interface than setproctitle(3), and has not
  been since the name started getting stuffed into the kernel.  This
  statement may have made sense when the name was only visible in thread
  state dumps and the debugger.
PR:		threads/158815
Submitted by:	wollman@
2011-07-15 01:50:40 +00:00
mdf
5e42f0aa77 Note that the _SWAP operation is supported for all list/queue types.
Also place STAILQ_REMOVE_HEAD in alphabetical order.  Lastly, document
the _SWAP macros.

PR:		kern/143033
MFC after:	1 week
2011-05-13 15:49:23 +00:00
gahr
d275148566 - Fix typo
Approved by:	davidxu
2011-02-24 10:21:26 +00:00
kib
7983bf5706 Add restrict keyword to pthread_sigmask prototype and manpage.
MFC after:	1 week
2011-02-20 09:52:29 +00:00
jkim
98a74183c5 Fix the previous commit of pthread_getthreadid_np(3). 2011-02-07 21:31:21 +00:00
jkim
365538a229 Introduce a non-portable function pthread_getthreadid_np(3) to retrieve
calling thread's unique integral ID, which is similar to AIX function of
the same name.  Bump __FreeBSD_version to note its introduction.

Reviewed by:	kib
2011-02-07 21:26:46 +00:00
gavin
0d0547f67e Remove a bullet point that appears to have been accidentally inserted twice.
It has also been included within the feature lists to which it is relevant.

Submitted by:	tobez
MFC after:	1 week
2011-01-11 13:33:42 +00:00
das
de08b1bcf1 Explain some of the reasons that fpsetprec() is unlikely to work as
one might expect.  (These functions have already been deprecated for
many years.)

PR:		133583
2010-12-03 07:01:07 +00:00
davidxu
a37038ef41 Follow the change made in libthr, add ERANGE error code and more
EINVAL error cases.
2010-10-28 02:59:25 +00:00
uqs
8ae3afcfad mdoc: drop redundant .Pp and .LP calls
They have no effect when coming in pairs, or before .Bl/.Bd
2010-10-08 12:40:16 +00:00
davidxu
4b5fe92932 Make a link for pthread_timedjoin_np. 2010-09-11 09:26:36 +00:00
davidxu
24263f7931 kill() does queue signal now. 2010-09-11 08:15:18 +00:00
uqs
cc627cc10e mdoc: remove unused/empty macros 2010-08-02 13:11:27 +00:00
simon
71c28caa32 Cross reference tree(3) and queue(3).
MFC after:	1 week
2010-07-18 08:34:44 +00:00
jhb
54217fc822 - The ETIMEDOUT error applies to pthread_timedjoin_np(), not pthread_join().
- Tweak wording in history section for pthread_timedjoin_np().

MFC after:	3 days
2010-06-29 14:32:01 +00:00
uqs
64c451d29e mdoc: move remaining sections into consistent order
This pertains mostly to FILES, HISTORY, EXIT STATUS and AUTHORS sections.

Found by:	mdocml lint run
Reviewed by:	ru
2010-05-13 12:08:11 +00:00
jilles
e54eb58dbf Document clock and pshared condvar attributes.
Note: clock accepts CLOCK_VIRTUAL and CLOCK_PROF too, but this seems broken
as it simply waits for the difference of the current and given value of the
clock as if it were CLOCK_MONOTONIC. So document only CLOCK_REALTIME and
CLOCK_MONOTONIC as allowed.

MFC after:	1 week
2010-05-09 14:21:34 +00:00
uqs
3960614646 mdoc: order prologue macros consistently by Dd/Dt/Os
Although groff_mdoc(7) gives another impression, this is the ordering
most widely used and also required by mdocml/mandoc.

Reviewed by:	ru
Approved by:	philip, ed (mentors)
2010-04-14 19:08:06 +00:00
delphij
ea4088df59 Correct cross reference.
MFC after:	2 weeks
2010-03-23 18:00:50 +00:00
kib
22188bf2d0 Document pthread_timedjoin_np.
Note implementation-defined EOPNOTSUPP error [1].

PR:	threads/143115 [1]
MFC after:	3 days
2010-01-23 13:08:47 +00:00
ed
b28da9a61e Remove stale references to utmp(5) and its corresponding filenames.
I removed utmp and its manpage, but not other manpages referring to it.
2010-01-21 17:25:12 +00:00
brueffer
30ecbe64ee Various fixes. 2010-01-12 18:07:12 +00:00
delphij
6761d75fb4 Add a set of manual pages for pthread[_attr]_[sg]etaffinity(3).
Reviewed by:	davidxu
MFC after:	2 weeks
2010-01-09 12:31:11 +00:00
brueffer
c29c057cc6 Fix typo.
PR:		140615
Submitted by:	Andrius Morkunas <hinokind@gmail.com>
MFC after:	3 days
2009-11-17 07:06:41 +00:00
benno
00142187e9 Fix typo (noded -> nodes). 2009-11-04 04:12:56 +00:00
ed
3779b68747 Rename the queue macros I introduced last year.
Last year I added SLIST_REMOVE_NEXT and STAILQ_REMOVE_NEXT, to remove
entries behind an element in the list, using O(1) time. I recently
discovered NetBSD also has a similar macro, called SLIST_REMOVE_AFTER.
In my opinion this approach is a lot better:

- It doesn't have the unused first argument of the list pointer. I added
  this, mainly because OpenBSD also had it.

- The _AFTER suffix makes a lot more sense, because it is related to
  SLIST_INSERT_AFTER. _NEXT is only used to iterate through the list.

The reason why I want to rename this now, is to make sure we don't
release a major version with the badly named macros.
2009-05-27 19:28:04 +00:00