History log of /freebsd-current/share/man/man3/Makefile
Revision Date Author Comments
# 91da6bec 20-Apr-2024 Konstantin Belousov <kib@FreeBSD.org>

pthread_sigqueue(3): document

Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D44867


# 7f479dee 08-Apr-2024 Dag-Erling Smørgrav <des@FreeBSD.org>

sys/queue.h: Add {LIST,TAILQ}_REPLACE().

MFC after: 1 week
Obtained from: NetBSD
Sponsored by: Klara, Inc.
Reviewed by: cperciva, imp
Differential Revision: https://reviews.freebsd.org/D44679


# 97759ccc 23-Nov-2023 Warner Losh <imp@FreeBSD.org>

share: Remove ancient SCCS tags.

Remove ancient SCCS tags from the tree, automated scripting, with two
minor fixup to keep things compiling. All the common forms in the tree
were removed with a perl script.

Sponsored by: Netflix


# e6615b10 07-Sep-2023 Dag-Erling Smørgrav <des@FreeBSD.org>

include: Implement N2867.

This adds macros for checked addition, subtraction, and multiplication with semantics similar to the builtins gcc and clang have had for years.

Reviewed by: kib, emaste
Differential Revision: https://reviews.freebsd.org/D41734


# d0b2dbfa 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line sh pattern

Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/


# 7f2109f2 16-Jan-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netlink: add snl(3) manpage to the build


# b16f993e 20-Sep-2022 Doug Moore <dougm@FreeBSD.org>

rb_tree: augmentation shortcut

RB-tree augmentation maintains data in each node of the tree that
represents the product of some associative operator applied to all the
nodes of the subtree rooted at that node. If a node in the tree
changes, augmentation data for the node is updated for that node and
all nodes on the path from that node to the tree root. However,
sometimes, augmenting a node changes no data in that node,
particularly if the associated operation is something involving 'max'
or 'min'. If augmentation changes nothing in a node, then the work of
walking to the tree root from that point is pointless, because
augmentation will change nothing in those nodes either. This change
makes it possible to avoid that wasted work.

Define RB_AUGMENT_CHECK as a macro much like RB_AUGMENT, but which
returns a value 'true' when augmentation changes the augmentation data
of a node, and false otherwise. Change code that unconditionally walks
and augments to the top of tree to code that stops once an
augmentation has no effect. In the case of rebalancing the tree after
insertion or deletion, where previously a node rotated into the path
was inevitably augmented on the march to the tree root, now check to
see if it needs augmentation because the march to the tree root
stopped before reaching it.

Change the augmentation function in iommu_gas.c so that it returns
true/false to indicate whether the augmentation had any effect.

Reviewed by: alc, kib
MFC after: 3 weeks
Differential Revision: https://reviews.freebsd.org/D36509


# a8380d27 19-Jun-2022 Doug Moore <dougm@FreeBSD.org>

tree.3: document RB_AUGMENT

Document the RB_AUGMENT macro, and provide an example of its use.
Reviewed by: alc, kib
MFC after: 3 weeks
Differential Revision: https://reviews.freebsd.org/D35518


# 15a28c00 25-Apr-2022 Mark Johnston <markj@FreeBSD.org>

man3: Add links for some bitstring(3) routines

MFC after: 1 week
Sponsored by: The FreeBSD Foundation


# df7d7638 07-Oct-2021 Felix Johnson <felix.the.red@gmail.com>

pthread_np.3: Add a manpage summarizing all of the pthread extensions.

PR: 197299
MFC after: 1 week


# 6bda1920 30-Sep-2021 Konstantin Belousov <kib@FreeBSD.org>

pthread_mutexattr(3): install pthread_mutexattr_get/setpshared links

Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Differential revision: https://reviews.freebsd.org/D32243


# 33f8d79d 20-Apr-2021 Faraz Vahedi <kfv@kfv.io>

assert.3: Document static_assert and _Static_assert

Reviewed by: imp, 0mp
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D29833


# 123ae304 20-Jan-2021 Kyle Evans <kevans@FreeBSD.org>

build: remove LIBPTHREAD/LIBTHR build options

WITHOUT_LIBTHR has been broken for a little over five years now, since the
xz 5.2.0 update introduced a hard liblzma dependency on libthr, and building
a useful system without threading support is becoming increasingly more
difficult.

