Catch up with 20031005-JPSNAP

Submitted by:	Akira Ikeuchi <a_ikeuchi@mic.mitsumi.co.jp>
This commit is contained in:
Kazuo Horikawa 2003-11-03 02:37:55 +00:00
parent 47b817aa0c
commit c4b3509f38
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=18686
16 changed files with 181 additions and 55 deletions

View file

@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.13 2003/05/21 15:49:01 ru Exp % .\" %FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.14 2003/09/08 19:57:21 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd March 28, 2003 .Dd March 28, 2003
@ -54,7 +54,7 @@
割り込みハンドラを生成してアタッチします。 割り込みハンドラを生成してアタッチします。
.Fa flags .Fa flags
.Aq Pa sys/bus.h .In sys/bus.h
で見つかり、割り込みの大まかな種類を与えます。また、 で見つかり、割り込みの大まかな種類を与えます。また、
.Fa flags .Fa flags
はデバイスドライバの特性についての信頼できる情報を、割り込みハンドラに伝えます。 はデバイスドライバの特性についての信頼できる情報を、割り込みハンドラに伝えます。

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/DECLARE_MODULE.9,v 1.6 2002/06/10 04:37:11 davidc Exp % .\" %FreeBSD: src/share/man/man9/DECLARE_MODULE.9,v 1.7 2003/09/10 19:24:35 ru Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd March 3, 2001 .Dd March 3, 2001
@ -80,7 +80,7 @@
このための有効な値は このための有効な値は
.Vt sysinit_sub_id .Vt sysinit_sub_id
列挙に 列挙に
.Pa ( kernel.h .In ( sys/kernel.h
を参照) 含まれていて、システムスタートアップインタフェースの型を明示します。 を参照) 含まれていて、システムスタートアップインタフェースの型を明示します。
例えば 例えば
.Xr DRIVER_MODULE 9 .Xr DRIVER_MODULE 9
@ -99,8 +99,8 @@
有効な値は 有効な値は
.Vt sysinit_elem_order .Vt sysinit_elem_order
列挙 列挙
.Pa ( kernel.h .Pq In kernel.h
を参照) に定義されています。 に定義されています。
.Sh 関連項目 .Sh 関連項目
.Xr DEV_MODULE 9 , .Xr DEV_MODULE 9 ,
.Xr DRIVER_MODULE 9 , .Xr DRIVER_MODULE 9 ,

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/SYSCALL_MODULE.9,v 1.4 2001/12/26 23:14:04 davidc Exp % .\" %FreeBSD: src/share/man/man9/SYSCALL_MODULE.9,v 1.5 2003/09/08 19:57:21 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd April 27, 2001 .Dd April 27, 2001
@ -60,7 +60,7 @@
.Pp .Pp
.Fa new_sysent .Fa new_sysent
は syscall を実装する関数およびこの関数が必要とする引数の個数 は syscall を実装する関数およびこの関数が必要とする引数の個数
.Aq ( Pa sys/sysent.h .In ( sys/sysent.h
参照) を明示します。 参照) を明示します。
.Pp .Pp
.Fa evh .Fa evh

View file

@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/VOP_GETEXTATTR.9,v 1.19 2003/06/05 14:20:48 rwatson Exp % .\" %FreeBSD: src/share/man/man9/VOP_GETEXTATTR.9,v 1.20 2003/09/12 21:54:11 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd December 23, 1999 .Dd December 23, 1999

View file

