Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 May 2009 20:30:29 -0700
From:      Zachary Loafman <zml@FreeBSD.org>
To:        Ben Kaduk <minimarmot@gmail.com>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, dfr@freebsd.org
Subject:   Re: Review: fail(9) style/grammar (was Re: svn commit: r192908 ...)
Message-ID:  <20090528033028.GE9388@isilon.com>
In-Reply-To: <20090528014726.GG3704@isilon.com>
References:  <200905271636.n4RGasNe003922@svn.freebsd.org> <47d0403c0905271005t7f57f9b9h3d0721bbb1fbedc2@mail.gmail.com> <20090528014726.GG3704@isilon.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--a8Wt8u1KmwUX3Y2C
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Wed, May 27, 2009 at 06:47:26PM -0700, Zachary Loafman wrote:
> Thanks for the pedantry! I've attached a patch that should address your
> issues. (Doug, please review as mentor when you get a chance.)

Let's pretend I actually attached a patch. :)

-- 
Zach Loafman | Staff Engineer | Isilon Systems

--a8Wt8u1KmwUX3Y2C
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="0008-Fix-style-grammar-issues-in-fail-9-man-page.patch"

>From f469a056fb1834167fe6d869026e98658908bc1c Mon Sep 17 00:00:00 2001
From: Zach Loafman <zachary.loafman@isilon.com>
Date: Wed, 27 May 2009 18:33:14 -0700
Subject: [PATCH] Fix style/grammar issues in fail(9) man page.

Suggested by:       Ben Kaduk
Approved by:        dfr (mentor)
---
 share/man/man9/fail.9 |   75 ++++++++++++++++++++++++++++---------------------
 1 files changed, 43 insertions(+), 32 deletions(-)

diff --git a/share/man/man9/fail.9 b/share/man/man9/fail.9
index 648f9d9..bd24b8c 100644
--- a/share/man/man9/fail.9
+++ b/share/man/man9/fail.9
@@ -48,9 +48,11 @@
 .Fn KFAIL_POINT_GOTO "parent" "name" "error_var" "label"
 .Sh DESCRIPTION
 Fail points are used to add code points where errors may be injected
-in a user controlled fashion. Fail points provide a convenient wrapper
-around user provided error injection code, providing a
-.Xr sysctl 9 MIB , and a parser for that MIB that describes how the error
+in a user controlled fashion.
+Fail points provide a convenient wrapper around user-provided error
+injection code, providing a
+.Xr sysctl 9
+MIB, and a parser for that MIB that describes how the error
 injection code should fire.
 .Pp
 The base fail point macro is
@@ -64,16 +66,19 @@ their own fail point trees), and
 .Fa name
 is the name of the MIB in that tree, and
 .Fa code
-is the error injection code. The
+is the error injection code.
+The
 .Fa code
 argument does not require braces, but it is considered good style to
-use braces for any multi-line code arguments. Inside the
+use braces for any multi-line code arguments.
+Inside the
 .Fa code
 argument, the evaluation of
 .Sy RETURN_VALUE
 is derived from the
 .Fn return
-value set in the sysctl MIB. See
+value set in the sysctl MIB.
+See
 .Sx SYSCTL SETTINGS
 below.
 .Pp
@@ -99,14 +104,14 @@ is the equivalent of
 .Sh SYSCTL VARIABLES
 The
 .Fn KFAIL_POINT_*
-macros add sysctl MIBs where specified. Many base kernel MIBs can be
-found in the
+macros add sysctl MIBs where specified.
+Many base kernel MIBs can be found in the
 .Sy debug.fail_point
 tree (referenced in code by
 .Sy DEBUG_FP
 ).
 .Pp
-The sysctl setting recognizes the following grammar:
+The sysctl variable may be set using the following grammar:
 .Pp
   <fail_point> ::
       <term> ( "->" <term> )*