Additionally, in the five plus years that it's been broken more reverse
dependencies have cropped up in libzstd, libsqlite3, and libcrypto (among
others) that make it more and more difficult to reconcile the effort needed
to fix these options.

Remove the broken options.

PR: 252760
Reviewed by: brooks, emaste, kib
Differential Revision: https://reviews.freebsd.org/D28263


# 2ef84b7d 10-Jun-2020 Konstantin Belousov <kib@FreeBSD.org>

Add pthread_getname_np() and pthread_setname_np() aliases for
pthread_get_name_np() and pthread_set_name_np().

This re-applies r361770 after compatibility fixes.

Reviewed by: antoine, jkim, markj
Tested by: antoine (exp-run)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D25117


# 064c283d 04-Jun-2020 Konstantin Belousov <kib@FreeBSD.org>

Revert r361770 "Add pthread_getname_np() and pthread_setname_np() aliases" for now.

It is not compatible enough with Linux.

Requested by: antoine, jkim
Sponsored by: The FreeBSD Foundation


# 9bed49fe 03-Jun-2020 Konstantin Belousov <kib@FreeBSD.org>

Add pthread_getname_np() and pthread_setname_np() aliases

for pthread_get_name_np() and pthread_set_name_np(), to be
compatible with Linux.

PR: 238404
Proposed and reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D25117


# 132fb3dc 15-Feb-2020 Konstantin Belousov <kib@FreeBSD.org>

Add pthread_peekjoin_np(3).

The function allows to peek at the thread exit status and even see
return value, without joining (and thus finally destroying) the target
thread.

Reviewed by: markj
Sponsored by: The FreeBSD Foundation (kib)
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D23676


# 1a13f2e6 07-Oct-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

Introduce stats(3), a flexible statistics gathering API.

This provides a framework to define a template describing
a set of "variables of interest" and the intended way for
the framework to maintain them (for example the maximum, sum,
t-digest, or a combination thereof). Afterwards the user
code feeds in the raw data, and the framework maintains
these variables inside a user-provided, opaque stats blobs.
The framework also provides a way to selectively extract the
stats from the blobs. The stats(3) framework can be used in
both userspace and the kernel.

See the stats(3) manual page for details.

This will be used by the upcoming TCP statistics gathering code,
https://reviews.freebsd.org/D20655.

The stats(3) framework is disabled by default for now, except
in the NOTES kernel (for QA); it is expected to be enabled
in amd64 GENERIC after a cool down period.

Reviewed by: sef (earlier version)
Obtained from: Netflix
Relnotes: yes
Sponsored by: Klara Inc, Netflix
Differential Revision: https://reviews.freebsd.org/D20477


# a5adff0e 28-Sep-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

Rename ARB_REBALANCE(3) to ARB_REINSERT(3) to match tree(3),
and document it.

MFC after: 2 weeks
Sponsored by: Klara Inc, Netflix


# 160afacf 28-Sep-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

Sort MLINKS for arb(3), and actually make them work by fixing a '=' vs '+='
mixup.

MFC after: 2 weeks
Sponsored by: Klara Inc, Netflix


# 22823764 28-Sep-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

Add RB_REINSERT(3), a low overhead alternative to removing a node
and reinserting it back with an updated key.

This is one of dependencies for the upcoming stats(3) code.

Reviewed by: cem
Obtained from: Netflix
MFC after: 2 weeks
Sponsored by: Klara Inc, Netflix
Differential Revision: https://reviews.freebsd.org/D21786


# fad4b12b 14-Sep-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

Introduce arb(3), the Array-based Red-Black Tree macros: similar
to the traditional tree(3) RB trees, but using an array (preallocated,
linear chunk of memory) to store the tree.

This avoids allocation overhead, improves memory locality,
and makes it trivially easy to share/transfer/copy the entire tree
without the need for marshalling. The downside is that the size
is fixed at initialization time; there is no mechanism to resize
it.

