From nobody@FreeBSD.ORG Sun Jul 18 12:21:56 1999
Return-Path: <nobody@FreeBSD.ORG>
Received: by hub.freebsd.org (Postfix, from userid 32767)
	id 22B3714E50; Sun, 18 Jul 1999 12:21:56 -0700 (PDT)
Message-Id: <19990718192156.22B3714E50@hub.freebsd.org>
Date: Sun, 18 Jul 1999 12:21:56 -0700 (PDT)
From: peter@holm.cc
Sender: nobody@FreeBSD.ORG
To: freebsd-gnats-submit@freebsd.org
Subject: Out of swap handling [PATCH]
X-Send-Pr-Version: www-1.0

>Number:         12697
>Category:       kern
>Synopsis:       Out of swap handling [PATCH]
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jul 18 12:30:00 PDT 1999
>Closed-Date:    Sun Jul 22 08:05:46 PDT 2001
>Last-Modified:  Sun Jul 22 08:06:22 PDT 2001
>Originator:     Peter Holm
>Release:        Current
>Organization:
>Environment:
FreeBSD current.risby.dk 4.0-CURRENT FreeBSD 4.0-CURRENT #15: Sat Jul 17 11:55:26 CEST 1999     pho@current.risby.dk:/usr/src/current/src/sys/compile/PHO  i386
>Description:
I have tested out of swap handling in current. The situation is that
the system just lockes up, "looping" in vm_pageout_scan.

I have experimented with some modifications to vm_pageout.c that seems
to improve the chances for a recovery drastically.
All tests were done on my 128Mb RAM / 256 Mb swap box.

The changes consists of:
*       Killing all running user processes when less than 1024 pages
swap left.
*       Sleeping after each kill to allow the user process to run.
*       Pausing the  vmdaemon when in kill mode.

I have tried different strategies for when to stop killing but only this
one seems to guaranty recovery.


>How-To-Repeat:

