aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/man/man9/VOP_FSYNC.9
diff options
context:
space:
mode:
Diffstat (limited to 'ja_JP.eucJP/man/man9/VOP_FSYNC.9')
-rw-r--r--ja_JP.eucJP/man/man9/VOP_FSYNC.9149
1 files changed, 0 insertions, 149 deletions
diff --git a/ja_JP.eucJP/man/man9/VOP_FSYNC.9 b/ja_JP.eucJP/man/man9/VOP_FSYNC.9
deleted file mode 100644
index a6c151f14f..0000000000
--- a/ja_JP.eucJP/man/man9/VOP_FSYNC.9
+++ /dev/null
@@ -1,149 +0,0 @@
-.\" -*- nroff -*-
-.\"
-.\" Copyright (c) 1996 Doug Rabson
-.\"
-.\" All rights reserved.
-.\"
-.\" This program is free software.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
-.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\"
-.\" %FreeBSD: src/share/man/man9/VOP_FSYNC.9,v 1.13 2003/05/31 14:07:25 hmp Exp %
-.\"
-.\" $FreeBSD$
-.Dd July 24, 1996
-.Os
-.Dt VOP_FSYNC 9
-.Sh 名称
-.Nm VOP_FSYNC
-.Nd ファイルシステムバッファのファイルへの吐き出し
-.Sh 書式
-.In sys/param.h
-.In sys/vnode.h
-.Ft int
-.Fn VOP_FSYNC "struct vnode *vp" "struct ucred *cred" "int waitfor" "struct thread *td"
-.Sh 解説
-この呼び出しはファイルの全ての汚れたバッファを吐き出します。
-.Xr sync 2
-および
-.Xr fsync 2
-システムコールを実装するために使用されます。
-.Pp
-引数は以下の通りです。
-.Bl -tag -width waitfor
-.It Fa vp
-ファイルの vnode。
-.It Fa cred
-呼び出し側の証明。
-.It Fa waitfor
-入出力の完了を関数が待つべきかどうか。
-.Bl -tag -width MNT_NOWAIT
-.It Dv MNT_WAIT
-入出力の完了を同期的に待ちます。
-.It Dv MNT_NOWAIT
-全ての入出力を開始しますが、それを待ちません。
-.It Dv MNT_LAZY
-ファイルシステムの syncer によって書込まれていないデータを出力します。
-.El
-.It Fa td
-呼び出しているスレッド。
-.El
-.Pp
-引数
-.Fa waitfor
-は
-.Dv MNT_WAIT
-または
-.Dv MNT_NOWAIT
-のどちらかで、関数が戻る前に書き込みの終了を待つべきかどうかを指定します。
-.Sh ロック
-ファイルはエントリ時にロックされるべきです。
-.Sh 戻り値
-呼び出しが成功した場合には 0 が返され、
-そうでない場合には適切なエラーコードが返されます。
-.Sh 疑似コード
-.Bd -literal
-int
-vop_fsync(struct vnode *vp, struct ucred *cred, int waitfor, struct thread *td)
-{
- struct buf *bp;
- struct buf *nbp;
- struct timeval tv;
- int s;
-
-loop:
- s = splbio();
- for (bp = vp->v_dirtyblkhd.lh_first; bp; bp = nbp) {
- nbp = bp->b_vnbufs.le_next;
-
- /*
- * 既に書き込み中のバッファを無視します。
- */
- if (bp->b_flags & B_BUSY)
- continue;
-
- /*
- * バッファが汚れているか確認します。
- */
- if ((bp->b_flags & B_DELWRI) == 0)
- panic("vop_fsync: not dirty");
-
- vfs_bio_awrite(bp);
- splx(s);
- goto loop;
- }
- splx(s);
-
- if (waitfor == MNT_WAIT) {
- s = splbio();
- while (vp->v_numoutput) {
- vp->v_flag |= VBWAIT;
- tsleep((caddr_t)&vp->v_numoutput, PRIBIO + 1, "vopfsn");
- }
- splx(s);
-#ifdef DIAGNOSTIC
- if (vp->v_dirtyblkhd.lh_first) {
- vprint("vop_fsync: dirty", vp);
- goto loop;
- }
-#endif
- }
-
- /*
- * ディスク上の vnode を書き出します。
- */
- tv = time;
- return VOP_UPDATE(vp, &tv, &tv, waitfor == MNT_WAIT);
-}
-.Ed
-.Sh エラー
-.Bl -tag -width Er
-.It Bq Er ENOSPC
-ファイルシステムが一杯です。
-.It Bq Er EDQUOT
-クォータを超過しました。
-.El
-.Sh 関連項目
-.Xr vnode 9
-.Sh 作者
-このマニュアルページは
-.An Doug Rabson
-が書きました。