This is one of the dependencies for the new stats(3) framework
(https://reviews.freebsd.org/D20477).

Reviewed by: bcr (man pages), markj
Discussed with: cem
MFC after: 2 weeks
Sponsored by: Klara Inc, Netflix
Obtained from: Netflix
Differential Revision: https://reviews.freebsd.org/D20324


# 5a38af1f 27-Aug-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

Introduce <sys/qmath.h>, a fixed-point math library from Netflix.

This makes it possible to perform mathematical operations
on
fractional values without using floating point. It operates on Q
numbers, which are integer-sized, opaque structures initialized
to hold a chosen number of integer and fractional
bits.


For a general description of the Q number system, see the "Fixed Point
Representation & Fractional Math" whitepaper[1]; for the actual
API see the qmath(3) man page.

This is one of dependencies for the upcoming stats(3) framework[2]
that will be applied to the TCP stack in a later commit.

1. https://www.superkits.net/whitepapers/Fixed%20Point%20Representation%20&%20Fractional%20Math.pdf
2. https://reviews.freebsd.org/D20477

Reviewed by: bcr (man pages, earlier version), sef (earlier version)
Discussed with: cem, dteske, imp, lstewart
Sponsored By: Klara Inc, Netflix
Obtained from: Netflix
Differential Revision: https://reviews.freebsd.org/D20116


# 1d6d0a43 19-Jul-2019 Emmanuel Vadot <manu@FreeBSD.org>

pkgbase: move man pages from runtime-manual to runtime

We don't split the other man pages in their own package so do the same for runtime.

Reviewed by: bapt, gjb
Differential Revision: https://reviews.freebsd.org/D20962


# 970a1ed3 17-Jun-2019 Mark Johnston <markj@FreeBSD.org>

Add some missing MLINKs for tree(3).

MFC after: 3 days


# c8b8b38e 19-Aug-2018 Mateusz Piotrowski <0mp@FreeBSD.org>

Document socket control message routines for ancillary data access (CMSG_DATA).

PR: 227777
Reviewed by: bcr, eadler
Approved by: mat (mentor), manpages (bcr)
Obtained from: OpenBSD
Differential Revision: https://reviews.freebsd.org/D15215


# 4627d47b 17-Aug-2018 Konstantin Belousov <kib@FreeBSD.org>

Add pthread_get_name_np(3).

The function retrieves the thread name previously set by
pthread_set_name_np(3). The name is cached in the process memory.

Requested by: Willem Jan Withagen <wjw@digiware.nl>
Man page update: Yuri Pankov <yuripv@yuripv.net>
Reviewed by: ian (previous version)
Discussed with: arichardson, bjk (man page)
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D16702


# 6040822c 30-Jul-2018 Alan Somers <asomers@FreeBSD.org>

Make timespecadd(3) and friends public

The timespecadd(3) family of macros were imported from NetBSD back in
r35029. However, they were initially guarded by #ifdef _KERNEL. In the
meantime, we have grown at least 28 syscalls that use timespecs in some
way, leading many programs both inside and outside of the base system to
redefine those macros. It's better just to make the definitions public.

Our kernel currently defines two-argument versions of timespecadd and
timespecsub. NetBSD, OpenBSD, and FreeDesktop.org's libbsd, however, define
three-argument versions. Solaris also defines a three-argument version, but
only in its kernel. This revision changes our definition to match the
common three-argument version.

Bump _FreeBSD_version due to the breaking KPI change.

Discussed with: cem, jilles, ian, bde
Differential Revision: https://reviews.freebsd.org/D14725


# 06b93667 08-Sep-2016 Conrad Meyer <cem@FreeBSD.org>

queue(3): Enhance queue debugging macros

Split the QUEUE_MACRO_DEBUG into QUEUE_MACRO_DEBUG_TRACE and
QUEUE_MACRO_DEBUG_TRASH.

Add the debug macrso QMD_IS_TRASHED() and QMD_SLIST_CHECK_PREVPTR().

Document these in queue.3.

Reviewed by: emaste
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D3984


# e7f94194 25-Jul-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Add links for bit_ffc_at(3) and bit_ffs_at(3).

MFC after: 3 days


# 463970da 15-Jul-2016 John Baldwin <jhb@FreeBSD.org>

Add documentation for the sigevent structure.

- Add a sigevent(3) manpage to give a general overview of the sigevent
structure and the available notification mechanisms.
- Document that AIO requests contain a nested sigevent structure that can
be used to request completion notification.
- Expand the sigevent details in other manuals to note details such as
the extra values stored in a queued signal's information or in a posted
kevent.

Reviewed by: kib
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D7122


# 2a339d9e 17-May-2016 Konstantin Belousov <kib@FreeBSD.org>

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


# bf2df150 21-Jan-2016 Glen Barber <gjb@FreeBSD.org>

Separate manual pages into their own package.

Sponsored by: The FreeBSD Foundation


# 38b622e1 28-Jun-2015 Hans Petter Selasky <hselasky@FreeBSD.org>

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


# c459e528 16-Jun-2014 Kevin Lo <kevlo@FreeBSD.org>

Add MLINKS for macros decribed in queue.3 manpage.


# c6063d0d 05-May-2014 Warner Losh <imp@FreeBSD.org>

Use src.opts.mk in preference to bsd.own.mk except where we need stuff
from the latter.


# 4170b083 12-Sep-2012 Ed Schouten <ed@FreeBSD.org>

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


# 9653e55f 21-Aug-2012 David Xu <davidxu@FreeBSD.org>

Add manual pages for clock_getcpuclockid and pthread_getcpuclockid.


# 799a00c0 08-Feb-2012 Kevin Lo <kevlo@FreeBSD.org>

Add offsetof.3 man page

Obtained from: OpenBSD


# fd8a33c1 27-Dec-2011 Ed Schouten <ed@FreeBSD.org>

Add missing \.

While sorting the MLINKS by name, I forgot to re-add it.


# 4d8a7eab 26-Dec-2011 Ed Schouten <ed@FreeBSD.org>

Add manual page for atomic operations.


# 359295cd 13-May-2011 Matthew D Fleming <mdf@FreeBSD.org>

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


# 678b238c 07-Feb-2011 Jung-uk Kim <jkim@FreeBSD.org>

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


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# b9b58ffa 11-Sep-2010 David Xu <davidxu@FreeBSD.org>

Make a link for pthread_timedjoin_np.


# 4f4fbb71 16-May-2010 Jilles Tjoelker <jilles@FreeBSD.org>

MFC r207816: 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.


# febae919 09-May-2010 Jilles Tjoelker <jilles@FreeBSD.org>

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


# fe0506d7 09-Mar-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Create the altix project branch. The altix project will add support
for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting
is a two-module system, consisting of a base compute module and a
CPU expansion module. SGI's NUMAFlex architecture can be an excellent
platform to test CPU affinity and NUMA-aware features in FreeBSD.


# deacfb84 22-Jan-2010 Xin LI <delphij@FreeBSD.org>

MFC r201892:

Add a set of manual pages for pthread[_attr]_[sg]etaffinity(3).

Reviewed by: davidxu


# 777f8ceb 08-Jan-2010 Xin LI <delphij@FreeBSD.org>

Add a set of manual pages for pthread[_attr]_[sg]etaffinity(3).

Reviewed by: davidxu
MFC after: 2 weeks


# 3d98b75b 27-May-2009 Ed Schouten <ed@FreeBSD.org>

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.


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# 66c6ebfe 28-Sep-2008 Ed Schouten <ed@FreeBSD.org>

Several documentation fixups related to device minor/major numbers:

- Document the minor(3), major(3) and makedev(3) macro's. They also
apply to umajor() and uminor() in the kernel, but hopefully we'll sort
that out one day.

- Briefly dev2unit() inside the make_dev(9) manual page, since this is
now the preferred macro to obtain character device unit numbers inside
the kernel.

- Remove the device_ids(9) manual page. It contains highly inaccurate
information, such as a description of the nonexistent major().


# e2fd72de 22-May-2008 Ed Schouten <ed@FreeBSD.org>

Introduce REMOVE_NEXT() macro's for SLIST and STAILQ.

Even though single linked lists allow items to be removed at constant time
(when the previous element is known), the queue macro's don't allow this.
Implement new REMOVE_NEXT() macro's. Because the REMOVE() macro's also
contain the same code, make it call REMOVE_NEXT().

The OpenBSD version of SLIST_REMOVE_NEXT() needs a reference to the list
head, even though it is unused. We'd better mimic this. The STAILQ version
also needs a reference to the list. This means the prototypes of both
macro's are the same.

Approved by: philip (mentor)
PR: kern/121117


# dbdb679c 29-Mar-2008 Ruslan Ermilov <ru@FreeBSD.org>

Remove options MK_LIBKSE and DEFAULT_THREAD_LIB now that we no longer
build libkse. This should fix WITHOUT_LIBTHR builds as a side effect.


# 164bfe6a 07-Mar-2008 Jason Evans <jasone@FreeBSD.org>

Install manpage links for RB_PREV and RB_FOREACH_REVERSE.


# 946367b8 09-Oct-2007 David E. O'Brien <obrien@FreeBSD.org>

Tweak the handling of "WITHOUT_LIBPTHREAD". Also remove the accidental
treatment of 'LIBKSE' as an "old style" knob.

Submitted by: ru
Approved by: re(kensmith)


# 65c045e9 09-Oct-2007 David E. O'Brien <obrien@FreeBSD.org>

Repo copy libpthreads to libkse.
This introduces the WITHOUT_LIBKSE nob,
and changes WITHOUT_LIBPTHREADS to mean with neither threading libs.
Approved by: re(kensmith)


# 2e975006 30-Sep-2006 Ruslan Ermilov <ru@FreeBSD.org>

Removed libc_r build support.


# 0029d642 18-Sep-2006 Maxim Konovalov <maxim@FreeBSD.org>

o Add pthread_yield.3 man page.

PR: docs/100083
Reviewed by: deischen, ru
Obtained from: OpenBSD
MFC after: 2 weeks


# e1fe3dba 17-Mar-2006 Ruslan Ermilov <ru@FreeBSD.org>

Reimplementation of world/kernel build options. For details, see:

http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html

The src.conf(5) manpage is to follow in a few days.

Brought to you by: imp, jhb, kris, phk, ru (all bugs are mine)


# d72cd779 19-Jan-2006 Jason Evans <jasone@FreeBSD.org>

Add the RB_PROTOTYPE_STATIC and RB_GENERATE_STATIC macros.

Approved by: markm (mentor)


# 7b7f29d8 11-Jan-2006 Maxim Konovalov <maxim@FreeBSD.org>

o Sort MLINKS.


# 06115e08 11-Jan-2006 Jason Evans <jasone@FreeBSD.org>

Add the RB_NFIND() macro, which is useful for red-black tree searches
for which there may not be an exact match.

Reviewed by: glebius, julian
Approved by: markm (mentor)


# 22fc8362 12-Dec-2005 David Xu <davidxu@FreeBSD.org>

Add siginfo.


# a3c8fc53 18-May-2005 Giorgos Keramidas <keramida@FreeBSD.org>

Add a manpage for pthread_atfork(3). This copies a lot of the text of
the Open Group manpage for pthread_atfork(), available online at:

http://www.opengroup.org/onlinepubs/009695399/functions/pthread_atfork.html

which should be ok, since Daniel Eischen had mailed me about Open
Group manpages and the fact that they have granted permission to
FreeBSD to use their material. Any differences from the OG text are
my changes to the original manpage text submitted by Alex Vasylenko:

- In an effort to clean up the part that describes hooks and their
calling order, I used a list instead of a single paragraph for all the three
types of fork() hooks.
- After a short discussion with Dima Dorfman a long long time ago in a
far away galaxy, I changed the RETURN VALUES section to look more
like the rest of the pthread_xxx.3 manpages.

PR: docs/68201
Submitted by: Alex Vasylenko <lxv@omut.org>


# 7b74e4a7 15-Mar-2005 David Schultz <das@FreeBSD.org>

Remove fpsetsticky(). This was added for SysV compatibility, but due
to mistakes from day 1, it has always had semantics inconsistent with
SVR4 and its successors. In particular, given argument M:

- On Solaris and FreeBSD/{alpha,sparc64}, it clobbers the old flags
and *sets* the new flag word to M. (NetBSD, too?)
- On FreeBSD/{amd64,i386}, it *clears* the flags that are specified in M
and leaves the remaining flags unchanged (modulo a small bug on amd64.)
- On FreeBSD/ia64, it is not implemented.

There is no way to fix fpsetsticky() to DTRT for both old FreeBSD apps
and apps ported from other operating systems, so the best approach
seems to be to kill the function and fix any apps that break. I
couldn't find any ports that use it, and any such ports would already
be broken on FreeBSD/ia64 and Linux anyway.

By the way, the routine has always been undocumented in FreeBSD,
except for an MLINK to a manpage that doesn't describe it. This
manpage has stated since 5.3-RELEASE that the functions it describes
are deprecated, so that must mean that functions that it is *supposed*
to describe but doesn't are even *more* deprecated. ;-)

Note that fpresetsticky() has been retained on FreeBSD/i386. As far
as I can tell, no other operating systems or ports of FreeBSD
implement it, so there's nothing for it to be inconsistent with.

PR: 75862
Suggested by: bde


# f1f6253f 21-Dec-2004 Ruslan Ermilov <ru@FreeBSD.org>

NOLIBC_R -> NO_LIBC_R
NOLIBPTHREAD -> NO_LIBPTHREAD
NOLIBTHR -> NO_LIBTHR


# 710df706 19-Sep-2004 Ruslan Ermilov <ru@FreeBSD.org>

Sort MAN and MLINKS in dictionary order ignoring case.


# fd51ce66 13-Aug-2004 Stefan Farfeleder <stefanf@FreeBSD.org>

Add a man page for tgmath.h.

Reviewed by: keramida


# f7b00e06 04-Jun-2004 Pawel Jakub Dawidek <pjd@FreeBSD.org>

Add missing links.


# d4d7df5c 19-Feb-2004 Mike Makonnen <mtm@FreeBSD.org>

Implement PThreads barriers and barrier attributes.


# dec04f43 22-Jan-2004 Mike Makonnen <mtm@FreeBSD.org>

o Implement the pthread_spin_* functions in libthr.
o Man pages


# b760de96 20-Jan-2004 Ruslan Ermilov <ru@FreeBSD.org>

Use a single style for share/man/ makefiles:

- Sort MAN and MLINKS in "dictionary" order ignoring case.

- For multi-value MAN and multi-pair MLINKS, put each value/pair
on its own line, for easier sorting and so that further diffs
are easier to see.


# 104ff764 16-Jan-2004 Mike Makonnen <mtm@FreeBSD.org>

Add an implementation of pthread_rwlock_timed{rd,wr}lock() to libthr with
attendant documentation.


# ec7452f1 14-Jan-2004 Ruslan Ermilov <ru@FreeBSD.org>

Have a single set of POSIX threads man pages. The LIBRARY section
of each manpage lists libraries that have corresponding interfaces
implemented.

Prodded by: threads
Reviewed by: deischen


# 2aa9de1f 30-Dec-2003 Mike Makonnen <mtm@FreeBSD.org>

o Implement pthread_mutex_timedlock(), which does not block indefinitely on
a mutex locked by another thread.
o document it: pthread_mutex_timedlock(3)


# 86954511 18-Sep-2002 Mike Barcroft <mike@FreeBSD.org>

Implement C99's va_copy() macro.


# f191b6f9 23-Jun-2002 Dag-Erling Smørgrav <des@FreeBSD.org>

Install the tree(3) man page.


# d57e28ad 17-Apr-2002 Thomas Moestl <tmm@FreeBSD.org>

Document STAILQ_CONCAT and TAILQ_CONCAT.

PR: 20024
Submitted by: Tony Finch <dot@dotat.at> (TAILQ_CONCAT, slightly changed
by me)
Reviewed by: ru (earlier version)


# 8b4d1508 14-Jan-2002 Max Khon <fjoe@FreeBSD.org>

fix MLINKS for timeradd.3


# e5606f14 13-Jan-2002 Doug White <dwhite@FreeBSD.org>

Add manpage for timeradd macros and friends. A companion page for
timespecadd should be added at a future point...

PR: 13079


# acaf79e1 27-Mar-2001 Ruslan Ermilov <ru@FreeBSD.org>

MAN[1-9] -> MAN.


# 83c1fbc2 30-Dec-2000 Ben Smithurst <ben@FreeBSD.org>

Remove CIRCLEQ manual page links now that CIRCLEQ has been axed.


# 51255f9d 12-Jun-2000 Jake Burkholder <jake@FreeBSD.org>

Add MLINKS for queue(3) FOREACH_REVERSE and HEAD_INITIALIZER macros.

Forgotten by: jake, archie


# f8316c10 12-May-2000 Alexey Zelkin <phantom@FreeBSD.org>

Add MLINKS for all macros decribed in queue.3 manpage.


# 7f3dea24 27-Aug-1999 Peter Wemm <peter@FreeBSD.org>

$Id$ -> $FreeBSD$


# 0b607240 24-Jun-1999 John-Mark Gurney <jmg@FreeBSD.org>

fix the links to the bitstring man page..

fix wording in man page, through != to


# 4f36d4ac 04-Feb-1998 Jonathan Lemon <jlemon@FreeBSD.org>

Document the fpgetprec/fpsetprec functions in their man page.
Add cross-references to the elusive fpsetmask() function to various other
man pages.
Reviewed by: bde


# e25aeca9 22-Feb-1997 Peter Wemm <peter@FreeBSD.org>

Revert $FreeBSD$ back to $Id$


# 1130b656 14-Jan-1997 Jordan K. Hubbard <jkh@FreeBSD.org>

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 0f7d6847 20-Aug-1996 Julian Elischer <julian@FreeBSD.org>

Submitted by: John Birrell <cimaxp1!jb@werple.net.au>

Here are the diffs for libc_r to get it one step closer to P1003.1c
These make most of the thread/mutex/condvar structures opaque to the
user. There are three functions which have been renamed with _np
suffixes because they are extensions to P1003.1c (I did them for JAVA,
which needs to suspend/resume threads and also start threads suspended).

I've created a new header (pthread_np.h) for the non-POSIX stuff.

The egrep tags stuff in /usr/src/lib/libc_r/Makefile that I uncommented
doesn't work. I think its best to delete it. I don't think libc_r needs
tags anyway, 'cause most of the source is in libc which does have tags.

also:

Here's the first batch of man pages for the thread functions.
The diff to /usr/src/lib/libc_r/Makefile removes some stuff that was
inherited from /usr/src/lib/libc/Makefile that should only be done with
libc.

also:

I should have sent this diff with the pthread(3) man page.
It allows people to type

make -DWANT_LIBC_R world

to get libc_r built with the rest of the world. I put this in the
pthread(3) man page. The default is still not to build libc_r.


also:
The diff attached adds a pthread(3) man page to /usr/src/share/man/man3.
The idea is that without libc_r installed, this man page will give people
enough info to know that they have to build libc_r.


# 2f44872f 28-May-1996 Wolfram Schneider <wosch@FreeBSD.org>

add manpage links

TAILQ_EMPTY.3 -> queue.3
TAILQ_FIRST.3 -> queue.3
TAILQ_LAST.3 -> queue.3
TAILQ_NEXT.3 -> queue.3


# 288b0245 05-Apr-1996 Mike Pritchard <mpp@FreeBSD.org>

Add man page links for the SLIST_* and STAILQ_* macros that were added
recently.


# da569d04 31-Mar-1996 Joerg Wunsch <joerg@FreeBSD.org>

Add sysexits(3). It's horrible to always examine the include file for
this.


# c211e812 08-Feb-1996 Mike Pritchard <mpp@FreeBSD.org>

Added some missing MLINKS for section 3 man pages.
Also corrected a few minor formatting errors, file location and cross
references in some of the section 3 man pages.

This shuts up a lot of the output from "manck" for section 3.


# ee911e54 21-Oct-1995 Bruce Evans <bde@FreeBSD.org>

Remove private rules for clean, depend, lint, tags and install.
The private clean rules have been broken since we started
building compressed man pages in the obj directory and the
others don't do anything different from the general rules.


# bc0ec9ca 15-Oct-1995 Poul-Henning Kamp <phk@FreeBSD.org>

the man-link for moncontrol soesn't belong here...


# 62e2a046 18-Mar-1995 Bruce Evans <bde@FreeBSD.org>

Obtained from: 1.1.5 (originally by Andrew Moore)

Add the manpage for the stuff in <machine/floatingpoint.h>.


# 8ccf48ea 09-Aug-1994 Garrett Wollman <wollman@FreeBSD.org>

Make man page installation work for ``unattached'' and kernel pages.


# afe61c15 30-May-1994 Rodney W. Grimes <rgrimes@FreeBSD.org>

BSD 4.4 Lite Share Sources