Catch up with 5.0-CURRENT-20021105-JPSNAP.

Submitted by:	Akira Ikeuchi <a_ikeuchi@mic.mitsumi.co.jp>
This commit is contained in:
Kazuo Horikawa 2002-11-18 05:36:49 +00:00
parent 402d68d610
commit 67ee619bfa
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=14932
58 changed files with 349 additions and 236 deletions

View file

@ -26,7 +26,7 @@
.\" (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/BUS_PRINT_CHILD.9,v 1.6.2.5 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/BUS_PRINT_CHILD.9,v 1.12 2001/10/01 16:09:23 ru Exp %
.\"
.\" $FreeBSD$
.Dd June 16, 1998

View file

@ -26,7 +26,7 @@
.\" (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/BUS_READ_IVAR.9,v 1.3.2.4 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/BUS_READ_IVAR.9,v 1.7 2001/10/01 16:09:23 ru Exp %
.\"
.\" $FreeBSD$
.Dd June 16, 1998

View file

@ -22,20 +22,29 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" %FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.1.2.6 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.11 2002/01/09 11:43:45 mpp Exp %
.\"
.\" $FreeBSD$
.Dd April 2, 2000
.Dt BUS_SETUP_INTR 9
.Os
.Sh 名称
.Nm BUS_SETUP_INTR
.Nd 割り込みハンドラの作成と接続
.Nm BUS_SETUP_INTR ,
.Nm bus_setup_intr ,
.Nm BUS_TEARDOWN_INTR ,
.Nm bus_teardown_intr
.Nd 割り込みハンドラの作成と接続および破壊
.Sh 書式
.In sys/param.h
.In sys/bus.h
.Ft int
.Fn BUS_SETUP_INTR "device_t dev" "device_t child" "struct resource *irq" "int flags" "driver_intr_t *intr" "void *arg" "void **cookiep"
.Ft int
.Fn bus_setup_intr "device_t dev" "struct resource *r" "int flags" "driver_intr_t handler" "void *arg" "void **cookiep"
.Ft int
.Fn BUS_TEARDOWN_INTR "device_t dev" "device_t child" "struct resource *irq" "void *cookiep"
.Ft int
.Fn bus_teardown_intr "device_t dev" "struct resource *r" "void *cookiep"
.Sh 解説
メソッド
.Nm
@ -43,6 +52,30 @@
.Xr BUS_ALLOC_RESOURCE 9
メソッドによって以前に割り当てられた割り込みに対し、
割り込みハンドラを生成してアタッチします。
.Fa flags
.Aq Pa sys/bus.h
で見つかり、割り込みの大まかな種類を与えます。また、
.Fa flags
はデバイスドライバの特性についての信頼できる情報を、割り込みハンドラに伝えます。
.Dv INTR_FAST
はそのハンドラが時間にクリティカルな関数のための
ハンドラであることを意味します。
これらのハンドラのスピードアップのために特別な注意がはらわれます。
これの利用は
.Dv INTR_EXCL
を暗に含みます。
.Dv INTR_EXCL
はそのハンドラをこの割り込みのための排他的なハンドラとして記録します。
.Dv INTR_MPSAFE
はその割り込みハンドラはプリエンプティブな環境で適切に
振舞う (``SMP セーフ'') こと、および ``ジャイアントロック'' mutex によって
保護される必要がないことを、スケジューラに通知します。
.Dv INTR_ENTROPY
はその割り込みがエントロピの良い供給源であるとして記録します。
これは、エントロピデバイス
.Pa /dev/tandom
によって使用されることができます。
ハンドラ
.Fa intr
は唯一の引数
@ -58,7 +91,7 @@
.Sh 戻り値
成功時には 0 が返され、それ以外の場合は適切なエラーが返されます。
.Sh 関連項目
.Xr BUS_TEARDOWN_INTR 9 ,
.Xr random 4 ,
.Xr device 9 ,
.Xr driver 9
.Sh 作者

View file

