Date: Tue, 6 Nov 2012 15:37:22 +0000 (UTC) From: Alexander Motin <mav@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r242660 - projects/calloutng/share/man/man9 Message-ID: <201211061537.qA6FbMgo092626@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: mav Date: Tue Nov 6 15:37:22 2012 New Revision: 242660 URL: http://svnweb.freebsd.org/changeset/base/242660 Log: Document callout_reset_flags_on() and callout_reset_bt_on() functions. Modified: projects/calloutng/share/man/man9/timeout.9 Modified: projects/calloutng/share/man/man9/timeout.9 ============================================================================== --- projects/calloutng/share/man/man9/timeout.9 Tue Nov 6 14:24:48 2012 (r242659) +++ projects/calloutng/share/man/man9/timeout.9 Tue Nov 6 15:37:22 2012 (r242660) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 1, 2012 +.Dd November 6, 2012 .Dt TIMEOUT 9 .Os .Sh NAME @@ -43,6 +43,8 @@ .Nm callout_drain , .Nm callout_reset , .Nm callout_reset_on , +.Nm callout_reset_flags_on , +.Nm callout_reset_bt_on , .Nm callout_reset_curcpu , .Nm callout_schedule , .Nm callout_schedule_on , @@ -82,6 +84,12 @@ struct callout_handle handle = CALLOUT_H .Fn callout_reset_on "struct callout *c" "int ticks" "timeout_t *func" \ "void *arg" "int cpu" .Ft int +.Fn callout_reset_flags_on "struct callout *c" "int ticks" "timeout_t *func" \ +"void *arg" "int cpu" "int flags" +.Ft int +.Fn callout_reset_bt_on "struct callout *c" "struct bintime *bt" \ +"timeout_t *func" "void *arg" "int cpu" "int flags" +.Ft int .Fn callout_reset_curcpu "struct callout *c" "int ticks" "timeout_t *func" \ "void *arg" .Ft int @@ -326,6 +334,34 @@ and .Fn callout_schedule but take an extra parameter specifying the target CPU for the callout. .Pp +The function +.Fn callout_reset_flags_on +is equivalent to +.Fn callout_reset_on +but takes an extra parameter +.Fa flags . +The following +.Fa flags +may be specified: +.Bl -tag -width ".Dv C_DIRECT_EXEC" +.It Dv C_DIRECT_EXEC +Run handler directly from hardware interrupt context instead of softclock swi. +It is faster, but puts more constraints on handlers. +Handlers may use only spin mutexes for locking, and they must be fast because +they run with absolute priority. +.El +.Pp +The function +.Fn callout_reset_bt_on +allows to get higher time resolution taking absolute time since boot +in form of struct bintime *, as returned by +.Fn binuptime +or +.Fn getbinuptime +functions, instead of relative ticks count. +If specified time is in past, it will be silently converted to present +to run handler as soon as possible. +.Pp The functions .Fn callout_reset_curcpu and
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201211061537.qA6FbMgo092626>