@@ -135,27 +140,30 @@ Sleep the specified number of milliseconds
 .It Sy panic
 Panic
 .It Sy break
-Break into the debugger.
+Break into the debugger, or trap if there is no debugger support
 .It Sy print
 Print that the fail point executed
 .El
 .Pp
 The <float>% and <integer>* modifiers prior to <type> control when
-<type> is executed. The <float>% form (e.g. "1.2%") can be used to
-specify a probability that <type> will execute. The <integer>* form
-(e.g. "5*") can be used to specify the number of times <type> should
-be executed before this <term> is disabled. Only the last probability
-and the last count are used if multiple are specified, i.e. "1.2%2%"
-is the same as "2%". When both a probability and a count are
-specified, the probability is evaluated before the count, i.e. "2%5*"
-means "2% of the time, but only execute it 5 times total".
+<type> is executed.
+The <float>% form (e.g. "1.2%") can be used to specify a
+probability that <type> will execute.
+The <integer>* form (e.g. "5*") can be used to specify the number of
+times <type> should be executed before this <term> is disabled.
+Only the last probability and the last count are used if multiple
+are specified, i.e. "1.2%2%" is the same as "2%".
+When both a probability and a count are specified, the probability
+is evaluated before the count, i.e. "2%5*" means "2% of the time,
+but only 5 times total".
 .Pp
-The operator -> can be used to express cascading terms. If you specify
-<term1>-><term2>, it means that if <term1> doesn't 'execute', <term2>
-is evaluated. For the purpose of this operator, the return() and
-print() operators are the only types that cascade. A return() term
-only cascades if the code executes, and a print() term only cascades
-when passed a non-zero argument.
+The operator -> can be used to express cascading terms.
+If you specify <term1>-><term2>, it means that if <term1> doesn't
+'execute', <term2> is evaluated.
+For the purpose of this operator, the return() and print() operators
+are the only types that cascade.
+A return() term only cascades if the code executes, and a print()
+term only cascades when passed a non-zero argument.
 .Pp
 .Sh EXAMPLES
 .Bl -tag
@@ -164,29 +172,32 @@ when passed a non-zero argument.
 .Fa code
 with RETURN_VALUE set to 5.
 .It Sy sysctl debug.fail_point.foobar="2%return(5)->5%return(22)"
-2/100th of the time, execute
+2/100ths of the time, execute
 .Fa code
-with RETURN_VALUE set to 5. If that doesn't happen, 5% of the time
-execute
+with RETURN_VALUE set to 5.
+If that doesn't happen, 5% of the time execute
 .Fa code
 with RETURN_VALUE set to 22.
 .It Sy sysctl debug.fail_point.foobar="5*return(5)->0.1%return(22)"
-For 5 times, return 5. After that, 1/1000ths of the time, return 22.
+For 5 times, return 5.
+After that, 1/1000th of the time, return 22.
 .It Sy sysctl debug.fail_point.foobar="0.1%5*return(5)"
-Return 5 for 1 in 1000 executions, but only execute 5 times total.
+Return 5 for 1 in 1000 executions, but only 5 times total.
 .It Sy sysctl debug.fail_point.foobar="1%*sleep(50)"
-1/100ths of the time, sleep 50ms.
+1/100th of the time, sleep 50ms.
 .El
 .Pp
 .Sh CAVEATS
 It's easy to shoot yourself in the foot by setting fail points too
-aggressively or setting too many in combination. For example, forcing
+aggressively or setting too many in combination.
+For example, forcing
 .Fn malloc
 to fail consistently is potentially harmful to uptime.
 .Pp
 The
 .Fn sleep
-sysctl setting may not be appropriate in all situations. Currently,
+sysctl setting may not be appropriate in all situations.
+Currently,
 .Fn fail_point_eval
 does not verify whether the context is appropriate for calling
 .Fn msleep .
-- 
1.6.0.4


--a8Wt8u1KmwUX3Y2C--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090528033028.GE9388>