History log of /freebsd-9.3-release/share/man/man9/timeout.9
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 237216 18-Jun-2012 eadler

MFC r233648:
Remove trailing whitespace per mdoc lint warning

Approved by: cperciva (implicit)


# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 213573 08-Oct-2010 uqs

mdoc: drop redundant .Pp and .LP calls

They have no effect when coming in pairs, or before .Bl/.Bd


# 210669 31-Jul-2010 joel

Spelling fixes.


# 204604 02-Mar-2010 joel

The NetBSD Foundation has granted permission to remove clause 3 and 4 from
their software.

Obtained from: NetBSD


# 181191 02-Aug-2008 sam

add callout_schedule; besides being useful it also improves
compatibility with other systems

Reviewed by: ed, battlez


# 173778 20-Nov-2007 gabor

- Document newly added callout_init_rw function

Requested by: attilio
Reviewed by: attilio


# 152991 01-Dec-2005 jhb

- Use .fn to markup untimeout in two places it was missing.
- Reword a confusing sentence.

PR: docs/89810
Submitted by: Marius Nuennerich marius dot nuennerich at gmx dot net
MFC after: 3 days


# 152569 18-Nov-2005 ru

-mdoc sweep.


# 149879 08-Sep-2005 glebius

Make callout_reset() return a non-zero value if a pending callout
was rescheduled. If there was no pending callout, then return 0.

Reviewed by: iedowse, cperciva


# 147398 15-Jun-2005 ru

Assorted markup fixes and minor wordsmithing.

Approved by: re


# 141428 07-Feb-2005 iedowse

Add a mechanism for associating a mutex with a callout when the
callout is first initialised, using a new function callout_init_mtx().
The callout system will acquire this mutex before calling the callout
function and release it on return.

In addition, the callout system uses the mutex to avoid most of the
complications and race conditions inherent in asynchronous timer
facilities, so mutex-protected callouts have much simpler semantics.
As long as the mutex is held when invoking callout_stop() or
callout_reset(), then these functions will guarantee that the callout
will be stopped, even if softclock() had already begun to process
the callout.

Existing Giant-locked callouts will automatically pick up the new
race-free semantics. This should close a number of race conditions
in the USB code and probably other areas of the kernel too.

There should be no change in behaviour for "MP-safe" callouts; these
still need to use the techniques mentioned in timeout(9) to avoid
race conditions.


# 140950 28-Jan-2005 ru

Fixed whitespace at EOL and double word.
Uncompact enumaration to make it look better.


# 140674 23-Jan-2005 iedowse

Attempt to describe the race conditions that must be considered
when using the callout subsystem. Show how the callout_pending(),
callout_active() and callout_deactivate() macros can be used to
achieve simpler race-free callout semantics in many situations.


# 139395 29-Dec-2004 glebius

Document callout_pending() macro.

MFC after: 1 week


# 130582 16-Jun-2004 ru

Assorted markup, spelling, and grammar fixes.


# 128951 05-May-2004 hmp

mdoc(7) police:

* correctly place parenthisized sentences
* remove hard sentence breaks
* use .Vt instead of .Fn


# 127969 06-Apr-2004 cperciva

Introduce a callout_drain() function. This acts in the same manner as
callout_stop(), except that if the callout being stopped is currently
in progress, it blocks attempts to reset the callout and waits until the
callout is completed before it returns.

This makes it possible to clean up callout-using code safely, e.g.,
without potentially freeing memory which is still being used by a callout.

Reviewed by: mux, gallatin, rwatson, jhb


# 120651 01-Oct-2003 imp

Looks like I misread the callout code. We do not seem to hold the
callout lock while the callout is happening. So the serialization
that I thought was happening isn't. Therefore, remove the part of the
bugs that says this. Leave in the other bug as it is very hard to
work around (impossible?).

Fix various typos.

Also note that timeout/untimeout are considered to be the old interface and
the callout interface should be used insetad.

Submitted by: bde (first two) and wollman (third)


# 120622 01-Oct-2003 imp

Document the implications of the callout_stop() returning 0 if the
callout has finished or is in progress. Also document that the
locking of the callout code for FreeBSD 5 has eliminated the 'or is in
progress' clause as a possibility and that such elimination is an
accident of the implementation and shouldn't be relied upon.


# 84306 01-Oct-2001 ru

mdoc(7) police: Use the new .In macro for #include statements.


# 82250 23-Aug-2001 jhb

- callout_stop() now returns an integer value instead of void so
describe it.
- Add a return values section.


# 81622 14-Aug-2001 ru

mdoc(7) police: s/BSD/.Bx/ where appropriate.


# 79727 14-Jul-2001 schweikh

Removed whitespace at end-of-line; no content changes. I simply did
cd src/share; find man[1-9] -type f|xargs perl -pi -e 's/[ \t]+$//'

BTW, what editors are the culprits? I'm using vim and it shows
me whitespace at EOL in troff files with a thick blue block...

Reviewed by: Silence from cvs diff -b
MFC after: 7 days


# 79538 10-Jul-2001 ru

mdoc(7) police: removed HISTORY info from the .Os call.


# 71883 31-Jan-2001 ben

Document the mpsafe argument to callout_init().

PR: 24529
Submitted by: harti brandt <brandt@fokus.gmd.de>
Reviewed by: jlemon


# 70466 29-Dec-2000 ru

Prepare for mdoc(7)NG.


# 68716 14-Nov-2000 ru

Use Fx macro wherever possible.


# 64725 16-Aug-2000 markm

Mention more functions in the headers so whatis(1) can find them, and
create links to functions so added found.


# 55156 27-Dec-1999 bde

Fixed some bugs (one serious one: timeouts were claimed to be executed at
spl0) and some bitrot (the not-so-new callout_init/stop/reset functions
were not mentioned; the callout_activate/deactivate/pending macros are
still not mentioned).

Submitted by: mostly by jlemon


# 50476 27-Aug-1999 peter

$Id$ -> $FreeBSD$


# 32575 16-Jan-1998 bde

Fixed synopsis again. Too much was blown away by splatting a NetBSD-
based version over the top of the FreeBSD version in rev.1.6.


# 29686 21-Sep-1997 gibbs

Updated timeout.9 man page describing the new callout interface. This
man page was based on the NetBSD version.


# 24890 13-Apr-1997 bde

Fixed #include and/or prototype bugs in synopsis.


# 24022 19-Mar-1997 bde

Fixed synopsis (wrong #includes and superfluous parentheses in typedef).

Nuked the confusing timeout_func_t typedef. It will go away in <systm.h>
later.


# 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.


# 15254 13-Apr-1996 joerg

Describe timeout() and untimeout().