@ -1,6 +1,7 @@
.\" -*- nroff -*- .\" -*- nroff -*-
.\" .\"
.\" Copyright (c) 1996 Doug Rabson .\" Copyright (c) 1996 Doug Rabson
.\" Copyright 2003, Garrett A. Wollman
.\" .\"
.\" All rights reserved. .\" All rights reserved.
.\" .\"
@ -26,10 +27,10 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/VOP_GETPAGES.9,v 1.7 2003/05/31 14:07:25 hmp Exp % .\" %FreeBSD: src/share/man/man9/VOP_GETPAGES.9,v 1.8 2003/09/28 03:15:21 wollman Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd September 27, 2003
.Os .Os
.Dt VOP_GETPAGES 9 .Dt VOP_GETPAGES 9
.Sh 名称 .Sh 名称
@ -45,30 +46,108 @@
.Ft int .Ft int
.Fn VOP_PUTPAGES "struct vnode *vp" "vm_page_t *m" "int count" "int sync" "int *rtvals" "vm_ooffset_t offset" .Fn VOP_PUTPAGES "struct vnode *vp" "vm_page_t *m" "int count" "int sync" "int *rtvals" "vm_ooffset_t offset"
.Sh 解説 .Sh 解説
.Fn VOP_GETPAGES
メソッドは、通常のファイルが背後にある仮想メモリのページの読み込み
のために、呼び出されます。
他の隣接したページの背後に同じファイルの隣接した領域がある場合には、
.Fn VOP_GETPAGES
は同様にそれらのページを読み込ませるために要求されますが、そうすることが
必須なわけではありません。
.Fn VOP_PUTPAGES
メソッドは反対のことを行います。
すなわち、仮想メモリの隣接したダーティなページを書き出させます。
.Pp
入る時に、vnode のロックは保持されますが、ページキューと VM オブジェクトの
ロックはどちらも保持されません。
両方のメソッドは、成功して戻る時とエラーで戻る時と両方とも、
そのままの状態で戻ります。
.Pp
引数は以下の通りです。 引数は以下の通りです。
.Bl -tag -width reqpage .Bl -tag -width reqpage
.It Fa vp .It Fa vp
アクセスするファイル。 アクセスするファイル。
.It Fa m .It Fa m
ページ ???。 読み込まれるまたは書き込まれるべきファイルの連続した領域を表現する
連続したページの配列の最初の要素へのポインタです。
.It Fa count .It Fa count
アクセスするページ数。 その配列の中のページ数です
.It Fa sync .It Fa sync
書き込みが同期するべきである場合には 0 でない値。 書き込みが同期されるべき場合には
.Dv VM_PAGER_PUT_SYNC
です。
.It Fa rtvals .It Fa rtvals
???。 .Fn VOP_PUTPAGES
によって書き込まれたそれぞれのページの状態を示している VM システムの
結果コードの配列です。
.It Fa reqpage .It Fa reqpage
???。 ページ配列の中の要求されたページのインデクスです。
すなわち、このメソッドの実装が取り扱わなければならない、1 ページです。
.It Fa offset .It Fa offset
アクセスを開始するファイルの中のオフセット。 ファイルの中のそのマップされたページが始まる場所へのオフセットです。
.El
.Pp
.Fn VOP_PUTPAGES
メソッドの状態は、配列
.Fa rtvals[]
の中に、個々のページごとに返されます。
起こり得る状態値は以下の通りです。
.Bl -tag -width VM_PAGER_ERROR
.It Dv VM_PAGER_OK
そのページは成功して書き込まれました。
実装はそのページがクリーンであることを記録するために
.Xr vm_pager_undirty 9
を呼び出さなければなりません。
.It Dv VM_PAGER_PEND
そのページは非同期に書き込まれるようにスケジュールされました。
書き込みが完了した時には、完了コールバックはビジーフラグをクリアし、
このページをウェイトしている他のスレッドを起こすために、
.Xr vm_object_pip_wakeup 9
および
.Xr vm_page_io_finish 9
を呼び出すべきです。
さらに
.Xr vm_page_undirty 9
を呼び出します。
.It Dv VM_PAGER_BAD
このページは完全に背後にあるファイルの終端を越えていました。
その vnode のファイルシステムが正しく実装されている場合には、
この状態は起こり得るべきではありません。
.It Dv VM_PAGER_ERROR
下位の保存メディアまたはプロトコルのエラーのため、
このページは書き込まれることが出来ませんでした。
.It Dv VM_PAGER_FAIL
.Dv VM_PAGER_ERROR
と同様に取り扱われました。
.Dv VM_PAGER_ERROR
.It Dv VM_PAGER_AGAIN
そのページはこの要求によって取り扱われませんでした。
.El .El
.Pp .Pp
この引数については完全に確かではありません。
.Sh 戻り値 .Sh 戻り値
成功時には 0 が返され、そうでない場合にはエラーが返されます。 成功して
.Fa m[reqpage]
を読み込んだ場合には
.Fn VOP_GETPAGES
.Dv VM_PAGER_OK
を返し、そうでない場合には
.Dv VM_PAGER_ERROR
を返します。
慣習で、
.Fn VOP_PUTPAGES
の戻り値は
.Fa rtvals[0]
です。
.Sh 関連項目 .Sh 関連項目
.Xr vm_object_pip_wakeup 9 ,
.Xr vm_page_free 9 ,
.Xr vm_page_io_finish 9 ,
.Xr vm_page_undirty 9 ,
.Xr vm_page_wakeup 9 ,
.Xr vnode 9 .Xr vnode 9
.Sh 作者 .Sh 作者
このマニュアルページは このマニュアルページは
.An Doug Rabson .An Doug Rabson
が書きました。 が書き、その後実質上
.An Garrett Wollman
が書き直しました。