>Fix:
begin 644 patch
M*BHJ('-Y<R]V;2]V;5]P86=E;W5T+F-^"5-U;B!*=6P@(#0@,3,Z-3,Z-#D@
M,3DY.0HM+2T@<WES+W9M+W9M7W!A9V5O=70N8PE3870@2G5L(#$W(#$S.C4Q
M.C,Y(#$Y.3D**BHJ*BHJ*BHJ*BHJ*BHJ"BHJ*B`Q-30L,34Y("HJ*BH*+2TM
M(#$U-"PQ-C(@+2TM+0H@('-T871I8R!I;G0@=FU?<W=A<%]I9&QE7V5N86)L
M960],#L*("`C96YD:68*("`**R!S=&%T:6,@:6YT(&MI;&Q?;6]D92`](#`[
M"BL@<W1A=&EC('!I9%]T(&QA<W1?:VEL;&5D7W!I9"`](#`["BL@"B`@4UE3
M0U1,7TE.5"A?=FTL(%9-7U!!1T5/551?04Q'3U))5$A-+"!P86=E;W5T7V%L
M9V]R:71H;2P*("`)0U1,1DQ!1U]25RP@)G9M7W!A9V5O=71?86QG;W)I=&AM
M7VQR=2P@,"P@(DQ252!P86=E(&UG;70B*3L*("`**BHJ*BHJ*BHJ*BHJ*BHJ
M"BHJ*B`R,#0L,C`Y("HJ*BH*+2TM(#(P-RPR,3,@+2TM+0H@("-E;F1I9@H@
M('-T871I8R!V;VED('9M7W!A9V5O=71?<&%G95]S=&%T<RAV;VED*3L*("`*
M*R`*("`O*@H@("`J('9M7W!A9V5O=71?8VQE86XZ"B`@("H**BHJ*BHJ*BHJ
M*BHJ*BHJ"BHJ*B`Q,3(V+#$Q-S4@*BHJ*@H@(`E]"B`@"B`@"2\J"B$@"2`J
M(&UA:V4@<W5R92!T:&%T('=E(&AA=F4@<W=A<"!S<&%C92`M+2!I9B!W92!A
M<F4@;&]W(&]N(&UE;6]R>2!A;F0*("`)("H@<W=A<"`M+2!T:&5N(&MI;&P@
M=&AE(&)I9V=E<W0@<')O8V5S<RX*("`)("HO"B$@"6EF("@H=FU?<W=A<%]S
M:7IE(#T](#`@?'P@<W=A<%]P86=E<E]F=6QL*2`F)@HA(`D@("`@*"AC;G0N
M=E]F<F5E7V-O=6YT("L@8VYT+G9?8V%C:&5?8V]U;G0I(#P@8VYT+G9?9G)E
M95]M:6XI*2!["B$@"0EB:6=P<F]C(#T@3E5,3#L*(2`)"6)I9W-I>F4@/2`P
M.PHA(`D)9F]R("AP(#T@86QL<')O8RYL:%]F:7)S=#L@<"`A/2`P.R!P(#T@
M<"T^<%]L:7-T+FQE7VYE>'0I('L*(2`)"0DO*@HA(`D)"2`J(&EF('1H:7,@
M:7,@82!S>7-T96T@<')O8V5S<RP@<VMI<"!I=`HA(`D)"2`J+PHA(`D)"6EF
M("@H<"T^<%]F;&%G("8@4%]365-414TI('Q\("AP+3YP7VQO8VL@/B`P*2!\
M?`HA(`D)"2`@("`H<"T^<%]P:60@/3T@,2D@?'P*(2`)"0D@("`@*"AP+3YP
M7W!I9"`\(#0X*2`F)B`H=FU?<W=A<%]S:7IE("$](#`I*2D@>PHA(`D)"0EC
M;VYT:6YU93L*(2`)"0E]"B$@"0D)+RH*(2`)"0D@*B!I9B!T:&4@<')O8V5S
M<R!I<R!I;B!A(&YO;BUR=6YN:6YG('1Y<&4@<W1A=&4L"B$@"0D)("H@9&]N
M)W0@=&]U8V@@:70N"B$@"0D)("HO"B$@"0D):68@*'`M/G!?<W1A="`A/2!3
M4E5.("8F('`M/G!?<W1A="`A/2!34TQ%15`I('L*(2`)"0D)8V]N=&EN=64[
M"B`@"0D)?0HA(`D)"2\J"B$@"0D)("H@9V5T('1H92!P<F]C97-S('-I>F4*
M(2`)"0D@*B\*(2`)"0ES:7IE(#T@=FUS<&%C95]R97-I9&5N=%]C;W5N="AP
M+3YP7W9M<W!A8V4I.PHA(`D)"2\J"B$@"0D)("H@:68@=&AE('1H:7,@<')O
M8V5S<R!I<R!B:6=G97(@=&AA;B!T:&4@8FEG9V5S="!O;F4*(2`)"0D@*B!R
M96UE;6)E<B!I="X*(2`)"0D@*B\*(2`)"0EI9B`H<VEZ92`^(&)I9W-I>F4I
M('L*(2`)"0D)8FEG<')O8R`]('`["B$@"0D)"6)I9W-I>F4@/2!S:7IE.PH@
M(`D)"7T*(2`)"7T*(2`)"6EF("AB:6=P<F]C("$]($Y53$PI('L*(2`)"0EK
M:6QL<')O8RAB:6=P<F]C+"`B;W5T(&]F('-W87`@<W!A8V4B*3L*(2`)"0EB
M:6=P<F]C+3YP7V5S=&-P=2`](#`["B$@"0D)8FEG<')O8RT^<%]N:6-E(#T@
M4%))3U]-24X["B$@"0D)<F5S971P<FEO<FET>2AB:6=P<F]C*3L*(2`)"0EW
M86ME=7`H)F-N="YV7V9R965?8V]U;G0I.PHA(`D)?0HA(`E]"B`@"7)E='5R
M;B!F;W)C95]W86ME=7`["B`@?0H@(`HM+2T@,3$S,"PQ,3DV("TM+2T*("`)
M?0H@(`H@(`DO*@HA(`D@*B!M86ME('-U<F4@=&AA="!W92!H879E('-W87`@
M<W!A8V4@+2T@:68@=V4@87)E(&QO=R!O;@H@(`D@*B!S=V%P("TM('1H96X@
M:VEL;"!T:&4@8FEG9V5S="!P<F]C97-S+@H@(`D@*B\*(2`C:69D968@3D]?
M4U=!4%!)3D<*(2`):68@*&MI;&Q?;6]D92D*(2`)"6MI;&Q?;6]D92`]("@H
M8VYT+G9?9G)E95]C;W5N="`K(&-N="YV7V-A8VAE7V-O=6YT*2`\"B$@"0D)
M"3,J8VYT+G9?9G)E95]M:6XI.PHA(`EE;'-E"B$@"0EK:6QL7VUO9&4@/2`H
M*&-N="YV7V9R965?8V]U;G0@*R!C;G0N=E]C86-H95]C;W5N="D@/`HA(`D)
M"0EC;G0N=E]F<F5E7VUI;BD["B$@(V5L<V4*(2`):68@*&MI;&Q?;6]D92D*
M(2`)"6MI;&Q?;6]D92`]("AV;5]S=V%P7W-I>F4@/"`S,#<R*3L*(2`)96QS
M90HA(`D):VEL;%]M;V1E(#T@*'9M7W-W87!?<VEZ92`\(#$P,C0I.PHA("-E
M;F1I9@HA(`D)"B$@"6EF("AK:6QL7VUO9&4I('L@+RH@2VEL;"!A;&P@<G5N
M;FEN9R!U<V5R('!R;V-S+"!B:6=G97-T(&9I<G-T("HO"B$@"0ED;R!["B$@
M"0D)8FEG<')O8R`]($Y53$P["B$@"0D)8FEG<VEZ92`](#`["B$@"0D)9F]R
M("AP(#T@86QL<')O8RYL:%]F:7)S=#L@<"`A/2`P.R!P(#T@<"T^<%]L:7-T
M+FQE7VYE>'0I('L*(2`)"0D)+RH*(2`)"0D)("H@:68@=&AI<R!I<R!A('-Y
M<W1E;2!P<F]C97-S+"!S:VEP(&ET"B$@"0D)"2`J+PHA(`D)"0EI9B`H*'`M
M/G!?9FQA9R`F(%!?4UE35$5-*2!\?"`H<"T^<%]L;V-K(#X@,"D@?'P*(2`)
M"0D)("`@("AP+3YP7W!I9"`]/2`Q*2!\?`HA(`D)"0D@("`@*"AP+3YP7W!I
M9"`\(#0X*2`F)B`H=FU?<W=A<%]S:7IE("$](#`I*2D@>PHA(`D)"0D)8V]N
M=&EN=64["B$@"0D)"7T*(2`)"0D)+RH*(2`)"0D)("H@:68@=&AE('!R;V-E
M<W,@:7,@:6X@82!N;VXM<G5N;FEN9R!T>7!E('-T871E+`HA(`D)"0D@*B!D
M;VXG="!T;W5C:"!I="X*(2`)"0D)("HO"B$@"0D)"6EF("AP+3YP7W-T870@
M(3T@4U)53BD@8V]N=&EN=64["B$@"0D)"6EF("AP+3YP7W-I9VQI<W0@)B`H
M4TE'2TE,3"!\(%!?5T58250I*2!C;VYT:6YU93L*(2`)"0D):68@*'`M/G!?
M8W)E9"T^<%]R=6ED(#P@,BD@8V]N=&EN=64["B$@"0D)"6EF("AP+3YP7W!I
M9"`]/2!L87-T7VMI;&QE9%]P:60I(&-O;G1I;G5E.PHA(`D)"0DO*@HA(`D)
M"0D@*B!G970@=&AE('!R;V-E<W,@<VEZ90HA(`D)"0D@*B\*(2`)"0D)<VEZ
M92`]('9M<W!A8V5?<F5S:61E;G1?8V]U;G0H<"T^<%]V;7-P86-E*3L*(2`)
M"0D)+RH*(2`)"0D)("H@:68@=&AE('1H:7,@<')O8V5S<R!I<R!B:6=G97(@
M=&AA;B!T:&4@8FEG9V5S="!O;F4*(2`)"0D)("H@<F5M96UB97(@:70N"B$@
M"0D)"2`J+PHA(`D)"0EI9B`H<VEZ92`^(&)I9W-I>F4I('L*(2`)"0D)"6)I
M9W!R;V,@/2!P.PHA(`D)"0D)8FEG<VEZ92`]('-I>F4["B$@"0D)"7T*("`)
M"0E]"B$@"0D):68@*&)I9W!R;V,@(3T@3E5,3"D@>PHA(`D)"0EK:6QL<')O
M8RAB:6=P<F]C+"`B;W5T(&]F('-W87`@<W!A8V4B*3L*(2`)"0D);&%S=%]K
M:6QL961?<&ED(#T@8FEG<')O8RT^<%]P:60["B$@"0D)"7,@/2!S<&QV;2@I
M.PHA(`D)"0ET<VQE97`H)G9M7W!A9V5S7VYE961E9"P@4%9-+"`B<'-L965P
M(BP@:'HO,S`I.PHA(`D)"0ES<&QX*',I.PH@(`D)"7T*(2`)"7T@=VAI;&4@
M*&)I9W!R;V,I.PHA(`E]("\J(&MI;&P@;6]D92`J+PHA(`EW86ME=7`H)F-N
M="YV7V9R965?8V]U;G0I.PH@(`ER971U<FX@9F]R8V5?=V%K975P.PH@('T*
M("`**BHJ*BHJ*BHJ*BHJ*BHJ"BHJ*B`Q-#`T+#$T,3$@*BHJ*@HM+2T@,30R
M-2PQ-#,Y("TM+2T*("!V;5]D865M;VXH*0H@('L*("`)<W1R=6-T('!R;V,@
M*G`["BL@"6EN="!S.PH@(`H@(`EW:&EL92`H5%)512D@>PHK(`D):68@*&MI
M;&Q?;6]D92D@>PHK("`@("`@("`@("`@("`@("`@("`@("`@("\J($=I=F4@
M:VEL;&5D('5S97(@<')O8W,@82!C:&%N8V4@=&\@9&EE("HO"BL@"0D)<R`]
M('-P;'9M*"D["BL@"0D)='-L965P*"9V;5]P86=E<U]N965D960L(%!632P@
M(G!S;&5E<"(L(&AZ*3L**R`)"0ES<&QX*',I.PHK(`D)?0H@(`D)='-L965P
M*"9V;5]D865M;VY?;F5E9&5D+"!04$%54T4L(")P<VQE97`B+"`P*3L*("`)
M"6EF("AV;5]P86=E;W5T7W)E<5]S=V%P;W5T*2!["B`@"0D)<W=A<&]U=%]P
M<F]C<RAV;5]P86=E;W5T7W)E<5]S=V%P;W5T*3L**BHJ('-Y<R]V;2]S=V%P
M7W!A9V5R+F-^"51U92!*=6X@,CD@,C$Z-#4Z,S$@,3DY.0HM+2T@<WES+W9M
M+W-W87!?<&%G97(N8PE&<FD@2G5L(#$V(#$W.C0Y.C0U(#$Y.3D**BHJ*BHJ
M*BHJ*BHJ*BHJ"BHJ*B`R,30L,C(P("HJ*BH*+2TM(#(Q-"PR,C(@+2TM+0H@
M('L*("`):68@*'9M7W-W87!?<VEZ92`\(&YS=V%P7VQO=V%T*2!["B`@"0EI
M9B`H<W=A<%]P86=E<E]A;&UO<W1?9G5L;"`]/2`P*2!["BL@(VEF9&5F($1)
M4T=.3U-424,*("`)"0EP<FEN=&8H(G-W87!?<&%G97(Z(&]U="!O9B!S=V%P
M('-P86-E7&XB*3L**R`C96YD:68*("`)"0ES=V%P7W!A9V5R7V%L;6]S=%]F
M=6QL(#T@,3L*("`)"7T*("`)?2!E;'-E('L**BHJ*BHJ*BHJ*BHJ*BHJ"BHJ
M*B`T-S`L-#<V("HJ*BH*+2TM(#0W,BPT.#`@+2TM+0H@(`H@(`EI9B`H*&)L
M:R`](&)L:7-T7V%L;&]C*'-W87!B;&ES="P@;G!A9V5S*2D@/3T@4U=!4$),
M2U].3TY%*2!["B`@"0EI9B`H<W=A<%]P86=E<E]F=6QL("$](#(I('L**R`C
M:69D968@1$E!1TY/4U1)0PH@(`D)"7!R:6YT9B@B<W=A<%]P86=E<E]G971S
M=V%P<W!A8V4Z(&9A:6QE9%QN(BD["BL@(V5N9&EF"B`@"0D)<W=A<%]P86=E
M<E]F=6QL(#T@,CL*("`)"0ES=V%P7W!A9V5R7V%L;6]S=%]F=6QL(#T@,3L*
&("`)"7T*
`
end

>Release-Note:
>Audit-Trail:

From: Tim Vanderhoek <tim@localhost.nowhere>
To: freebsd-gnats-submit@FreeBSD.org, peter@holm.cc
Cc: vanderh@ecf.toronto.edu
Subject: Re: kern/12697: Out of swap handling [PATCH]
Date: Tue, 16 May 2000 13:29:02 -0400 (EDT)

 >                           Problem Report kern/12697
 >                                       
 >   Out of swap handling [PATCH]
 [...]          
 >I have tested out of swap handling in current. The situation is that
 >the system just lockes up, "looping" in vm_pageout_scan.
 >
 >I have experimented with some modifications to vm_pageout.c that seems
 >to improve the chances for a recovery drastically.
 >All tests were done on my 128Mb RAM / 256 Mb swap box.
 
 Can you submit a plaintext patch and propose your changes to
 freebsd-arch@FreeBSD.org.  You will need to write a message
 outlining how these changes will improve out-of-swap handling for
 out-of-swap due to different typical reasons in different scenarios
 (I'm thinking of cases where one or two new processes have just
 runaway, but a bigger process may be at constant state and more
 important, or cases where the shear number of processes has caused
 the problem).  You should also give some information about what
 testing you have done.
 
 You may wish to keep freebsd-gnats-submit@FreeBSD.org in the Cc: with
 a subject of "Re: kern12697 ...".
 
 Thanks,
 
 
 >The changes consists of:
 >*       Killing all running user processes when less than 1024 pages
 >swap left.
 >*       Sleeping after each kill to allow the user process to run.
 >*       Pausing the  vmdaemon when in kill mode.
 >
 >I have tried different strategies for when to stop killing but only this
 >one seems to guaranty recovery.
 >
 >
 >   Fix
 >          
 >begin 644 patch
 >M*BHJ('-Y<R]V;2]V;5]P86=E;W5T+F-^"5-U;B!*=6P@(#0@,3,Z-3,Z-#D@
 >M,3DY.0HM+2T@<WES+W9M+W9M7W!A9V5O=70N8PE3870@2G5L(#$W(#$S.C4Q
 >M.C,Y(#$Y.3D**BHJ*BHJ*BHJ*BHJ*BHJ"BHJ*B`Q-30L,34Y("HJ*BH*+2TM
 >M(#$U-"PQ-C(@+2TM+0H@('-T871I8R!I;G0@=FU?<W=A<%]I9&QE7V5N86)L
 >M960],#L*("`C96YD:68*("`**R!S=&%T:6,@:6YT(&MI;&Q?;6]D92`](#`[
 >M"BL@<W1A=&EC('!I9%]T(&QA<W1?:VEL;&5D7W!I9"`](#`["BL@"B`@4UE3
 >M0U1,7TE.5"A?=FTL(%9-7U!!1T5/551?04Q'3U))5$A-+"!P86=E;W5T7V%L
 >M9V]R:71H;2P*("`)0U1,1DQ!1U]25RP@)G9M7W!A9V5O=71?86QG;W)I=&AM
 >M7VQR=2P@,"P@(DQ252!P86=E(&UG;70B*3L*("`**BHJ*BHJ*BHJ*BHJ*BHJ
 >M"BHJ*B`R,#0L,C`Y("HJ*BH*+2TM(#(P-RPR,3,@+2TM+0H@("-E;F1I9@H@
 >M('-T871I8R!V;VED('9M7W!A9V5O=71?<&%G95]S=&%T<RAV;VED*3L*("`*
 >M*R`*("`O*@H@("`J('9M7W!A9V5O=71?8VQE86XZ"B`@("H**BHJ*BHJ*BHJ
 >M*BHJ*BHJ"BHJ*B`Q,3(V+#$Q-S4@*BHJ*@H@(`E]"B`@"B`@"2\J"B$@"2`J
 >M(&UA:V4@<W5R92!T:&%T('=E(&AA=F4@<W=A<"!S<&%C92`M+2!I9B!W92!A
 >M<F4@;&]W(&]N(&UE;6]R>2!A;F0*("`)("H@<W=A<"`M+2!T:&5N(&MI;&P@
 >M=&AE(&)I9V=E<W0@<')O8V5S<RX*("`)("HO"B$@"6EF("@H=FU?<W=A<%]S
 >M:7IE(#T](#`@?'P@<W=A<%]P86=E<E]F=6QL*2`F)@HA(`D@("`@*"AC;G0N
 >M=E]F<F5E7V-O=6YT("L@8VYT+G9?8V%C:&5?8V]U;G0I(#P@8VYT+G9?9G)E
 >M95]M:6XI*2!["B$@"0EB:6=P<F]C(#T@3E5,3#L*(2`)"6)I9W-I>F4@/2`P
 >M.PHA(`D)9F]R("AP(#T@86QL<')O8RYL:%]F:7)S=#L@<"`A/2`P.R!P(#T@
 >M<"T^<%]L:7-T+FQE7VYE>'0I('L*(2`)"0DO*@HA(`D)"2`J(&EF('1H:7,@
 >M:7,@82!S>7-T96T@<')O8V5S<RP@<VMI<"!I=`HA(`D)"2`J+PHA(`D)"6EF
 >M("@H<"T^<%]F;&%G("8@4%]365-414TI('Q\("AP+3YP7VQO8VL@/B`P*2!\
 >M?`HA(`D)"2`@("`H<"T^<%]P:60@/3T@,2D@?'P*(2`)"0D@("`@*"AP+3YP
 >M7W!I9"`\(#0X*2`F)B`H=FU?<W=A<%]S:7IE("$](#`I*2D@>PHA(`D)"0EC
 >M;VYT:6YU93L*(2`)"0E]"B$@"0D)+RH*(2`)"0D@*B!I9B!T:&4@<')O8V5S
 >M<R!I<R!I;B!A(&YO;BUR=6YN:6YG('1Y<&4@<W1A=&4L"B$@"0D)("H@9&]N
 >M)W0@=&]U8V@@:70N"B$@"0D)("HO"B$@"0D):68@*'`M/G!?<W1A="`A/2!3
 >M4E5.("8F('`M/G!?<W1A="`A/2!34TQ%15`I('L*(2`)"0D)8V]N=&EN=64[
 >M"B`@"0D)?0HA(`D)"2\J"B$@"0D)("H@9V5T('1H92!P<F]C97-S('-I>F4*
 >M(2`)"0D@*B\*(2`)"0ES:7IE(#T@=FUS<&%C95]R97-I9&5N=%]C;W5N="AP
 >M+3YP7W9M<W!A8V4I.PHA(`D)"2\J"B$@"0D)("H@:68@=&AE('1H:7,@<')O
 >M8V5S<R!I<R!B:6=G97(@=&AA;B!T:&4@8FEG9V5S="!O;F4*(2`)"0D@*B!R
 >M96UE;6)E<B!I="X*(2`)"0D@*B\*(2`)"0EI9B`H<VEZ92`^(&)I9W-I>F4I
 >M('L*(2`)"0D)8FEG<')O8R`]('`["B$@"0D)"6)I9W-I>F4@/2!S:7IE.PH@
 >M(`D)"7T*(2`)"7T*(2`)"6EF("AB:6=P<F]C("$]($Y53$PI('L*(2`)"0EK
 >M:6QL<')O8RAB:6=P<F]C+"`B;W5T(&]F('-W87`@<W!A8V4B*3L*(2`)"0EB
 >M:6=P<F]C+3YP7V5S=&-P=2`](#`["B$@"0D)8FEG<')O8RT^<%]N:6-E(#T@
 >M4%))3U]-24X["B$@"0D)<F5S971P<FEO<FET>2AB:6=P<F]C*3L*(2`)"0EW
 >M86ME=7`H)F-N="YV7V9R965?8V]U;G0I.PHA(`D)?0HA(`E]"B`@"7)E='5R
 >M;B!F;W)C95]W86ME=7`["B`@?0H@(`HM+2T@,3$S,"PQ,3DV("TM+2T*("`)
 >M?0H@(`H@(`DO*@HA(`D@*B!M86ME('-U<F4@=&AA="!W92!H879E('-W87`@
 >M<W!A8V4@+2T@:68@=V4@87)E(&QO=R!O;@H@(`D@*B!S=V%P("TM('1H96X@
 >M:VEL;"!T:&4@8FEG9V5S="!P<F]C97-S+@H@(`D@*B\*(2`C:69D968@3D]?
 >M4U=!4%!)3D<*(2`):68@*&MI;&Q?;6]D92D*(2`)"6MI;&Q?;6]D92`]("@H
 >M8VYT+G9?9G)E95]C;W5N="`K(&-N="YV7V-A8VAE7V-O=6YT*2`\"B$@"0D)
 >M"3,J8VYT+G9?9G)E95]M:6XI.PHA(`EE;'-E"B$@"0EK:6QL7VUO9&4@/2`H
 >M*&-N="YV7V9R965?8V]U;G0@*R!C;G0N=E]C86-H95]C;W5N="D@/`HA(`D)
 >M"0EC;G0N=E]F<F5E7VUI;BD["B$@(V5L<V4*(2`):68@*&MI;&Q?;6]D92D*
 >M(2`)"6MI;&Q?;6]D92`]("AV;5]S=V%P7W-I>F4@/"`S,#<R*3L*(2`)96QS
 >M90HA(`D):VEL;%]M;V1E(#T@*'9M7W-W87!?<VEZ92`\(#$P,C0I.PHA("-E
 >M;F1I9@HA(`D)"B$@"6EF("AK:6QL7VUO9&4I('L@+RH@2VEL;"!A;&P@<G5N
 >M;FEN9R!U<V5R('!R;V-S+"!B:6=G97-T(&9I<G-T("HO"B$@"0ED;R!["B$@
 >M"0D)8FEG<')O8R`]($Y53$P["B$@"0D)8FEG<VEZ92`](#`["B$@"0D)9F]R
 >M("AP(#T@86QL<')O8RYL:%]F:7)S=#L@<"`A/2`P.R!P(#T@<"T^<%]L:7-T
 >M+FQE7VYE>'0I('L*(2`)"0D)+RH*(2`)"0D)("H@:68@=&AI<R!I<R!A('-Y
 >M<W1E;2!P<F]C97-S+"!S:VEP(&ET"B$@"0D)"2`J+PHA(`D)"0EI9B`H*'`M
 >M/G!?9FQA9R`F(%!?4UE35$5-*2!\?"`H<"T^<%]L;V-K(#X@,"D@?'P*(2`)
 >M"0D)("`@("AP+3YP7W!I9"`]/2`Q*2!\?`HA(`D)"0D@("`@*"AP+3YP7W!I
 >M9"`\(#0X*2`F)B`H=FU?<W=A<%]S:7IE("$](#`I*2D@>PHA(`D)"0D)8V]N
 >M=&EN=64["B$@"0D)"7T*(2`)"0D)+RH*(2`)"0D)("H@:68@=&AE('!R;V-E
 >M<W,@:7,@:6X@82!N;VXM<G5N;FEN9R!T>7!E('-T871E+`HA(`D)"0D@*B!D
 >M;VXG="!T;W5C:"!I="X*(2`)"0D)("HO"B$@"0D)"6EF("AP+3YP7W-T870@
 >M(3T@4U)53BD@8V]N=&EN=64["B$@"0D)"6EF("AP+3YP7W-I9VQI<W0@)B`H
 >M4TE'2TE,3"!\(%!?5T58250I*2!C;VYT:6YU93L*(2`)"0D):68@*'`M/G!?
 >M8W)E9"T^<%]R=6ED(#P@,BD@8V]N=&EN=64["B$@"0D)"6EF("AP+3YP7W!I
 >M9"`]/2!L87-T7VMI;&QE9%]P:60I(&-O;G1I;G5E.PHA(`D)"0DO*@HA(`D)
 >M"0D@*B!G970@=&AE('!R;V-E<W,@<VEZ90HA(`D)"0D@*B\*(2`)"0D)<VEZ
 >M92`]('9M<W!A8V5?<F5S:61E;G1?8V]U;G0H<"T^<%]V;7-P86-E*3L*(2`)
 >M"0D)+RH*(2`)"0D)("H@:68@=&AE('1H:7,@<')O8V5S<R!I<R!B:6=G97(@
 >M=&AA;B!T:&4@8FEG9V5S="!O;F4*(2`)"0D)("H@<F5M96UB97(@:70N"B$@
 >M"0D)"2`J+PHA(`D)"0EI9B`H<VEZ92`^(&)I9W-I>F4I('L*(2`)"0D)"6)I
 >M9W!R;V,@/2!P.PHA(`D)"0D)8FEG<VEZ92`]('-I>F4["B$@"0D)"7T*("`)
 >M"0E]"B$@"0D):68@*&)I9W!R;V,@(3T@3E5,3"D@>PHA(`D)"0EK:6QL<')O
 >M8RAB:6=P<F]C+"`B;W5T(&]F('-W87`@<W!A8V4B*3L*(2`)"0D);&%S=%]K
 >M:6QL961?<&ED(#T@8FEG<')O8RT^<%]P:60["B$@"0D)"7,@/2!S<&QV;2@I
 >M.PHA(`D)"0ET<VQE97`H)G9M7W!A9V5S7VYE961E9"P@4%9-+"`B<'-L965P
 >M(BP@:'HO,S`I.PHA(`D)"0ES<&QX*',I.PH@(`D)"7T*(2`)"7T@=VAI;&4@
 >M*&)I9W!R;V,I.PHA(`E]("\J(&MI;&P@;6]D92`J+PHA(`EW86ME=7`H)F-N
 >M="YV7V9R965?8V]U;G0I.PH@(`ER971U<FX@9F]R8V5?=V%K975P.PH@('T*
 >M("`**BHJ*BHJ*BHJ*BHJ*BHJ"BHJ*B`Q-#`T+#$T,3$@*BHJ*@HM+2T@,30R
 >M-2PQ-#,Y("TM+2T*("!V;5]D865M;VXH*0H@('L*("`)<W1R=6-T('!R;V,@
 >M*G`["BL@"6EN="!S.PH@(`H@(`EW:&EL92`H5%)512D@>PHK(`D):68@*&MI
 >M;&Q?;6]D92D@>PHK("`@("`@("`@("`@("`@("`@("`@("`@("\J($=I=F4@
 >M:VEL;&5D('5S97(@<')O8W,@82!C:&%N8V4@=&\@9&EE("HO"BL@"0D)<R`]
 >M('-P;'9M*"D["BL@"0D)='-L965P*"9V;5]P86=E<U]N965D960L(%!632P@
 >M(G!S;&5E<"(L(&AZ*3L**R`)"0ES<&QX*',I.PHK(`D)?0H@(`D)='-L965P
 >M*"9V;5]D865M;VY?;F5E9&5D+"!04$%54T4L(")P<VQE97`B+"`P*3L*("`)
 >M"6EF("AV;5]P86=E;W5T7W)E<5]S=V%P;W5T*2!["B`@"0D)<W=A<&]U=%]P
 >M<F]C<RAV;5]P86=E;W5T7W)E<5]S=V%P;W5T*3L**BHJ('-Y<R]V;2]S=V%P
 >M7W!A9V5R+F-^"51U92!*=6X@,CD@,C$Z-#4Z,S$@,3DY.0HM+2T@<WES+W9M
 >M+W-W87!?<&%G97(N8PE&<FD@2G5L(#$V(#$W.C0Y.C0U(#$Y.3D**BHJ*BHJ
 >M*BHJ*BHJ*BHJ"BHJ*B`R,30L,C(P("HJ*BH*+2TM(#(Q-"PR,C(@+2TM+0H@
 >M('L*("`):68@*'9M7W-W87!?<VEZ92`\(&YS=V%P7VQO=V%T*2!["B`@"0EI
 >M9B`H<W=A<%]P86=E<E]A;&UO<W1?9G5L;"`]/2`P*2!["BL@(VEF9&5F($1)
 >M4T=.3U-424,*("`)"0EP<FEN=&8H(G-W87!?<&%G97(Z(&]U="!O9B!S=V%P
 >M('-P86-E7&XB*3L**R`C96YD:68*("`)"0ES=V%P7W!A9V5R7V%L;6]S=%]F
 >M=6QL(#T@,3L*("`)"7T*("`)?2!E;'-E('L**BHJ*BHJ*BHJ*BHJ*BHJ"BHJ
 >M*B`T-S`L-#<V("HJ*BH*+2TM(#0W,BPT.#`@+2TM+0H@(`H@(`EI9B`H*&)L
 >M:R`](&)L:7-T7V%L;&]C*'-W87!B;&ES="P@;G!A9V5S*2D@/3T@4U=!4$),
 >M2U].3TY%*2!["B`@"0EI9B`H<W=A<%]P86=E<E]F=6QL("$](#(I('L**R`C
 >M:69D968@1$E!1TY/4U1)0PH@(`D)"7!R:6YT9B@B<W=A<%]P86=E<E]G971S
 >M=V%P<W!A8V4Z(&9A:6QE9%QN(BD["BL@(V5N9&EF"B`@"0D)<W=A<%]P86=E
 >M<E]F=6QL(#T@,CL*("`)"0ES=V%P7W!A9V5R7V%L;6]S=%]F=6QL(#T@,3L*
 >&("`)"7T*
 >`
 >end
 >
 
State-Changed-From-To: open->closed 
State-Changed-By: dd 
State-Changed-When: Sun Jul 22 08:05:46 PDT 2001 
State-Changed-Why:  
overtaken by events (this code has been reworked a little), and no visible 
response to send this to -arch from submitter  

http://www.FreeBSD.org/cgi/query-pr.cgi?pr=12697 
>Unformatted:
