#
303975 |
|
11-Aug-2016 |
gjb |
Copy stable/11@r303970 to releng/11.0 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, and rename it to RC1.
Update __FreeBSD_version.
Use the quarterly branch for the default FreeBSD.conf pkg(8) repo and the dvd1.iso packages population.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
303672 |
|
02-Aug-2016 |
bdrewery |
MFC r303328:
Add links for bit_ffc_at(3) and bit_ffs_at(3).
Approved by: re (kib)
|
#
303324 |
|
25-Jul-2016 |
jhb |
MFC 302899: 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.
Approved by: re (gjb)
|
#
302408 |
|
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
300043 |
|
17-May-2016 |
kib |
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
|
#
298107 |
|
16-Apr-2016 |
gjb |
Merge the projects/release-pkg branch to head.
This allows packaging the base system with pkg(8), including but not limited to providing the ability to provide upstream binary update possibilities for non-tier-1 architectures.
This merge is a requirement of the 11.0-RELEASE, and as such, thank you to everyone that has tested the project branch.
Documentation in build(7) etc. is still somewhat sparse, but updates to those parts will follow.
Sponsored by: The FreeBSD Foundation
|
#
284915 |
|
28-Jun-2015 |
hselasky |
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
|
#
267560 |
|
17-Jun-2014 |
kevlo |
Add MLINKS for macros decribed in queue.3 manpage.
|
#
265420 |
|
06-May-2014 |
imp |
Use src.opts.mk in preference to bsd.own.mk except where we need stuff from the latter.
|
#
240422 |
|
12-Sep-2012 |
ed |
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
|
#
239486 |
|
21-Aug-2012 |
davidxu |
Add manual pages for clock_getcpuclockid and pthread_getcpuclockid.
|
#
231191 |
|
08-Feb-2012 |
kevlo |
Add offsetof.3 man page
Obtained from: OpenBSD
|
#
228913 |
|
27-Dec-2011 |
ed |
Add missing \.
While sorting the MLINKS by name, I forgot to re-add it.
|
#
228912 |
|
27-Dec-2011 |
ed |
Add manual page for atomic operations.
|
#
221843 |
|
13-May-2011 |
mdf |
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
|
#
218414 |
|
07-Feb-2011 |
jkim |
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
|
#
212459 |
|
11-Sep-2010 |
davidxu |
Make a link for pthread_timedjoin_np.
|
#
207816 |
|
09-May-2010 |
jilles |
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
|
#
201892 |
|
09-Jan-2010 |
delphij |
Add a set of manual pages for pthread[_attr]_[sg]etaffinity(3).
Reviewed by: davidxu MFC after: 2 weeks
|
#
192926 |
|
27-May-2009 |
ed |
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.
|
#
183442 |
|
28-Sep-2008 |
ed |
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().
|
#
179210 |
|
22-May-2008 |
ed |
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
|
#
177714 |
|
29-Mar-2008 |
ru |
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.
|
#
176920 |
|
07-Mar-2008 |
jasone |
Install manpage links for RB_PREV and RB_FOREACH_REVERSE.
|
#
172500 |
|
09-Oct-2007 |
obrien |
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)
|
#
172491 |
|
09-Oct-2007 |
obrien |
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)
|
#
162846 |
|
30-Sep-2006 |
ru |
Removed libc_r build support.
|
#
162420 |
|
18-Sep-2006 |
maxim |
o Add pthread_yield.3 man page.
PR: docs/100083 Reviewed by: deischen, ru Obtained from: OpenBSD MFC after: 2 weeks
|
#
156813 |
|
17-Mar-2006 |
ru |
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)
|
#
154548 |
|
19-Jan-2006 |
jasone |
Add the RB_PROTOTYPE_STATIC and RB_GENERATE_STATIC macros.
Approved by: markm (mentor)
|
#
154235 |
|
11-Jan-2006 |
maxim |
o Sort MLINKS.
|
#
154227 |
|
11-Jan-2006 |
jasone |
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)
|
#
153366 |
|
13-Dec-2005 |
davidxu |
Add siginfo.
|
#
146348 |
|
18-May-2005 |
keramida |
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>
|
#
143658 |
|
15-Mar-2005 |
das |
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
|
#
139104 |
|
21-Dec-2004 |
ru |
NOLIBC_R -> NO_LIBC_R NOLIBPTHREAD -> NO_LIBPTHREAD NOLIBTHR -> NO_LIBTHR
|
#
135458 |
|
19-Sep-2004 |
ru |
Sort MAN and MLINKS in dictionary order ignoring case.
|
#
133673 |
|
13-Aug-2004 |
stefanf |
Add a man page for tgmath.h.
Reviewed by: keramida
|
#
130062 |
|
04-Jun-2004 |
pjd |
Add missing links.
|
#
126000 |
|
19-Feb-2004 |
mtm |
Implement PThreads barriers and barrier attributes.
|
#
124837 |
|
22-Jan-2004 |
mtm |
o Implement the pthread_spin_* functions in libthr. o Man pages
|
#
124747 |
|
20-Jan-2004 |
ru |
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.
|
#
124586 |
|
16-Jan-2004 |
mtm |
Add an implementation of pthread_rwlock_timed{rd,wr}lock() to libthr with attendant documentation.
|
#
124535 |
|
14-Jan-2004 |
ru |
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
|
#
123987 |
|
30-Dec-2003 |
mtm |
o Implement pthread_mutex_timedlock(), which does not block indefinitely on a mutex locked by another thread. o document it: pthread_mutex_timedlock(3)
|
#
103526 |
|
18-Sep-2002 |
mike |
Implement C99's va_copy() macro.
|
#
98683 |
|
23-Jun-2002 |
des |
Install the tree(3) man page.
|
#
94939 |
|
17-Apr-2002 |
tmm |
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)
|
#
89373 |
|
14-Jan-2002 |
fjoe |
fix MLINKS for timeradd.3
|
#
89320 |
|
14-Jan-2002 |
dwhite |
Add manpage for timeradd macros and friends. A companion page for timespecadd should be added at a future point...
PR: 13079
|
#
74856 |
|
27-Mar-2001 |
ru |
MAN[1-9] -> MAN.
|
#
70514 |
|
30-Dec-2000 |
ben |
Remove CIRCLEQ manual page links now that CIRCLEQ has been axed.
|
#
61582 |
|
12-Jun-2000 |
jake |
Add MLINKS for queue(3) FOREACH_REVERSE and HEAD_INITIALIZER macros.
Forgotten by: jake, archie
|
#
60435 |
|
12-May-2000 |
phantom |
Add MLINKS for all macros decribed in queue.3 manpage.
|
#
50476 |
|
28-Aug-1999 |
peter |
$Id$ -> $FreeBSD$
|
#
48210 |
|
25-Jun-1999 |
jmg |
fix the links to the bitstring man page..
fix wording in man page, through != to
|
#
33107 |
|
04-Feb-1998 |
jlemon |
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
|
#
22986 |
|
22-Feb-1997 |
peter |
Revert $FreeBSD$ back to $Id$
|
#
21673 |
|
14-Jan-1997 |
jkh |
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.
|
#
17706 |
|
20-Aug-1996 |
julian |
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.
|
#
15969 |
|
29-May-1996 |
wosch |
add manpage links
TAILQ_EMPTY.3 -> queue.3 TAILQ_FIRST.3 -> queue.3 TAILQ_LAST.3 -> queue.3 TAILQ_NEXT.3 -> queue.3
|
#
15058 |
|
05-Apr-1996 |
mpp |
Add man page links for the SLIST_* and STAILQ_* macros that were added recently.
|
#
14965 |
|
31-Mar-1996 |
joerg |
Add sysexits(3). It's horrible to always examine the include file for this.
|
#
13987 |
|
09-Feb-1996 |
mpp |
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.
|
#
11611 |
|
21-Oct-1995 |
bde |
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.
|
#
11521 |
|
15-Oct-1995 |
phk |
the man-link for moncontrol soesn't belong here...
|
#
7139 |
|
18-Mar-1995 |
bde |
Obtained from: 1.1.5 (originally by Andrew Moore)
Add the manpage for the stuff in <machine/floatingpoint.h>.
|
#
1988 |
|
09-Aug-1994 |
wollman |
Make man page installation work for ``unattached'' and kernel pages.
|
#
1639 |
|
30-May-1994 |
rgrimes |
This commit was generated by cvs2svn to compensate for changes in r1638, which included commits to RCS files with non-trunk default branches.
|
#
1638 |
|
30-May-1994 |
rgrimes |
BSD 4.4 Lite Share Sources
|