View file

@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/VOP_SETEXTATTR.9,v 1.17 2003/06/08 13:27:57 charnier Exp % .\" %FreeBSD: src/share/man/man9/VOP_SETEXTATTR.9,v 1.18 2003/09/12 21:54:11 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd December 23, 1999 .Dd December 23, 1999

View file

@ -25,10 +25,10 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/cd.9,v 1.17 2002/04/15 06:02:58 trhodes Exp % .\" %FreeBSD: src/share/man/man9/cd.9,v 1.18 2003/09/03 04:46:28 ken Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd October 10, 1998 .Dd September 2, 2003
.Dt CD 9 .Dt CD 9
.Os .Os
.Sh 名称 .Sh 名称
@ -79,6 +79,26 @@ type 4)
このフラグを設定する唯一の効果は、チェンジャのスケジューリングコードを通して、 このフラグを設定する唯一の効果は、チェンジャのスケジューリングコードを通して、
チェンジャの LUN 0 に対して初期の容量読み取りコマンドを実行することを、 チェンジャの LUN 0 に対して初期の容量読み取りコマンドを実行することを、
ドライバに通知することです。 ドライバに通知することです。
.It Dv CD_Q_10_BYTE_ONLY
このフラグは、与えられたデバイスが 10 バイトの MODE SENSE/MODE SELECT コマンド
のみを受け付けることを、ドライバに通知します。
一般的にこういった癖は
.Xr cd 4
ドライバに追加されるべきではありません。
その理由は、ドライバは問題のドライブが 10 バイトコマンドを必要としているか
どうかを幾つかの方法で決定しようとするためです。
最初にドライバは、ドライブが一般的に話すプロトコルが 10 バイトコマンドを
認めるかどうかを決定するために CAM Path Inquiry (CAM パス照会) コマンドを
発行します。
(ATAPI および USB は一般的に 10 バイトコマンドのみを送りたい
プロトコルの 2 つの顕著な例です。)
それから、6 バイトの MODE SENSE または MODE REQUEST コマンド
から ILLEGAL REQUEST エラーが返された場合には、代わりに
そのコマンドの 10 バイトバージョンを送ろうとします。
癖が必要になるだろう唯一の理由は、ドライブが一般的に 6 バイトコマンドに問題を
持っていないプロトコル (例えば
.Tn SCSI )
の場合です。
.El .El
.Sh 関連ファイル .Sh 関連ファイル
.Bl -tag -width /sys/cam/scsi/scsi_cd.c -compact .Bl -tag -width /sys/cam/scsi/scsi_cd.c -compact

View file

@ -25,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/devstat.9,v 1.18 2002/01/09 11:43:47 mpp Exp % .\" %FreeBSD: src/share/man/man9/devstat.9,v 1.19 2003/09/10 19:24:35 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd May 22, 1998 .Dd May 22, 1998
@ -381,7 +381,7 @@ CCB
に渡すタグの型を判定します。 に渡すタグの型を判定します。
.\" AND じゃないの? .\" AND じゃないの?
.Pp .Pp
.Aq sys/devicestat.h .In sys/devicestat.h
.Dv DEVSTAT_VERSION .Dv DEVSTAT_VERSION
マクロが定義されています。 マクロが定義されています。