@ -26,7 +26,7 @@
.\" (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/DECLARE_MODULE.9,v 1.2.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DECLARE_MODULE.9,v 1.6 2002/06/10 04:37:11 davidc Exp %
.\" $FreeBSD$
.\"
.Dd March 3, 2001
@ -36,6 +36,8 @@
.Nm DECLARE_MODULE
.Nd カーネルモジュール宣言マクロ
.Sh 書式
.In sys/param.h
.In sys/kernel.h
.In sys/module.h
.Fn DECLARE_MODULE "name" "moduledata_t data" "sub" "order"
.Sh 解説
@ -65,7 +67,7 @@
.Fa data
は 2 つの主要な要素を含む
.Vt moduledata_t
構造体へのポインタです。その要素は、
構造体です。その要素は、
.Vt module_t
構造体の中で使用されるモジュール名の正式名称および型
.Vt modeventhand_t
@ -76,7 +78,6 @@
.Fn SYSINIT
マクロへの直接の引数です。
このための有効な値は
.\" .Vt sysstem_sub_id XXX sysinit_sub_id の間違い?
.Vt sysinit_sub_id
列挙に
.Pa ( kernel.h

View file

@ -25,7 +25,7 @@
.\" (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/DELAY.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DELAY.9,v 1.6 2001/10/01 16:09:23 ru Exp %
.\" $FreeBSD$
.\"
.Dd November 21, 2000
@ -35,7 +35,8 @@
.Nm DELAY
.Nd 時間間隔のためのビジーループ
.Sh 書式
.In machine/clock.h
.In sys/types.h
.In sys/systm.h
.Ft void
.Fn DELAY "int delay"
.Sh 解説

View file

@ -26,7 +26,7 @@
.\" (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/DEVICE_ATTACH.9,v 1.3.2.4 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DEVICE_ATTACH.9,v 1.7 2001/10/01 16:09:23 ru Exp %
.\"
.\" $FreeBSD$
.Dd June 16, 1998
@ -45,15 +45,16 @@
プローブメソッドは既に呼び出されているでしょうし、
デバイスが存在していると示されているでしょう。
このルーチンはハードウェアの初期化と
その他のシステムリソース (
.Pa dev
エントリなど) の割り当てを行なうべきです。
その他の (devfs エントリのような) システムリソース
の割り当てを行なうべきです。
.Sh 戻り値
成功時には 0 が返され、それ以外の場合は適切なエラーが返されます。
.Sh 関連項目
.Xr device 9 ,
.Xr DEVICE_DETACH 9 ,
.Xr DEVICE_PROBE 9
.Xr DEVICE_IDENTIFY 9 ,
.Xr DEVICE_PROBE 9 ,
.Xr DEVICE_SHUTDOWN 9
.Sh 作者
このマニュアルページは
.An Doug Rabson

View file

@ -26,7 +26,7 @@
.\" (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/DEVICE_DETACH.9,v 1.3.2.5 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DEVICE_DETACH.9,v 1.9 2001/10/01 16:09:23 ru Exp %
.\"
.\" $FreeBSD$
.Dd June 16, 1998
@ -49,13 +49,16 @@
このメソッドは
.Xr DEVICE_ATTACH 9
メソッドで割り当てられたあらゆるシステムリソースを解放し、
ハードウェアを健全な状態にリセットする
(つまり割り込みをディセーブルするなど)べきです。
ハードウェアを健全な状態に
リセットする (つまり割り込みを無効にするなど) べきです。
.Sh 戻り値
成功時には 0 が返され、それ以外の場合は適切なエラーが返されます。
.Sh 関連項目
.Xr device 9 ,
.Xr DEVICE_ATTACH 9
.Xr DEVICE_ATTACH 9 ,
.Xr DEVICE_IDENTIFY 9 ,
.Xr DEVICE_PROBE 9 ,
.Xr DEVICE_SHUTDOWN 9
.Sh 作者
このマニュアルページは
.An Doug Rabson

View file

@ -26,7 +26,7 @@
.\" (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/DEVICE_IDENTIFY.9,v 1.2.2.5 2002/03/19 18:24:16 schweikh Exp %
.\" %FreeBSD: src/share/man/man9/DEVICE_IDENTIFY.9,v 1.7 2002/03/16 18:07:07 schweikh Exp %
.\" $FreeBSD$
.Dd March 10, 2001
.Dt DEVICE_IDENTIFY 9
@ -42,7 +42,7 @@
.Sh 解説
デバイスのための識別関数は、例えば ISA バスなどの、子デバイスを独立して
識別できないバス上のデバイスのためにだけ必要とされます。
これはデバイスを認識 (大抵はハードウェアの特定のレジスタに
これはデバイスを認識 (大抵はハードウェアの不明瞭でないレジスタに
アクセスすることによって行われます) し、
そのデバイスに関してカーネルに通知し、
新しいデバイスの実体を作成するために、使用されます。

View file

@ -26,7 +26,7 @@
.\" (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/DEVICE_PROBE.9,v 1.4.2.6 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DEVICE_PROBE.9,v 1.13 2002/03/18 10:43:49 ru Exp %
.\"
.\" $FreeBSD$
.Dd June 16, 1998
@ -52,8 +52,9 @@
優先順位を返すことができます。
この場合、成功の値は 0 以下の値で、
最も大きな値が最も適切であることを意味します。
失敗の値は正の値で表現され、
通常の UNIX エラーコードが目的に応じて使用されるべきです。
失敗の値は正の値で表現され、通常の
.Ux
エラーコードが目的に応じて使用されるべきです。
.Pp
ドライバが 0 より小さい成功値を返す場合、
ドライバはそのデバイスにアタッチされるのが
@ -81,7 +82,11 @@
たとえば、-100 は -50 よりも低い優先順位を表します。
.Sh 関連項目
.Xr device 9 ,
.Xr DEVICE_ATTACH 9
.Xr DEVICE_ATTACH 9 ,
.Xr DEVICE_DETACH 9 ,
.Xr DEVICE_IDENTIFY 9 ,
.Xr DEVICE_PROBE 9 ,
.Xr DEVICE_SHUTDOWN 9
.Sh 作者
このマニュアルページは
.An Doug Rabson

View file

@ -26,7 +26,7 @@
.\" (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/DEVICE_SHUTDOWN.9,v 1.2.2.4 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DEVICE_SHUTDOWN.9,v 1.7 2001/10/01 16:09:23 ru Exp %
.\"
.\" $FreeBSD$
.Dd June 16, 1998
@ -48,7 +48,10 @@
成功時には 0 が返され、それ以外の場合にはエラーが返されます。
.Sh 関連項目
.Xr device 9 ,
.Xr DEVICE_ATTACH 9
.Xr DEVICE_ATTACH 9 ,
.Xr DEVICE_DETACH 9 ,
.Xr DEVICE_IDENTIFY 9 ,
.Xr DEVICE_PROBE 9
.Sh 作者
このマニュアルページは
.An Doug Rabson

View file

@ -26,7 +26,7 @@
.\" (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/DEV_MODULE.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DEV_MODULE.9,v 1.4 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd March 11, 2001
@ -36,6 +36,8 @@
.Nm DEV_MODULE
.Nd デバイスドライバモジュール宣言マクロ
.Sh 書式
.In sys/param.h
.In sys/kernel.h
.In sys/module.h
.In sys/conf.h
.Fn DEV_MODULE "name" "modeventhand_t evh" "void *arg"

View file

@ -26,7 +26,7 @@
.\" (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/DRIVER_MODULE.9,v 1.1.2.5 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/DRIVER_MODULE.9,v 1.10 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd May 16, 2000
@ -36,7 +36,8 @@
.Nm DRIVER_MODULE
.Nd カーネルドライバ宣言マクロ
.Sh 書式
.In sys/types.h
.In sys/param.h
.In sys/kernel.h
.In sys/bus.h
.In sys/module.h
.Fn DRIVER_MODULE name busname "driver_t driver" "devclass_t devclass" "modeventhand_t evh" "void *arg"

View file

@ -26,9 +26,9 @@
.\" (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/KASSERT.9,v 1.1.2.4 2001/07/21 09:16:54 schweikh Exp %
.\" %FreeBSD: src/share/man/man9/KASSERT.9,v 1.11 2002/01/10 09:20:07 ru Exp %
.\"
.\" $FreeBSD: doc/ja_JP.eucJP/man/man9/KASSERT.9,v 1.2 2001/05/14 01:10:21 horikawa Exp $
.\" $FreeBSD$
.Dd January 14, 2000
.Os
.Dt KASSERT 9
@ -36,24 +36,31 @@
.Nm KASSERT
.Nd カーネル数式検証マクロ
.Sh 書式
.Cd options INVARIANTS
.Fn KASSERT expression "const char *msg"
.Cd "options INVARIANTS"
.Pp
.In sys/param.h
.In sys/systm.h
.Fn KASSERT expression msg
.Sh 解説
"options INVARIANTS" オプション付きでコンパイルされたカーネル内では、
.Cd "options INVARIANTS"
オプション付きでコンパイルされたカーネル内では、
.Fn KASSERT
マクロは与えられた数式
.Ar expression
.Fa expression
をテストし、それが偽である場合には
.Fn panic
システムコールを呼び出し、稼働中のシステムを停止させます。
.Xr panic 9
関数を呼び出し、稼働中のシステムを停止させます。
.Pp
"options INVARIANTS" オプションの無いカーネル内では、
.Cd "options INVARIANTS"
オプションの無いカーネル内では、
.Fn KASSERT
マクロは何もしない様に定義されます。
.Sh 使用例
カーネル関数
.Fn vput
は、NULL ポインタを引数として呼び出されてはなりません。
は、
.Dv NULL
ポインタを引数として呼び出されてはなりません。
.Bd -literal -offset indent
void
vput(vp)
@ -64,6 +71,9 @@ vput(vp)
...
}
.Ed
.Sh
.Fa msg
は丸括弧で囲まれていなければなりません。
.Sh 関連項目
.Xr config 8 ,
.Xr panic 9

View file

@ -28,7 +28,7 @@
.\" (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/MD5.9,v 1.5.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/MD5.9,v 1.8 2001/10/01 16:09:23 ru Exp %
.\"
.\" $FreeBSD$
.Dd April 17, 1996

View file

@ -26,7 +26,7 @@
.\" (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/MODULE_DEPEND.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/MODULE_DEPEND.9,v 1.4 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd March 11, 2001
@ -36,6 +36,7 @@
.Nm MODULE_DEPEND
.Nd カーネルモジュール依存性の設定
.Sh 書式
.In sys/param.h
.In sys/module.h
.Fn MODULE_DEPEND "name" "moddepend" "int minversion" "int prefversion" "int maxversion"
.Sh 解説

View file

@ -26,7 +26,7 @@
.\" (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/MODULE_VERSION.9,v 1.2.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/MODULE_VERSION.9,v 1.5 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd March 11, 2001
@ -36,6 +36,7 @@
.Nm MODULE_VERSION
.Nd カーネルモジュールバージョンの設定
.Sh 書式
.In sys/param.h
.In sys/module.h
.Fn MODULE_VERSION "name" "int version"
.Sh 解説

View file

@ -26,7 +26,7 @@
.\" (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/SYSCALL_MODULE.9,v 1.2.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/SYSCALL_MODULE.9,v 1.4 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd April 27, 2001
@ -36,6 +36,8 @@
.Nm SYSCALL_MODULE
.Nd syscall カーネルモジュール宣言マクロ
.Sh 書式
.In sys/param.h
.In sys/kernel.h
.In sys/proc.h
.In sys/module.h
.In sys/sysent.h

View file

@ -26,7 +26,7 @@
.\" (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/VFS.9,v 1.4.2.3 2002/03/19 18:24:16 schweikh Exp %
.\" %FreeBSD: src/share/man/man9/VFS.9,v 1.8 2002/03/16 17:26:07 schweikh Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -48,7 +48,6 @@
.Fa vfs_std
関数を使用するべきです。
.Sh 関連項目
.Xr vnode 9 ,
.Xr VFS_CHECKEXP 9 ,
.Xr VFS_FHTOVP 9 ,
.Xr VFS_INIT 9 ,
@ -59,7 +58,8 @@
.Xr VFS_SYNC 9 ,
.Xr VFS_UNMOUNT 9 ,
.Xr VFS_VGET 9 ,
.Xr VFS_VPTOFH 9
.Xr VFS_VPTOFH 9 ,
.Xr vnode 9
.Sh 作者
このマニュアルページは
.An Doug Rabson

View file

@ -22,7 +22,7 @@
.\" (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/VFS_CHECKEXP.9,v 1.2.2.4 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_CHECKEXP.9,v 1.8 2002/05/16 05:21:57 trhodes Exp %
.\"
.\" $FreeBSD$
.Dd September 10, 1999
@ -30,12 +30,12 @@
.Dt VFS_CHECKEXP 9
.Sh 名称
.Nm VFS_CHECKEXP
.Nd vnode がクライアントにエクスポートされているかどうかをチェック
.Nd ファイルシステムがクライアントにエクスポートされているかどうかのチェック
.Sh 書式
.In sys/param.h
.In sys/mount.h
.Ft int
.Fn VFS_CHECKEXP "struct mount *mp" "struct mbuf *nam" "int *exflagsp" "struct ucred **credanonp"
.Fn VFS_CHECKEXP "struct mount *mp" "struct sockaddr *nam" "int *exflagsp" "struct ucred **credanonp"
.Sh 解説
これは、クライアントにマウントポイントがエクスポート
されているかどうかをチェックするために、NFS サーバが使用します。

View file

@ -26,7 +26,7 @@
.\" (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/VFS_FHTOVP.9,v 1.6.2.5 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_FHTOVP.9,v 1.12 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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/VFS_INIT.9,v 1.6.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_INIT.9,v 1.7 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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/VFS_MOUNT.9,v 1.7.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_MOUNT.9,v 1.9 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,7 +40,7 @@
.In sys/mount.h
.In sys/vnode.h
.Ft int
.Fn VFS_MOUNT "struct mount *mp" "char *path" "caddr_t data" "struct nameidata *ndp" "struct proc *p"
.Fn VFS_MOUNT "struct mount *mp" "char *path" "caddr_t data" "struct nameidata *ndp" "struct thread *td"
.Sh 解説
システムの名前空間にファイルシステムをマウントします。
.Pp
@ -58,8 +58,8 @@
マウントポイントのパス名での
.Xr namei 9
の呼び出しの結果。
.It Ar p
ファイルシステムをマウントしようとしているプロセス。
.It Ar td
ファイルシステムをマウントしようとしているスレッド
.El
.Pp
これは、新しいファイルシステムをマウントする目的と、

View file

@ -26,7 +26,7 @@
.\" (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/VFS_QUOTACTL.9,v 1.5.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_QUOTACTL.9,v 1.7 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,7 +40,7 @@
.In sys/mount.h
.In sys/vnode.h
.Ft int
.Fn VFS_QUOTACTL "struct mount *mp" "int cmds" "uid_t uid" "caddr_t arg" "struct proc *p"
.Fn VFS_QUOTACTL "struct mount *mp" "int cmds" "uid_t uid" "caddr_t arg" "struct thread *td"
.Sh 解説
ファイルシステムのクォータを実装します。
引数についての解説は

View file

@ -26,7 +26,7 @@
.\" (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/VFS_ROOT.9,v 1.5.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_ROOT.9,v 1.6 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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/VFS_START.9,v 1.5.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_START.9,v 1.7 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,7 +40,7 @@
.In sys/mount.h
.In sys/vnode.h
.Ft int
.Fn VFS_START "struct mount *mp" "int flags" "struct proc *p"
.Fn VFS_START "struct mount *mp" "int flags" "struct thread *td"
.Sh 解説
これは
.Xr VFS_MOUNT 9
@ -51,8 +51,8 @@
ファイルシステム。
.It Ar flags
??
.It Ar p
ファイルシステムを起動しているプロセス。
.It Ar td
ファイルシステムを起動しているスレッド
.El
.Sh 関連項目
.Xr VFS 9 ,

View file

@ -26,7 +26,7 @@
.\" (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/VFS_STATFS.9,v 1.5.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_STATFS.9,v 1.7 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,7 +40,7 @@
.In sys/mount.h
.In sys/vnode.h
.Ft int
.Fn VFS_STATFS "struct mount *mp" "struct statfs *sbp" "struct proc *p"
.Fn VFS_STATFS "struct mount *mp" "struct statfs *sbp" "struct thread *td"
.Sh 解説
この呼び出しは、ファイルシステムについての様々な情報を返します。
この情報には、推奨されている入出力サイズ、空き領域、空き inode 等があります。
@ -51,8 +51,8 @@
ファイルシステム。
.It Ar sbp
ファイルシステムの状態のための戻り値。
.It Ar p
ファイルシステムに問い合わせているプロセス。
.It Ar td
ファイルシステムに問い合わせているスレッド
.El
.Sh 関連項目
.Xr VFS 9 ,

View file

@ -26,7 +26,7 @@
.\" (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/VFS_SYNC.9,v 1.6.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_SYNC.9,v 1.9 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,7 +40,7 @@
.In sys/mount.h
.In sys/vnode.h
.Ft int
.Fn VFS_SYNC "struct mount *mp" "int waitfor" "struct ucred *cred" "struct proc *p"
.Fn VFS_SYNC "struct mount *mp" "int waitfor" "struct ucred *cred" "struct thread *td"
.Sh 解説
これはファイルシステムの全ての未書き込みのデータを書き出します。
.Pp
@ -50,10 +50,19 @@
ファイルシステム。
.It Ar waitfor
関数が入出力の完了まで待つべきかどうか。
指定可能な値は以下のとおりです。
.Bl -tag -width MNT_NOWAIT
.It Dv MNT_WAIT
入出力の完了を同期的に待ちます。
.It Dv MNT_NOWAIT
全ての入出力を開始しますが、それを待ちません。
.It Dv MNT_LAZY
ファイルシステムの syncer によって書込まれていないデータを出力します。
.El
.It Ar cred
呼び出し元の証明。
.It Ar p
呼び出しているプロセス。
.It Ar td
呼び出しているスレッド
.El
.Pp
これは、通常、ファイルシステム中の全ての vnode のために

View file

@ -26,7 +26,7 @@
.\" (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/VFS_UNMOUNT.9,v 1.5.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_UNMOUNT.9,v 1.7 2001/12/26 23:14:04 davidc Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,7 +40,7 @@
.In sys/mount.h
.In sys/vnode.h
.Ft int
.Fn VFS_UNMOUNT "struct mount *mp" "int mntflags" "struct proc *p"
.Fn VFS_UNMOUNT "struct mount *mp" "int mntflags" "struct thread *td"
.Sh 解説
ファイルシステムをアンマウントします。
.Pp
@ -50,8 +50,8 @@
ファイルシステム。
.It Ar mntflags
いろいろなフラグ。
.It Ar p
ファイルシステムをアンマウントしているプロセス。
.It Ar td
ファイルシステムをアンマウントしているスレッド
.El
.Pp
.Dv MNT_FORCE

View file

@ -26,7 +26,7 @@
.\" (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/VFS_VGET.9,v 1.5.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_VGET.9,v 1.9 2002/04/12 04:23:22 davidc Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,16 +40,18 @@
.In sys/mount.h
.In sys/vnode.h
.Ft int
.Fn VFS_VGET "struct mount *mp" "ino_t ino" "struct vnode **vpp"
.Fn VFS_VGET "struct mount *mp" "ino_t ino" "int flags" "struct vnode **vpp"
.Sh 解説
これは inode 番号を、ロックされた vnode へ変換します。
.Pp
引数は以下の通りです。
.Bl -tag -width ino
.Bl -tag -width ".Ar flags"
.It Ar mp
ファイルシステム。
.It Ar ino
そのファイルを表現する inode。
.It Ar flags
パススルーのための追加のロックフラグ。
.It Ar vpp
vnode の戻り値。
.El
@ -67,6 +69,7 @@ NFS
を返すべきです。
.Sh 関連項目
.Xr VFS 9 ,
.Xr vget 9 ,
.Xr vnode 9
.Sh 作者
このマニュアルページは

View file

@ -26,7 +26,7 @@
.\" (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/VFS_VPTOFH.9,v 1.6.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VFS_VPTOFH.9,v 1.7 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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_ACCESS.9,v 1.7.2.4 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_ACCESS.9,v 1.17 2002/09/18 22:12:42 truckman Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -39,7 +39,7 @@
.In sys/param.h
.In sys/vnode.h
.Ft int
.Fn VOP_ACCESS "struct vnode *vp" "int mode" "struct ucred *cred" "struct proc *p"
.Fn VOP_ACCESS "struct vnode *vp" "int mode" "struct ucred *cred" "struct thread *td"
.Sh 解説
このエントリポイントは、与えられた証明に対する、ファイルの
アクセス許可を調査します。
@ -52,8 +52,8 @@
要求されたアクセスのタイプ。
.It Ar cred
調査対象のユーザ証明。
.It Ar p
調査しているプロセス。
.It Ar td
調査しているスレッド
.El
.Pp
.Fa mode
@ -71,7 +71,7 @@ vnode
.Sh 疑似コード
.Bd -literal
int
vop_access(struct vnode *vp, int mode, struct ucred *cred, struct proc *p)
vop_access(struct vnode *vp, int mode, struct ucred *cred, struct thread *td)
{
int error;
@ -140,9 +140,12 @@ vop_access(struct vnode *vp, int mode, struct ucred *cred, struct proc *p)
.It Bq Er EPERM
不変ファイルを変更しようとしました。
.It Bq Er EACCES
許可されません。
パーミションビットのファイルモードまたは ACL が要求されたアクセスを
許可しませんでした。
.El
.Sh 関連項目
.Xr vaccess 9 ,
.Xr vaccess_acl_posix1e 9 ,
.Xr vnode 9
.Sh 作者
このマニュアルページは

View file

@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" %FreeBSD: src/share/man/man9/VOP_ACLCHECK.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_ACLCHECK.9,v 1.8 2002/09/18 22:12:42 truckman Exp %
.\"
.\" $FreeBSD$
.Dd December 23, 1999
@ -37,7 +37,7 @@
.In sys/vnode.h
.In sys/acl.h
.Ft int
.Fn VOP_ACLCHECK "struct vnode *vp" "acl_type_t type" "struct acl *aclp" "struct ucred *cred" "struct proc *p"
.Fn VOP_ACLCHECK "struct vnode *vp" "acl_type_t type" "struct acl *aclp" "struct ucred *cred" "struct thread *td"
.Sh 解説
この vnode 呼び出しは、特定のファイルまたはディレクトリに対する
特定のアクセス制御リスト (ACL) の妥当性を決定するために、使用可能です。
@ -52,8 +52,8 @@
ACL データの取り出し元の ACL 構造体を指しているポインタ。
.It Ar cred
要求の認証のために使用されるユーザ証明。
.It Ar p
ACL を調査しているプロセス。
.It Ar td
ACL を調査しているスレッド
.El
.Pp
.Fa cred
@ -83,11 +83,13 @@ vnode ACL
.It Bq Er EINVAL
渡された vnode の ACL 型が無効または ACL データが無効です。
.It Bq Er EACCES
許可されませんでした。
ファイルまたはディレクトリの ACL がアクセスを許可しませんでした。
.It Bq Er ENOMEM
要求を実行するためのメモリが十分ではありません。
要求を実行するための十分なメモリが利用可能ではありません。
.It Bq Er EOPNOTSUPP
ファイルシステムが VOP_ACLCHECK をサポートしていません。
ファイルシステムが
.Fn VOP_ACLCHECK
をサポートしていません。
.El
.Sh 関連項目
.Xr acl 9 ,

View file

@ -26,7 +26,7 @@
.\" (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_ADVLOCK.9,v 1.6.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_ADVLOCK.9,v 1.9 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd June 30, 1999

View file

@ -26,7 +26,7 @@
.\" (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_ATTRIB.9,v 1.9.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_ATTRIB.9,v 1.21 2002/09/18 22:12:42 truckman Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,9 +40,9 @@
.In sys/param.h
.In sys/vnode.h
.Ft int
.Fn VOP_GETATTR "struct vnode *vp" "struct vattr *vap" "struct ucred *cred" "struct proc *p"
.Fn VOP_GETATTR "struct vnode *vp" "struct vattr *vap" "struct ucred *cred" "struct thread *td"
.Ft int
.Fn VOP_SETATTR "struct vnode *vp" "struct vattr *vap" "struct ucred *cred" "struct proc *p"
.Fn VOP_SETATTR "struct vnode *vp" "struct vattr *vap" "struct ucred *cred" "struct thread *td"
.Sh 解説
これらのエントリポイントは、
ファイルまたはディレクトリの様々な属性を操作します。
@ -51,41 +51,48 @@
.Pp
引数は以下の通りです。
.Bl -tag -width cred
.It Ar vp
.It Fa vp
ファイルの vnode。
.It Ar vap
.It Fa vap
ファイルの属性。
.It Ar cred
.It Fa cred
呼び出したプロセスのユーザ証明。
.It Ar p
プロセス。
.It Fa td
レッド
.El
.Pp
.Xr VOP_SETATTR 9
によって更新されようとしていない属性は
.Dv VNOVAL
が設定されているべきです。
.Fn VATTR_NULL
は全ての値をクリアするために使用することができ、一般的には
.Fa *vap
の値の明示の前にその内容をリセットするために使用されるべきです。
.Sh ロック
.Xr VOP_GETATTR 9
は、入る時に vnode がロックされていて、戻り時まで vnode がロックされたままで
あることを期待します。
そのロックの型は共有または排他が可能です。
.Pp
.Xr VOP_SETATTR 9
は、入る時に vnode がロックされていて、戻り時まで vnode がロックされたままで
あることを期待します。
そのロックの型は排他でなければなりません。
.Sh 戻り値
.Xr VOP_GETATTR 9
.Fa *vap
にファイルの情報を返します。
を介して属性データを取り出すことができた場合には 0 を返し、
そうでない場合には適切なエラーが返されます。
.Xr VOP_SETATTR 9
は属性がうまく変更された場合には 0 を返し、
そうでない場合には適切なエラーコードが返されます。
そうでない場合には適切なエラーが返されます。
.Sh 疑似コード
.Bd -literal
int
vop_getattr(struct vnode *vp, struct vattr *vap,
struct ucred *cred, struct proc *p)
struct ucred *cred, struct thread *td)
{
/*
* *vap をファイルシステムからの情報で埋めます。
@ -97,7 +104,7 @@ vop_getattr(struct vnode *vp, struct vattr *vap,
int
vop_setattr(struct vnode *vp, struct vattr *vap,
struct ucred *cred, struct proc *p)
struct ucred *cred, struct thread *td)
{
/*
* 設定できない属性をチェックします。
@ -147,11 +154,13 @@ vop_setattr(struct vnode *vp, struct vattr *vap,
.It Bq Er EPERM
ファイルは変更不可能です。
.It Bq Er EACCES
許可されませんでした。
呼び出し側がそのファイルまたはディレクトリの属性を修正するパーミションを
持っていません。
.It Bq Er EROFS
ファイルシステムが読み込み専用です。
.El
.Sh 関連項目
.Xr VFS 9 ,
.Xr vnode 9 ,
.Xr VOP_ACCESS 9
.Sh 作者

View file

@ -26,7 +26,7 @@
.\" (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_BWRITE.9,v 1.5.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_BWRITE.9,v 1.8 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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_CREATE.9,v 1.9.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_CREATE.9,v 1.11 2002/09/18 22:12:42 truckman Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -172,7 +172,7 @@ bad:
.It Bq Er ENOSPC
ファイルシステムが一杯です。
.It Bq Er EDQUOT
クォータを超過しました。
そのユーザのファイルシステム空間または inode のクォータを超過しました。
.El
.Sh 関連項目
.Xr VOP_LOOKUP 9,

View file

@ -26,7 +26,7 @@
.\" (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.6.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_FSYNC.9,v 1.11 2002/03/28 12:57:48 dd Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -39,7 +39,7 @@
.In sys/param.h
.In sys/vnode.h
.Ft int
.Fn VOP_FSYNC "struct vnode *vp" "struct ucred *cred" "int waitfor" "struct proc *p"
.Fn VOP_FSYNC "struct vnode *vp" "struct ucred *cred" "int waitfor" "struct thread *td"
.Sh 解説
この呼び出しはファイルの全ての汚れたバッファを吐き出します。
.Xr sync 2
@ -55,8 +55,16 @@
呼び出し側の証明。
.It Ar waitfor
入出力の完了を関数が待つべきかどうか。
.It Ar p
呼び出しているプロセス。
.Bl -tag -width MNT_NOWAIT
.It Dv MNT_WAIT
入出力の完了を同期的に待ちます。
.It Dv MNT_NOWAIT
全ての入出力を開始しますが、それを待ちません。
.It Dv MNT_LAZY
ファイルシステムの syncer によって書込まれていないデータを出力します。
.El
.It Ar td
呼び出しているスレッド。
.El
.Pp
引数
@ -74,7 +82,7 @@
.Sh 疑似コード
.Bd -literal
int
vop_fsync(struct vnode *vp, struct ucred *cred, int waitfor, struct proc *p)
vop_fsync(struct vnode *vp, struct ucred *cred, int waitfor, struct thread *td)
{
struct buf *bp;
struct buf *nbp;

View file

@ -1,5 +1,5 @@
.\"-
.\" Copyright (c) 1999 Robert N. M. Watson
.\" Copyright (c) 1999, 2000, 2001 Robert N. M. Watson
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" %FreeBSD: src/share/man/man9/VOP_GETACL.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_GETACL.9,v 1.11 2002/09/18 22:12:42 truckman Exp %
.\"
.\" $FreeBSD$
.Dd December 23, 1999
@ -37,7 +37,7 @@
.In sys/vnode.h
.In sys/acl.h
.Ft int
.Fn VOP_GETACL "struct vnode *vp" "acl_type_t type" "struct acl *aclp" "struct ucred *cred" "struct proc *p"
.Fn VOP_GETACL "struct vnode *vp" "acl_type_t type" "struct acl *aclp" "struct ucred *cred" "struct thread *td"
.Sh 解説
この vnode 呼び出しは、
ファイルまたはディレクトリからアクセス制御リスト (ACL) を
@ -53,8 +53,8 @@
ACL データを受け取る ACL 構造体へのポインタ。
.It Fa cred
要求の認証で使用されるユーザ証明。
.It Fa p
ACL を要求しているプロセス。
.It Fa td
ACL を要求しているスレッド
.El
.Pp
.Fa cred
@ -71,8 +71,7 @@ vnode ACL
.Xr acl 9
を参照してください。
.Sh ロック
この vnode メソッドの呼び出しのためにロックは不要で、
入る時に保持していた全てのロックは戻る時まで保持されます。
この vnode は入る時にロックされ、戻るときまでロックされ続けるべきです。
.Sh 戻り値
.Fa aclp
ポインタが有効な ACL を指している場合には、0 が返されます。
@ -82,9 +81,9 @@ vnode ACL
.It Bq Er EINVAL
渡された ACL 型はこの vnode には無効です。
.It Bq Er EACCES
許可されませんでした
呼び出し側が適切な特権を持っていません
.It Bq Er ENOMEM
要求を処理するために利用可能なメモリが足りません。
その要求を処理するために十分なメモリが利用可能ではありません。
.It Bq Er EOPNOTSUPP
ファイルシステムは
.Fn VOP_GETACL

View file

@ -1,5 +1,5 @@
.\"-
.\" Copyright (c) 1999 Robert N. M. Watson
.\" Copyright (c) 1999, 2000, 2001 Robert N. M. Watson
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" %FreeBSD: src/share/man/man9/VOP_GETEXTATTR.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_GETEXTATTR.9,v 1.14 2002/09/18 22:12:42 truckman Exp %
.\"
.\" $FreeBSD$
.Dd December 23, 1999
@ -37,23 +37,47 @@
.In sys/vnode.h
.In sys/extattr.h
.Ft int
.Fn VOP_GETEXTATTR "struct vnode *vp" "char *name" "struct uio *uio" "struct ucred *cred" "struct proc *p"
.Fo VOP_GETEXTATTR
.Fa "struct vnode *vp"
.Fa "int attrnamespace"
.Fa "const char *name"
.Fa "struct uio *uio"
.Fa "size_t *size"
.Fa "struct ucred *cred"
.Fa "struct thread *td"
.Fc
.Sh 解説
この vnode 呼び出しは、ファイルまたはディレクトリから、
指定した名前付き拡張属性を取り出すために使用することができます。
.Pp
引数は以下の通りです。
.Bl -tag -width type
.Bl -tag -width ".Fa attrnamespace"
.It Fa vp
ファイルまたはディレクトリの vnode。
.It Fa attrnamespace
どの拡張属性の名前空間に、その属性の名前が存在するのかを示す整数定数。
.It Fa name
属性名が入った null で終端された文字列へのポインタ。
.It Fa uio
読み込むまたは書き込むべきデータの位置。
読み込むべきデータの位置。
.It Fa size
.Dv NULL
でない場合には、戻る時に全ての属性データを読込むために要求される
バイト数が含まれます。
殆んどの場合、
.Fa size
.Dv NULL
ではない時には
.Fa uio
.Dv NULL
にされます。
またはその逆です。
.It Fa cred
要求の認証で使用するためのユーザ証明。
.It Fa p
拡張属性を要求しているプロセス。
.It Fa td
拡張属性を要求しているスレッド
.El
.Pp
.Fa cred
@ -71,8 +95,7 @@
.Xr extattr 9
を参照してください。
.Sh LOCKS
この vnode メソッドを呼び出すためにはロックは不要であり、
入る時に保持していた全てのロックは戻り時まで保持されます。
この vnode は入る時にロックされ、戻る時までロックされ続けるべきです。
.Sh 戻り値
成功時には 0 が返され、読み込んだデータを反映して uio 構造体が更新されます。
そうでなければ適切なエラーコードが返されます。
@ -81,11 +104,11 @@
.It Bq Er ENOENT
この vnode のための属性名が定義されていません。
.It Bq Er EACCES
許可されませんでした
呼び出し側が適切な特権を持っていません
.It Bq Er ENXIO
指定された vnode および属性名に対する要求は、このファイルシステムでは無効です。
.It Bq Er ENOMEM
要求を実行するための十分なメモリがありません。
その要求を実行するための十分なメモリが利用可能ではありません。
.It Bq Er EFAULT
uio 構造体が無効なユーザ空間アドレスを参照しています。
.It Bq Er EINVAL

View file

@ -26,7 +26,7 @@
.\" (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_GETPAGES.9,v 1.4.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_GETPAGES.9,v 1.6 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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_INACTIVE.9,v 1.5.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_INACTIVE.9,v 1.9 2001/11/20 18:19:19 arr Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,9 +40,9 @@
.In sys/param.h
.In sys/vnode.h
.Ft int
.Fn VOP_INACTIVE "struct vnode *vp" "struct proc *p"
.Fn VOP_INACTIVE "struct vnode *vp" "struct thread *td"
.Ft int
.Fn VOP_RECLAIM "struct vnode *vp" "struct proc *p"
.Fn VOP_RECLAIM "struct vnode *vp" "struct thread *td"
.Sh 解説
引数は以下の通りです。
.Bl -tag -width 2n
@ -69,7 +69,7 @@ VOP_RECLAIM
.Sh 疑似コード
.Bd -literal
int
vop_inactive(struct vnode *vp)
vop_inactive(struct vnode *vp, struct thread *td)
{
if (link count of vp == 0) {
/*
@ -77,7 +77,7 @@ vop_inactive(struct vnode *vp)
*/
...;
}
VOP_UNLOCK(vp, 0, p);
VOP_UNLOCK(vp, 0, td);
return 0;
}

