From owner-svn-src-projects@FreeBSD.ORG Tue Nov 6 15:37:22 2012 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B59CFC1F; Tue, 6 Nov 2012 15:37:22 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7FCD18FC0C; Tue, 6 Nov 2012 15:37:22 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id qA6FbMgl092628; Tue, 6 Nov 2012 15:37:22 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id qA6FbMgo092626; Tue, 6 Nov 2012 15:37:22 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201211061537.qA6FbMgo092626@svn.freebsd.org> From: Alexander Motin Date: Tue, 6 Nov 2012 15:37:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r242660 - projects/calloutng/share/man/man9 X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Nov 2012 15:37:22 -0000 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