View file

@ -24,7 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE. .\" DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/lock.9,v 1.10 2002/04/12 05:16:27 davidc Exp % .\" %FreeBSD: src/share/man/man9/lock.9,v 1.11 2003/09/08 19:57:21 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 9, 2001 .Dd July 9, 2001
@ -152,7 +152,7 @@
.It Dv LK_DRAIN .It Dv LK_DRAIN
ロック上の全ての行動の終了を待ち、それから役割を終えた印を付けます。 ロック上の全ての行動の終了を待ち、それから役割を終えた印を付けます。
今にも解放されようとしているメモリの一部分のロックを解放する前に使用されます。 今にも解放されようとしているメモリの一部分のロックを解放する前に使用されます。
.Aq ( Pa sys/lockmgr.h .In ( sys/lockmgr.h
に解説されています。) に解説されています。)
.It Dv LK_SLEEPFAIL .It Dv LK_SLEEPFAIL
操作がスリープした場合には、失敗します。 操作がスリープした場合には、失敗します。

View file

@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/make_dev.9,v 1.13 2003/05/31 14:20:30 hmp Exp % .\" %FreeBSD: src/share/man/man9/make_dev.9,v 1.14 2003/09/08 19:57:21 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd May 27, 2001 .Dd May 27, 2001
@ -62,7 +62,7 @@ DEVFS
で指定される名前を持ちます。 で指定される名前を持ちます。
.Va perms .Va perms
に指定するファイルのパーミッションは に指定するファイルのパーミッションは
.Aq Pa sys/stat.h .In sys/stat.h
で定義されています。 で定義されています。
.Pp .Pp
.Bd -literal -offset indent -compact .Bd -literal -offset indent -compact

View file

@ -33,7 +33,7 @@
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" $NetBSD: malloc.9,v 1.3 1996/11/11 00:05:11 lukem Exp $ .\" $NetBSD: malloc.9,v 1.3 1996/11/11 00:05:11 lukem Exp $
.\" %FreeBSD: src/share/man/man9/malloc.9,v 1.35 2003/06/12 09:03:15 harti Exp % .\" %FreeBSD: src/share/man/man9/malloc.9,v 1.36 2003/09/08 19:57:21 ru Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd June 12, 2003 .Dd June 12, 2003
@ -223,10 +223,10 @@ MALLOC(buf, struct foo_buf *, sizeof *buf, M_FOOBUF, M_NOWAIT);
.Pp .Pp
.Fn MALLOC_DEFINE .Fn MALLOC_DEFINE
を使用するためには、 を使用するためには、
.Aq Pa sys/param.h .In sys/param.h
.Aq ( Pa sys/types.h .In ( sys/types.h
の代わりに) および の代わりに) および
.Aq Pa sys/kernel.h .In sys/kernel.h
をインクルードしなければなりません。 をインクルードしなければなりません。
.Sh 戻り値 .Sh 戻り値
.Fn malloc , .Fn malloc ,

View file

@ -34,7 +34,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/physio.9,v 1.13 2002/03/18 10:59:58 ru Exp % .\" %FreeBSD: src/share/man/man9/physio.9,v 1.14 2003/09/12 19:20:05 hmp Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd June 15, 1996 .Dd June 15, 1996
@ -121,5 +121,5 @@
に適応させるために少しの変更があります。 に適応させるために少しの変更があります。
.Pp .Pp
.Nm .Nm
の呼び出しは、より高い入出力のパフォーマンスと の呼び出しは、より高い入出力およびページングのパフォーマンスのために
より良いページングのパフォーマンスのため、完全に書き直されています。 完全に書き直されています。

View file

