From owner-man-jp-reviewer@jp.freebsd.org  Tue Apr  3 00:48:07 2001
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id AAA51320;
	Tue, 3 Apr 2001 00:48:07 +0900 (JST)
	(envelope-from owner-man-jp-reviewer@jp.FreeBSD.org)
Received: from goro.asahi-net.or.jp (goro.asahi-net.or.jp [202.224.39.40])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id AAA51315
	for <man-jp-reviewer@jp.freebsd.org>; Tue, 3 Apr 2001 00:48:07 +0900 (JST)
	(envelope-from saharin@cool.email.ne.jp)
Received: from cool.email.ne.jp (c215230.ppp.asahi-net.or.jp [210.155.215.230])
	by goro.asahi-net.or.jp (8.8.8/3.7W) with ESMTP id AAA07346
	for <man-jp-reviewer@jp.freebsd.org>; Tue, 3 Apr 2001 00:48:06 +0900 (JST)
Message-ID: <3AC8A049.E9CF4B47@cool.email.ne.jp>
Date: Tue, 03 Apr 2001 00:52:41 +0900
From: saharu ikeuchi <saharin@cool.email.ne.jp>
X-Mailer: Mozilla 4.73 [ja] (Windows NT 5.0; U)
X-Accept-Language: ja
MIME-Version: 1.0
To: man-jp-reviewer@jp.freebsd.org
Content-Type: text/plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Reply-To: man-jp-reviewer@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+010328
X-Sequence: man-jp-reviewer 3508
Subject: [man-jp-reviewer 3508] Re: (man2 catchup4.3R)man2c2 kqueue.2
Errors-To: owner-man-jp-reviewer@jp.freebsd.org
Sender: owner-man-jp-reviewer@jp.freebsd.org
X-Originator: saharin@cool.email.ne.jp

$BCSFb$G$9!#(B
$B$46lO+MM$G$9!#(B> $BBg_7$5$s(B

