History log of /freebsd-10.2-release/share/man/man9/timeout.9
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 285830 23-Jul-2015 gjb

- Copy stable/10@285827 to releng/10.2 in preparation for 10.2-RC1
builds.
- Update newvers.sh to reflect RC1.
- Update __FreeBSD_version to reflect 10.2.
- Update default pkg(8) configuration to use the quarterly branch.[1]

Discussed with: re, portmgr [1]
Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 275610 08-Dec-2014 avg

MFC r275045: callout(9): add sbt flavors of callout_schedule

Not applicable to earlier releases.


# 273239 17-Oct-2014 jhb

MFC 268369,268817,272771,272772:
Rewrite timeout(9) to be callout(9)-centric instead. Move the description
of timeout(9) to the end and mark it prominently as deprecated. Document
somewhat how times are specified for the 'sbt' variants. Better explain
how using callout_init_*() to associate a lock with a callout resolves
common races.


# 271064 03-Sep-2014 gavin

Merge r270251 from head:

Fix return type of callout_init_rm() and add return type to
callout_deactivate().

PR: 192520
Submitted by: ngie


# 265475 06-May-2014 emaste

MFC r261908 by ian: Fix a typo, C_ALSOLUTE -> C_ABSOLUTE.


# 256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

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


# 254826 25-Aug-2013 joel

Remove EOL whitespace.


# 254710 23-Aug-2013 davide

- Bump date.
- Small mdoc fix.

Submitted by: pluknet


# 254703 23-Aug-2013 davide

Introduce callout_init_rm() so that callouts can be used in conjunction
with rmlocks. This works only with non-sleepable rm because handlers run
in SWI context. While here, document the new KPI in the timeout(9)
manpage.

Requested by: adrian, scottl
Reviewed by: mav, remko(manpage)


# 247812 04-Mar-2013 davide

MFcalloutng:
Dcoument the new functions added to condvar(9), sleep(9), sleepqueue(9)
KPIs. Also document recent changes in timeout(9) and eventtimers(4).


# 246561 08-Feb-2013 alfred

add semicolon to end of CALLOUT_HANDLE_INITIALIZER example.


# 242459 01-Nov-2012 jimharris

Add descriptions for callout_reset_on and callout_schedule_on and
their curcpu variants.

Discussed with: mav, davide
MFC after: 1 week


# 233648 29-Mar-2012 eadler

Remove trailing whitespace per mdoc lint warning

Disussed with: gavin
No objection from: doc
Approved by: joel
MFC after: 3 days


# 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 28-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().