Module Name: src
Committed By: riastradh
Date: Sun Mar 29 21:08:08 UTC 2015
Modified Files:
src/share/man/man9: bufferio.9
Log Message:
Remove \& from example code. Cargo-culted from I forget where.
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/share/man/man9/bufferio.9
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/share/man/man9/bufferio.9
diff -u src/share/man/man9/bufferio.9:1.3 src/share/man/man9/bufferio.9:1.4
--- src/share/man/man9/bufferio.9:1.3 Sun Mar 29 21:06:26 2015
+++ src/share/man/man9/bufferio.9 Sun Mar 29 21:08:08 2015
@@ -1,4 +1,4 @@
-.\" $NetBSD: bufferio.9,v 1.3 2015/03/29 21:06:26 riastradh Exp $
+.\" $NetBSD: bufferio.9,v 1.4 2015/03/29 21:08:08 riastradh Exp $
.\"
.\" Copyright (c) 2015 The NetBSD Foundation, Inc.
.\" All rights reserved.
@@ -96,6 +96,7 @@ Caller must provide
and must not call
.Fn biowait bp .
.El
+which is zero.
.It Fa bp Ns Li "->b_data"
Pointer to kernel virtual address of source/target for transfer.
.It Fa bp Ns Li "->b_bcount"
@@ -198,51 +199,51 @@ or submitting the last nested I/O transf
.Pp
For example:
.Bd -literal -offset abcd
-\&struct buf *mbp, *bp;
-\&size_t skipped = 0;
-\&unsigned i;
-\&int error = 0;
-\&
-\&mbp = getiobuf(vp, true);
-\&mbp->b_data = data;
-\&mbp->b_resid = mbp->b_bcount = datalen;
-\&mbp->b_flags = B_WRITE;
-\&
-\&KASSERT(i < nsegs);
-\&for (i = 0; i < nsegs; i++) {
-\& struct vnode *devvp;
-\& daddr_t blkno;
-\&
-\& vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
-\& error = VOP_BMAP(vp, i*segsz, &devvp, &blkno, NULL);
-\& VOP_UNLOCK(vp);
-\& if (error == 0 && nbn == -1)
-\& error = EIO;
-\& if (error) {
-\& skipped += segsz;
-\& break;
-\& }
-\&
-\& bp = getiobuf(vp, true);
-\& nestiobuf_setup(bp, mbp, i*segsz, segsz);
-\& bp->b_blkno = blkno;
-\& if (i == nsegs - 1) /* Last segment. */
-\& break;
-\& VOP_STRATEGY(devvp, bp);
-\&}
-\&
-\&/*
-\& * Account v_numoutput for master write.
-\& * (Must not vn_lock before last VOP_STRATEGY!)
-\& */
-\&mutex_enter(&vp->v_interlock);
-\&vp->v_numoutput++;
-\&mutex_exit(&vp->v_interlock);
-\&
-\&if (skipped)
-\& nestiobuf_done(mbp, skipped, error);
-\&else
-\& VOP_STRATEGY(devvp, bp);
+struct buf *mbp, *bp;
+size_t skipped = 0;
+unsigned i;
+int error = 0;
+
+mbp = getiobuf(vp, true);
+mbp->b_data = data;
+mbp->b_resid = mbp->b_bcount = datalen;
+mbp->b_flags = B_WRITE;
+
+KASSERT(i < nsegs);
+for (i = 0; i < nsegs; i++) {
+ struct vnode *devvp;
+ daddr_t blkno;
+
+ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
+ error = VOP_BMAP(vp, i*segsz, &devvp, &blkno, NULL);
+ VOP_UNLOCK(vp);
+ if (error == 0 && nbn == -1)
+ error = EIO;
+ if (error) {
+ skipped += segsz;
+ break;
+ }
+
+ bp = getiobuf(vp, true);
+ nestiobuf_setup(bp, mbp, i*segsz, segsz);
+ bp->b_blkno = blkno;
+ if (i == nsegs - 1) /* Last segment. */
+ break;
+ VOP_STRATEGY(devvp, bp);
+}
+
+/*
+ * Account v_numoutput for master write.
+ * (Must not vn_lock before last VOP_STRATEGY!)
+ */
+mutex_enter(&vp->v_interlock);
+vp->v_numoutput++;
+mutex_exit(&vp->v_interlock);
+
+if (skipped)
+ nestiobuf_done(mbp, skipped, error);
+else
+ VOP_STRATEGY(devvp, bp);
.Ed
.Sh BLOCK DEVICE DRIVERS
Block device drivers implement a