Commit Graph

302 Commits

Author SHA1 Message Date
Eitan Adler
eae8be706e 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 Schouten
4170b08388 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
Joel Dahl
e1f3ad3730 Remove trailing whitespace. 2012-08-21 20:40:12 +00:00
David Xu
9653e55f6a Add manual pages for clock_getcpuclockid and pthread_getcpuclockid. 2012-08-21 09:18:28 +00:00
Glen Barber
a3fb6da9ba 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 Dahl
748611c9c0 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
Eitan Adler
50d675f7a9 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 Dahl
12afe06c06 Make sure sections are sorted into conventional order. 2012-03-25 16:00:56 +00:00
David Xu
609a5a0aa7 Add implementation note about when a condition variable can be destroyed. 2012-03-16 05:05:37 +00:00
Glen Barber
3102cfe2e2 Fix various typos in manual pages.
Submitted by:	amdmi3
PR:		165431
MFC after:	1 week
2012-02-25 14:31:25 +00:00
Kevin Lo
799a00c0f5 Add offsetof.3 man page
Obtained from:	OpenBSD
2012-02-08 08:42:17 +00:00
Ulrich Spörlein
cabdddae57 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 Schouten
069a43171f 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 Schouten
669ab20feb Document restriction on 32-bits and 64-bits datatypes. 2011-12-27 22:14:35 +00:00
Ed Schouten
fd8a33c1d6 Add missing \.
While sorting the MLINKS by name, I forgot to re-add it.
2011-12-27 13:01:10 +00:00
Ed Schouten
4d8a7eab01 Add manual page for atomic operations. 2011-12-27 12:58:54 +00:00
Ralf S. Engelschall
f92578026d 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
Ed Maste
045a10cf9c 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
Matthew D Fleming
359295cd2a 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
Pietro Cerutti
b7ad88af9d - Fix typo
Approved by:	davidxu
2011-02-24 10:21:26 +00:00
Konstantin Belousov
ba13377a7e Add restrict keyword to pthread_sigmask prototype and manpage.
MFC after:	1 week
2011-02-20 09:52:29 +00:00
Jung-uk Kim
e0e9e0d819 Fix the previous commit of pthread_getthreadid_np(3). 2011-02-07 21:31:21 +00:00
Jung-uk Kim
678b238c85 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 Atkinson
cf80e937bb 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
David Schultz
549f28a438 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
David Xu
1200ef56b5 Follow the change made in libthr, add ERANGE error code and more
EINVAL error cases.
2010-10-28 02:59:25 +00:00
Ulrich Spörlein
0d9deed52c 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
David Xu
b9b58ffa26 Make a link for pthread_timedjoin_np. 2010-09-11 09:26:36 +00:00
David Xu
a60c2f1c0e kill() does queue signal now. 2010-09-11 08:15:18 +00:00
Ulrich Spörlein
b6514098d6 mdoc: remove unused/empty macros 2010-08-02 13:11:27 +00:00
Simon L. B. Nielsen
b9ec8f3b6c Cross reference tree(3) and queue(3).
MFC after:	1 week
2010-07-18 08:34:44 +00:00
John Baldwin
5695d99d40 - 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
Ulrich Spörlein
0b31f1f731 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 Tjoelker
febae919ac 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
Ulrich Spörlein
aa12cea2cc 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
Xin LI
67b9e2551d Correct cross reference.
MFC after:	2 weeks
2010-03-23 18:00:50 +00:00
Konstantin Belousov
ccbe0b21ef 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 Schouten
0806dd9238 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
Christian Brueffer
d49bbd73ff Various fixes. 2010-01-12 18:07:12 +00:00
Xin LI
777f8cebf3 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
Christian Brueffer
ad035daf08 Fix typo.
PR:		140615
Submitted by:	Andrius Morkunas <hinokind@gmail.com>
MFC after:	3 days
2009-11-17 07:06:41 +00:00
Benno Rice
9d44cd42c1 Fix typo (noded -> nodes). 2009-11-04 04:12:56 +00:00
Ed Schouten
3d98b75bac 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
Tom Rhodes
7ba7e04135 On second thought, remove the comma too. 2009-04-01 08:08:25 +00:00
Tom Rhodes
9c0f9817ff Remove KSE bits, cross reference libthr.3.
PR:		132392
Submitted by:	Niclas Zeising <niclas.zeising@gmail.com> (original version)
2009-04-01 07:13:21 +00:00
Ed Schouten
2c3fbde10d Small typo in the makedev(3) manpage.
devtoname(3) is a nonexistent function. We do have devtoname(9), but
that's entirely different. The correct function is devname(3).
2008-09-28 20:26:16 +00:00
Ed Schouten
66c6ebfe6b 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().
2008-09-28 20:15:45 +00:00
Ed Schouten
e2fd72de44 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
2008-05-22 14:40:03 +00:00
Ruslan Ermilov
dbdb679c6f 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.
2008-03-29 17:44:40 +00:00
Jason Evans
164bfe6abb Install manpage links for RB_PREV and RB_FOREACH_REVERSE. 2008-03-07 22:29:53 +00:00