@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/sbuf.9,v 1.19 2002/10/04 09:58:17 phk Exp % .\" %FreeBSD: src/share/man/man9/sbuf.9,v 1.20 2003/09/08 19:57:21 ru Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd January 3, 2002 .Dd January 3, 2002
@ -96,7 +96,7 @@
ファミリの関数は、カーネル空間内の境界のあるヌル終端文字列の、 ファミリの関数は、カーネル空間内の境界のあるヌル終端文字列の、
安全な割り当て、構築、および解放を可能にします。 安全な割り当て、構築、および解放を可能にします。
これらの関数は、文字の配列の代わりに、 これらの関数は、文字の配列の代わりに、
.Aq Pa sys/sbuf.h .In sys/sbuf.h
で定義される で定義される
.Fa sbuf .Fa sbuf
と呼ばれる構造体を操作します。 と呼ばれる構造体を操作します。

View file

@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/style.9,v 1.101 2003/04/26 15:37:39 trhodes Exp % .\" %FreeBSD: src/share/man/man9/style.9,v 1.103 2003/09/27 22:17:37 imp Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd December 7, 2001 .Dd December 7, 2001
@ -94,7 +94,7 @@ static char sccsid[] = "@(#)style 1.14 (Berkeley) 4/28/95";
#endif #endif
#include <sys/cdefs.h> #include <sys/cdefs.h>
__FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.101 2003/04/26 15:37:39 trhodes Exp $"); __FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.103 2003/09/27 22:17:37 imp Exp $");
.Ed .Ed
.Pp .Pp
ヘッダファイルの前に、空行を 1 行付けます。 ヘッダファイルの前に、空行を 1 行付けます。
@ -103,14 +103,14 @@ __FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.101 2003/04/26 15:37:39 trh
.Pa sys/*.h .Pa sys/*.h
) が初めに来ます。 ) が初めに来ます。
通常、 通常、
.Aq Pa sys/types.h .In sys/types.h
または または
.Aq Pa sys/param.h .In sys/param.h
のどちらかが必要ですが、 のどちらかが必要ですが、
両方は必要ないでしょう。 両方は必要ないでしょう。
.Aq Pa sys/types.h .In sys/types.h
.Aq Pa sys/cdefs.h .In sys/cdefs.h
をインクルードしており、 をインクルードしており、
依存関係は問題ありません。 依存関係は問題ありません。
.Bd -literal .Bd -literal
@ -132,16 +132,16 @@ __FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.101 2003/04/26 15:37:39 trh
中のファイルを使用しないでください。 中のファイルを使用しないでください。
.Pp .Pp
それから空行を置き、 それから空行を置き、
.Pa /usr .Pa /usr/include
インクルードファイルを続けます。 ファイルを続けます。
.Pa /usr .Pa /usr/include
インクルードファイルはアルファベット順にソートされているべきです。 ファイルはアルファベット順にソートされているべきです。
.Bd -literal .Bd -literal
#include <stdio.h> #include <stdio.h>
.Ed .Ed
.Pp .Pp
グローバルなパス名は グローバルなパス名は
.Pa /usr/include/paths.h .In /usr/include/paths.h
で定義されています。 で定義されています。
プログラムにローカルなパス名はローカルディレクトリの プログラムにローカルなパス名はローカルディレクトリの
.Qq Pa pathnames.h .Qq Pa pathnames.h
@ -257,6 +257,20 @@ __FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.101 2003/04/26 15:37:39 trh
#endif /* !COMPAT_43*/ #endif /* !COMPAT_43*/
.Ed .Ed
.Pp .Pp
このプロジェクトは、
.Ic u_intXX_t
形式の古い BSD スタイルの整数識別子よりもむしろ、
.Ic uintXX_t
形式の
.St -isoC-99
の符号なし整数識別子を使用するように、徐々に移行しています。
新しいコードは後者を使用するべきで、さらにその領域の他の主要な作業が完了し、
古い BSD スタイルを好むための優先する理由がない場合には、古いコードは
新しい形式に変換されるべきです。
空白文字のコミットと同様に、
.Ic uintXX_t
のみのコミットをするよう、考慮すべきです。
.Pp
列挙値は全て大文字を使用します。 列挙値は全て大文字を使用します。
.Bd -literal .Bd -literal
enum enumtype { ONE, TWO } et; enum enumtype { ONE, TWO } et;

View file