kqueue.2 $B$NItJ,$N%U%)%m!<$G$9!#(B
$B%3%a%s%H$7$d$9$$$h$&$KDI2C(B/$BJQ99ItJ,$N$_H4$-=P$7$F!"(B
4 $B8D=j$KJ,$1$^$7$?!#(B

OHSAWA Chitoshi wrote:
> This may be overridden with a per-filter
> low water mark at the time the filter is added by set-
> ting the NOTE_LOWAT flag in fflags, and specifying the
> new low water mark in data.  On return,
> $B$3$l$O!"(B fflags $B$N(B NOTE_LOWAT $B%U%i%0$r@_(B
> $BDj$9$k$3$H$K$h$C$F%U%#%k%?$,DI2C$5$l$k$HF1;~$K3F%U%#%k(B
> $B%?$4$H$N:GDc4p=`CM$rL5;k$5$l!"(B data $B$NCf$N?7$7$$:GDc4p(B
> $B=`CM$r;XDj$5$l$k$G$7$g$&!#La$C$?;~(B

$B$3$3$G$N(B "may" $B$O2DG=$N0U$rI=$9$H;W$$$^$9!#$^$?!"(B"and" $B$O(B
"setting" $B$H(B "specifying" $B$r7k9g$7$F$$$k$H9M$($^$9!#$h$C$F!"(B
    fflags $B$K(B NOTE_LOWAT $B$r@_Dj$7!"(Bdata $B$K?7$7$$:GDc4p=`CM$r(B
    $B;XDj$9$k$3$H$K$h$j!"%U%#%k%?$,DI2C$5$l$k;~$K%U%#%k%?$4$H$N(B
    $B:GDc4p=`CM$,>e=q$-$5$l$k$3$H$,2DG=$G$9!#La$k;~$K$O!"(B
$B$H$$$C$?0UL#$K$J$k$N$G$O$J$$$G$7$g$&$+!#(B

OHSAWA Chitoshi wrote:
> For sockets, the low water mark and socket error handling
> is identical to the EVFILT_READ case.
> $B%=%1%C%H$N>l9g!":GDc4p=`CM$H%=%1%C%H%(%i!<%O%s%I%i$O(B EV-
> FULT_READ $B$N>l9g$HF1$8$G$9!#(B

"socket error handling" $B$O!V%=%1%C%H%(%i!<$N<h$j07$$!W$G$O(B
$B$J$$$G$7$g$&$+!#$7$?$,$C$F!"(B
    $B%=%1%C%H$N>l9g!":GDc4p=`CM$*$h$S%=%1%C%H%(%i!<$N(B
    $B<h$j07$$$O(B EVFILT_READ $B$N>l9g$HF1MM$G$9!#(B
$B$H$J$j$^$9!#(B

OHSAWA Chitoshi wrote:
> The sigevent portion of the AIO request is filled in, with
> sigev_notify_kqueue containing the descriptor of the
> kqueue that the event should be attached to, sigev_value
> containing the udata value, and sigev_notify set to
> SIGEV_EVENT.  When the aio_* function is called, the event
> will be registered with the specified kqueue, and the
> ident argument set to the struct aiocb returned by the
> aio_* function.  The filter returns under the same condi-
> tions as aio_error.
> $BHsF14|F~=PNO%j%/%(%9%H$N(B sigevent $BItJ,$,%$%Y%s%H$,4^$^$l$k(B
> $B$Y$-(B kqueue $B5-=R;R$r4^$s$G$$$k(B sigev_notify_kqueue $B$GK~$?(B
> $B$5$l$F$$$^$9!#(B udata $B$NCM$K4^$^$l$F$$$k(B sigev_value $B$H(B
> sigev_notify $B$O(B SIGEV_EVENT $B$r@_Dj$7$^$9!#(B aio_* $B4X?t$,8F(B
> $B$S=P$5$l$?$H$-!"%$%Y%s%H$O;XDj$5$l$?(B kqueue $B$KEPO?$5$l!"(B
> ident $B0z?t$O(B aio_* $B4X?t$K$h$C$FJV$5$l$k(B aiocb $B9=B$BN$,%;%C(B
> $B%H$5$l$^$9!#$3$N%U%#%k%?$O(B aio_error $B$HF1MM$N>r7o$GLa$j$^$9!#(B

$B$3$NItJ,$N:G=i$N0lJ8$G!"(B"is filled in, with $B!A(B" $B$O!"!V!A$,(B
$BF~$C$F$$$^$9!W$G$$$$$H;W$$$^$9!#$^$?!"(Bwith $B0J2<$O!"(B
"sigev_notify_kqueue", "sigev_value", "sigev_notify" $B$N(B 3 $B$D$,(B
$BJBNs$G$"$k$H9M$($i$l$^$9!#$h$C$F!"(B
    $BHsF14|F~=PNO%j%/%(%9%H$N(B sigevent $BItJ,$O!"%$%Y%s%H$,(B
    $BF~$l$i$l$k$Y$-(B kqueue $B$N5-=R;R$r4^$`(B sigev_notify_kqueue$B!"(B
    udata $B$NCM$r4^$`(B sigev_value $B$*$h$S(B SIGEV_EVENT $B$K@_Dj(B
    $B$5$l$?(B sigev_notify $B$,F~$C$F$$$^$9!#(B
$B$H$J$j$^$9!#(B2 $BJ8L\0J9_$NItJ,$OLdBj$"$j$^$;$s!#(B

OHSAWA Chitoshi wrote:
> Alternatively, a kevent structure may be initialized, with
> ident containing the descriptor of the the kqueue, and the
> address of the kevent structure placed in the
> aio_lio_opcode field of the AIO request.  However, this
> approach will not work on architectures with 64-bit point-
> ers, and should be considered depreciated.
> $B$"$k$$$O(B kevent $B9=B$BN$O(B kqueue $B5-=R;R$K4^$^$l$F$$$k(B ident
> $B$G=i4|2=$5$l!"(Bkevent $B9=B$BN$N%"%I%l%9$OHsF14|%j%/%(%9%H$N(B
> aio_lio_opcode $B%U%#!<%k%I$KCV$+$l$^$9!#$7$+$7$J$,$i!"$3$N(B
> $B%"%W%m!<%A$O(B 64 $B%S%C%H%]%$%s%?%"!<%-%F%/%A%c$G$O!"F/$+$J$$(B
> $BF0$+$J$$$G$7$g$&!#2ACM$,2<$,$k$3$H$r$h$/9MN8$9$Y$-$G$9!#(B

$B$3$3$G$b(B "ident" $B$H(B "address" $B$OJBNs$@$H;W$$$^$9!#$=$l$H(B
"placed in $B!A(B" $B$O(B "address" $B$K$+$+$k!V!A$KCV$+$l$?!W$H$$$&0U$N(B
$B7AMF6g$HJa$i$($i$l$^$9!#(B"considered depreciated" $B$O!V7Z;k$9$k!W(B
$B$H$$$C$?%K%e%"%s%9$G$7$g$&$+(B? $B$^$H$a$k$H!"(B
    $B$"$k$$$O!"(Bkevent $B9=B$BN$O!"(Bkqueue $B$N5-=R;R$r4^$`(B ident $B$*$h$S(B
    $BHsF14|F~=PNO%j%/%(%9%H$N(B aio_lio_opcode $B%U%#!<%k%I$KCV$+$l$?(B
    kevent $B9=B$BN$N%"%I%l%9$G=i4|2=$5$l$k$3$H$,2DG=$G$9!#(B
    $B$7$+$7$J$,$i!"$3$N%"%W%m!<%A$O(B 64 $B%S%C%H%]%$%s%?$N(B
    $B%"!<%-%F%/%A%c$G$OF0:n$7$J$$$G$7$g$&$7!"7Z;k$5$l$k$Y$-$G$9!#(B
$B$H$$$&46$8$G$I$&$G$7$g$&(B?

$B0J>e!";d$J$j$N2r<a$r=q$$$F$_$^$7$?!#(B
$B;29M$K$J$l$P9,$$$G$9!#(B