View file

@ -26,7 +26,7 @@
.\" (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_IOCTL.9,v 1.5.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_IOCTL.9,v 1.9 2002/09/26 14:10:21 phk Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -39,7 +39,7 @@
.In sys/param.h
.In sys/vnode.h
.Ft int
.Fn VOP_IOCTL "struct vnode *vp" "u_long command" "caddr_t data" "int fflag" "struct ucred *cred" "struct proc *p"
.Fn VOP_IOCTL "struct vnode *vp" "u_long command" "caddr_t data" "int fflag" "struct ucred *cred" "struct thread *td"
.Sh 解説
デバイス依存の方法でのファイルを操作します。
.Pp
@ -55,8 +55,8 @@
幾つかのフラグ ???
.It Ar cred
呼び出し側の証明。
.It Ar p
呼び出したプロセス。
.It Ar td
呼び出したスレッド
.El
.Pp
ほとんどのファイルシステムはこのエントリポイントを実装しません。
@ -64,13 +64,17 @@
入る時、ファイルはロックされているべきではありません。
.Sh 戻り値
成功時には 0 が返され、そうでない場合には適切なエラーが返されます。
.Pp
ioctl が認識されないまたはハンドルされない場合には、
ENOTTY が返されるべきです。
.Sh 疑似コード
.Bd -literal
int
vop_ioctl(struct vnode *vp, int command, caddr_t data, int fflag,
struct ucred *cred, struct proc *p)
struct ucred *cred, struct thread *td)
{
return EOPNOTSUPP;
return ENOTTY;
}
.Ed
.Sh 関連項目