@ -25,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/sysctl_add_oid.9,v 1.17 2003/01/04 17:01:50 schweikh Exp % .\" %FreeBSD: src/share/man/man9/sysctl_add_oid.9,v W1.18 2003/09/10 19:24:35 ru Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd July 15, 2000 .Dd July 15, 2000
@ -181,7 +181,7 @@
これらの関数およびマクロは sysctl oid のランタイム (例えばモジュールの これらの関数およびマクロは sysctl oid のランタイム (例えばモジュールの
存在期間) での作成と削除のためのインタフェースを提供します。 存在期間) での作成と削除のためのインタフェースを提供します。
リンカセット (詳細は リンカセット (詳細は
.Aq sys/linker_set.h .In sys/linker_set.h
および および
.\" XXX マニュアルページはソースファイルの参照を避けるべきです。 .\" XXX マニュアルページはソースファイルの参照を避けるべきです。
.Pa src/sys/kern/kern_sysctl.c .Pa src/sys/kern/kern_sysctl.c
@ -265,7 +265,7 @@ oid
新しく作成された oid は名前のコピーを含んでいます。 新しく作成された oid は名前のコピーを含んでいます。
.It Fa kind .It Fa kind
oid の種類で、 oid の種類で、
.Aq sys/sysctl.h .In sys/sysctl.h
ヘッダファイルの中で定義される型とアクセス値のビットマスクとして明示されます。 ヘッダファイルの中で定義される型とアクセス値のビットマスクとして明示されます。
動的に作成された oid は常に 動的に作成された oid は常に
.Dv CTLFLAG_DYN .Dv CTLFLAG_DYN

View file

@ -34,7 +34,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/timeout.9,v 1.18 2001/10/01 16:09:25 ru Exp % .\" %FreeBSD: src/share/man/man9/timeout.9,v 1.20 2003/10/01 21:32:42 imp Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd September 10, 1996 .Dd September 10, 1996
@ -99,6 +99,8 @@ struct callout_handle handle = CALLOUT_HANDLE_INITIALIZER(&handle)
関数との接続に使用されることが可能な 関数との接続に使用されることが可能な
.Ft struct callout_handle .Ft struct callout_handle
です。 です。
.Fn timeout
の呼び出しは古いスタイルで、新しいコードは callout_* 関数を使用するべきです。
.Pp .Pp
関数 関数
.Fn callout_handle_init .Fn callout_handle_init
@ -137,6 +139,8 @@ struct callout_handle handle = CALLOUT_HANDLE_INITIALIZER(&handle)
の値の割当てによって初期化されなければなりません。 の値の割当てによって初期化されなければなりません。
以前に初期化されたハンドルを伴なわない untimeout の呼び出しの振る舞いは 以前に初期化されたハンドルを伴なわない untimeout の呼び出しの振る舞いは
未定義です。 未定義です。
.Fn untimeout
の呼び出しは古いスタイルで、新しいコードは callout_* 関数を使用するべきです。
.Pp .Pp
ハンドルがシステムによって再利用されるので、 ハンドルがシステムによって再利用されるので、
両方の呼び出しが同じ関数のポインタおよび引数を使用し、2 番目の呼び出しの前に 両方の呼び出しが同じ関数のポインタおよび引数を使用し、2 番目の呼び出しの前に
@ -202,8 +206,17 @@ timeout (
.Ft struct callout_handle .Ft struct callout_handle
を返します。 を返します。
.Fn callout_stop .Fn callout_stop
関数はコールアウトが未だ保留の場合には 0 以外を、そうでない場合には 0 を 関数は呼び出された時にコールアウトが未だ保留の場合には 0 以外を、
返します。 そうでない場合には 0 を返します。
.Sh バグ
コールアウトを取り消すか、もし取り消しが遅過ぎた場合には
コールアウトが本当に完了されていることを保証することは、
この API にはできません。
.Fn callout_stop
は 0 を返した時に、コールアウトが開始されていている場合のみを保証します。
コールアウトが完了していることは保証しません。
ドライバのデタッチルーチンから戻る前に実行されるスレッドがないことを
保証したい時に、レース状態を発生させることがあります。
.Sh 歴史 .Sh 歴史
現在の timeout および untimeout ルーチンは 現在の timeout および untimeout ルーチンは
.An Adam M. Costello .An Adam M. Costello