View file

@ -26,7 +26,7 @@
.\" (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_LEASE.9,v 1.2.2.5 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_LEASE.9,v 1.8 2001/11/20 18:19:19 arr Exp %
.\"
.\" $FreeBSD$
.Dd September 24, 1999
@ -39,7 +39,7 @@
.In sys/param.h
.In sys/mount.h
.Ft int
.Fn VOP_LEASE "struct vnode *vp" "struct proc *p" "struct ucred *cred" "int type"
.Fn VOP_LEASE "struct vnode *vp" "struct thread *td" "struct ucred *cred" "int type"
.Sh 解説
このエントリポイントは、現在実装されていません。
この着想は、ユーザ証明と操作の型の特有の組のための vnode を確認するための

View file

@ -26,7 +26,7 @@
.\" (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_LINK.9,v 1.9.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_LINK.9,v 1.17 2002/09/19 13:34:50 truckman Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -54,18 +54,13 @@
ファイルについてのパス名情報。
.El
.Pp
パス名情報は、戻り時に解放されなければなりません。
パス名情報は戻り時に開放されるべきではありません。
なぜならば、それは呼び出し側によって行なわれるからです。
ディレクトリとファイルの vnode は戻り時に解放されるべきではありません。
.Sh ロック
ディレクトリ
.Fa dvp
は、入る時にロックされていて、戻り時もロックされ続けているべきです。
ファイル
.Fa vp
は、入る時にロックされておらず、戻り時もそのままであるべきです。
VOP コードが
.Fa vp
をロックする場合には、戻る前に必ずロックを解除しなければなりません。
.Xr VOP_LINK 9
はディレクトリおよびファイルの vnode は入る時にロックされ、戻る時まで
ロックされ続けていることを期待します。
.Sh 戻り値
ファイルが成功裏にリンクされた場合には 0 が返され、
そうでない場合にはエラーが返されます。
@ -76,32 +71,14 @@ vop_link(struct vnode *dvp, struct vnode *vp, struct componentname *cnp)
{
int error = 0;
if (vp->v_mount != dvp->v_mount) {
VOP_ABORTOP(dvp, cnp);
error = EXDEV;
goto out2;
}
if (vp != dvp && (error = VOP_LOCK(vp))) {
VOP_ABORTOP(dvp, cnp);
goto out2;
}
if (vp->v_mount != dvp->v_mount)
return (EXDEV);
/*
* 今、vp をロックしたので、out2 の代わりに out1 を使用
* しなければなりません。
*/
if (vp would have too many links)
return (EMLINK);
if (vp would have too many links) {
VOP_ABORTOP(dvp, cnp);
error = EMLINK;
goto out1;
}
if (vp is immutable) {
VOP_ABORTOP(dvp, cnp);
error = EPERM;
goto out1;
}
if (vp is immutable)
return (EPERM);
/*
* vp のリンクカウントをインクリメントし、ディスクに書き戻します。
@ -115,20 +92,22 @@ vop_link(struct vnode *dvp, struct vnode *vp, struct componentname *cnp)
...;
}
free(cnp->cn_pnbuf, M_NAMEI);
out1:
if (vp != dvp)
VOP_UNLOCK(vp);
out2:
return error;
}
.Ed
.Sh エラー
.Bl -tag -width Er
.It Bq Er EMLINK
ファイルのリンクの数が多すぎます。
.El
.Bl -tag -width Er
.It Bq Er EPERM
ファィルが変更不可能です。
.El
.Bl -tag -width Er
.It Bq Er EXDEV
異なるファイルシステム間ではハードリンクは利用できません。
.El
.Sh 関連項目
.Xr vnode 9 ,
.Xr vn_lock 9

View file

@ -26,7 +26,7 @@
.\" (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_LOCK.9,v 1.8.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_LOCK.9,v 1.12 2001/10/10 10:17:02 bde Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -43,13 +43,13 @@
.In sys/lock.h
.In sys/vnode.h
.Ft int
.Fn VOP_LOCK "struct vnode *vp" "int flags" "struct proc *p"
.Fn VOP_LOCK "struct vnode *vp" "int flags" "struct thread *td"
.Ft int
.Fn VOP_UNLOCK "struct vnode *vp" "int flags" "struct proc *p"
.Fn VOP_UNLOCK "struct vnode *vp" "int flags" "struct thread *td"
.Ft int
.Fn VOP_ISLOCKED "struct vnode *vp" "struct proc *p"
.Fn VOP_ISLOCKED "struct vnode *vp" "struct thread *td"
.Ft int
.Fn vn_lock "struct vnode *vp" "int flags" "struct proc *p"
.Fn vn_lock "struct vnode *vp" "int flags" "struct thread *td"
.Sh 解説
これらの呼び出しは、
ファイルシステムへのアクセスを直列化するために使用されます。
@ -92,8 +92,8 @@
.It Dv LK_RETRY Ta ロックされるまでリトライ
.It Dv LK_NOOBJ Ta オブジェクトを作成しない
.El
.It Ar p
ロックを使用するためのプロセスコンテキスト。
.It Ar td
ロックを使用するためのスレッドコンテキスト。
.El
.Pp
カーネルコードは vnode をロックするために

View file

@ -26,7 +26,7 @@
.\" (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_LOOKUP.9,v 1.8.2.5 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_LOOKUP.9,v 1.17 2002/09/18 09:34:00 truckman Exp %
.\"
.\" $FreeBSD$
.Dd November 24, 1997
@ -429,7 +429,6 @@ vnode
の操作は成功です。
.El
.Sh 関連項目
.Xr VOP_ABORTOP 9 ,
.Xr VOP_ACCESS 9 ,
.Xr VOP_CREATE 9 ,
.Xr VOP_MKDIR 9 ,

View file

@ -26,7 +26,7 @@
.\" (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_OPENCLOSE.9,v 1.6.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_OPENCLOSE.9,v 1.9 2001/11/20 18:19:19 arr Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -40,9 +40,9 @@
.In sys/param.h
.In sys/vnode.h
.Ft int
.Fn VOP_OPEN "struct vnode *vp" "int mode" "struct ucred *cred" "struct proc *p"
.Fn VOP_OPEN "struct vnode *vp" "int mode" "struct ucred *cred" "struct thread *td"
.Ft int
.Fn VOP_CLOSE "struct vnode *vp" "int mode" "struct ucred *cred" "struct proc *p"
.Fn VOP_CLOSE "struct vnode *vp" "int mode" "struct ucred *cred" "struct thread *td"
.Sh 解説
.Xr VOP_OPEN 9
エントリポイントは、
@ -57,8 +57,8 @@
ファイルの vnode。
.It Ar mode
呼び出しプロセスによって要求されたアクセスモード。
.It Ar p
ファイルにアクセスしているプロセス。
.It Ar td
ファイルにアクセスしているスレッド
.El
.Pp
アクセスモードは、
@ -85,7 +85,7 @@ vnode
.Sh 疑似コード
.Bd -literal
int
vop_open(struct vnode *vp, int mode, struct ucred *cred, struct proc *p)
vop_open(struct vnode *vp, int mode, struct ucred *cred, struct thread *td)
{
/*
* ほとんどのファイルシステムは、ここでは大したことはしません。

View file

@ -26,7 +26,7 @@
.\" (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_PATHCONF.9,v 1.6.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_PATHCONF.9,v 1.9 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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_PRINT.9,v 1.4.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_PRINT.9,v 1.7 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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_RDWR.9,v 1.9.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_RDWR.9,v 1.12 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -221,8 +221,14 @@ vop_write(struct vnode *vp, struct uio *uio, int ioflag, struct ucred *cred)
.Ed
.Sh エラー
.Bl -tag -width Er
.It Bq Er EFBIG
プロセスのファイルサイズリミットまたは最大ファイルサイズを超える
ファイルを書込もうとしました。
.It Bq Er ENOSPC
ファイルシステムが一杯です。
.It Bq Er EPERM
追加のみのフラグがファイルに設定されていますが、呼び出し側が現在の
ファイル終了位置より前に書込もうとしました。
.El
.Sh 関連項目
.Xr uiomove 9 ,

View file

@ -26,7 +26,7 @@
.\" (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_READDIR.9,v 1.6.2.1 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_READDIR.9,v 1.10 2002/10/11 14:58:26 mike Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -125,7 +125,7 @@ vop_readdir(struct vnode *vp, struct uio *uio, struct ucred *cred,
* 今 uio に読込んだ要素を解析します。
*/
dpStart = (struct dirent *)
(uio->uio_iov->iov_base - (uio->uio_offset - off));
((char *)uio->uio_iov->iov_base - (uio->uio_offset - off));
dpEnd = (struct dirent *) uio->uio_iov->iov_base;
/*

View file

@ -26,7 +26,7 @@
.\" (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_READLINK.9,v 1.7.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_READLINK.9,v 1.10 2002/09/18 09:34:00 truckman Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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_REALLOCBLKS.9,v 1.6.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_REALLOCBLKS.9,v 1.8 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996

View file

@ -26,7 +26,7 @@
.\" (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_REMOVE.9,v 1.7.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_REMOVE.9,v 1.11 2002/09/18 22:12:43 truckman Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -98,7 +98,7 @@ vop_remove(struct vnode *dvp, struct vnode *vp, struct componentname *cnp)
.It Bq Er EPERM
ファイルは変更不可能です。
.It Bq Er ENOTEMPTY
空ではないディレクトリを削除しようとしています
空ではないディレクトリを削除しようとしました
.El
.Sh 関連項目
.Xr vnode 9 ,

View file

@ -26,7 +26,7 @@
.\" (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_RENAME.9,v 1.10.2.2 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_RENAME.9,v 1.15 2002/09/18 22:12:43 truckman Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -87,14 +87,12 @@ vop_rename(struct vnode *fdvp, struct vnode *fvp, struct componentname *fcnp,
if (fvp->v_mount != tdvp->v_mount) {
error = EXDEV;
abortit:
VOP_ABORTOP(tdvp, tcnp);
if (tdvp == tvp)
vrele(tdvp);
else
vput(tdvp);
if (tvp)
vput(tvp);
VOP_ABORTOP(fdvp, fcnp);
vrele(fdvp);
vrele(fvp);
return error;
@ -117,7 +115,6 @@ vop_rename(struct vnode *fdvp, struct vnode *fvp, struct componentname *fcnp,
/*
* 変更先を解放します。
*/
VOP_ABORTOP(tdvp, tcnp);
vput(tdvp);
vput(tvp);
@ -302,9 +299,13 @@ out:
.It Bq Er EPERM
ファイルが変更可能ではありません。
.It Bq Er EXDEV
デバイスをまたがる移動です
異なるファイルシステム間の名前変更はできません
.It Bq Er EINVAL
不正なディレクトリの名前変更です。
.Ql .\&
または
.Ql ..\&
の名前変更、またはディレクトリツリーを破壊するような操作の実行を
行なおうとしました。
.It Bq Er ENOTDIR
ディレクトリからファイルにまたはその逆に名前変更しようとしました。
.It Bq Er ENOTEMPTY

View file

@ -1,5 +1,5 @@
.\"-
.\" Copyright (c) 1999 Robert N. M. Watson
.\" Copyright (c) 1999, 2000, 2001 Robert N. M. Watson
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" %FreeBSD: src/share/man/man9/VOP_SETACL.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_SETACL.9,v 1.9 2002/09/18 22:12:43 truckman Exp %
.\"
.\" $FreeBSD$
.Dd December 23, 1999
@ -37,7 +37,7 @@
.In sys/vnode.h
.In sys/acl.h
.Ft int
.Fn VOP_SETACL "struct vnode *vp" "acl_type_t type" "struct acl *aclp" "struct ucred *cred" "struct proc *p"
.Fn VOP_SETACL "struct vnode *vp" "acl_type_t type" "struct acl *aclp" "struct ucred *cred" "struct thread *td"
.Sh 解説
この vnode 呼び出しは、ファイルまたはディレクトリの
アクセス制御リスト (ACL) を設定するために使用可能です。
@ -52,8 +52,8 @@
ACL データの取り出し元の ACL 構造体へのポインタ。
.It Fa cred
要求の認証時に使用されるユーザ証明。
.It Fa p
ACL を設定しているプロセス。
.It Fa td
ACL を設定しているスレッド
.El
.Pp
.Fa aclp
@ -85,9 +85,9 @@ ACL
.It Bq Er EINVAL
渡された ACL 型はこの vnode には無効です。または、ACL データが無効です。
.It Bq Er EACCES
許可されませんでした
呼び出し側が適切な特権を持っていません
.It Bq Er ENOMEM
要求を実行するための十分なメモリがありません。
要求を実行するための十分なメモリが利用可能ではありません。
.It Bq Er EOPNOTSUPP
ファイルシステムが
.Fn VOP_SETACL

View file

@ -1,5 +1,5 @@
.\"-
.\" Copyright (c) 1999 Robert N. M. Watson
.\" Copyright (c) 1999, 2000, 2001 Robert N. M. Watson
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" %FreeBSD: src/share/man/man9/VOP_SETEXTATTR.9,v 1.1.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_SETEXTATTR.9,v 1.13 2002/09/18 22:12:43 truckman Exp %
.\"
.\" $FreeBSD$
.Dd December 23, 1999
@ -37,23 +37,25 @@
.In sys/vnode.h
.In sys/extattr.h
.Ft int
.Fn VOP_SETEXTATTR "struct vnode *vp" "char *name" "struct uio *uio" "struct ucred *cred" "struct proc *p"
.Fn VOP_SETEXTATTR "struct vnode *vp" "int attrnamespace" "char *name" "struct uio *uio" "struct ucred *cred" "struct thread *td"
.Sh 解説
この vnode 呼び出しは、ファイルまたはディレクトリに対し、
特定の名前付き拡張属性を設定するために使用可能です。
.Pp
引数は以下の通りです。
.Bl -tag -width type
.Bl -tag -width ".Fa attrnamespace"
.It Fa vp
ファイルまたはディレクトリの vnode。
.It Fa attrnamespace
どの拡張属性の名前空間に、その属性の名前が存在するのかを示す整数定数。
.It Fa name
属性の名前が入った、ヌル文字で終端された文字列へのポインタ。
.It Fa uio
読み込みまたは書き込みされるデータの位置。
.It Fa cred
要求の認証で使用するユーザ証明。
.It Fa p
拡張属性を設定しているプロセス。
.It Fa td
拡張属性を設定しているスレッド
.El
.Pp
uio 構造体は、
@ -91,7 +93,7 @@ vnode
.Sh エラー
.Bl -tag -width Er
.It Bq Er EACCES
許可されませんでした
呼び出し側が適切な特権を持っていません
.It Bq Er ENXIO
指定された vnode および属性名に対する要求は、このファイルシステムでは無効です。
.It Bq Er ENOMEM

View file

@ -26,7 +26,7 @@
.\" (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_STRATEGY.9,v 1.8.2.3 2001/12/17 11:30:18 ru Exp %
.\" %FreeBSD: src/share/man/man9/VOP_STRATEGY.9,v 1.13 2001/10/01 16:09:24 ru Exp %
.\"
.\" $FreeBSD$
.Dd July 24, 1996
@ -50,8 +50,10 @@
.El
.Pp
この呼び出しは、
.Fa bp->b_flags
.Fa bp->b_io.bio_cmd
の値に依存して、ファイルの読み込みまたは書き込みを行ないます。
.Pp
この呼び出しはブロックされることができます。
.Sh 戻り値
成功時には 0 が返され、そうでない場合にはエラーが返されます。
.Sh 関連項目