From owner-freebsd-bugs Sun Jul 18 12:30:58 1999 Delivered-To: freebsd-bugs@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id 93D2414EC4 for ; Sun, 18 Jul 1999 12:30:55 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id MAA64910; Sun, 18 Jul 1999 12:30:00 -0700 (PDT) (envelope-from gnats@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 To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: kern/12697: Out of swap handling [PATCH] Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 12697 >Category: kern >Synopsis: Out of swap handling [PATCH] >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jul 18 12:30:00 PDT 1999 >Closed-Date: >Last-Modified: >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('-Y2!A;F0*("`)("H@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@<')O8V5SPHA(`D)"0EC M;VYT:6YU93L*(2`)"0E]"B$@"0D)+RH*(2`)"0D@*B!I9B!T:&4@<')O8V5S MF4* M(2`)"0D@*B\*(2`)"0ES:7IE(#T@=FUS<&%C95]R97-I9&5N=%]C;W5N="AP M+3YP7W9MF4I 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=P2AB:6=PF4@/"`S,#'0I('L*(2`)"0D)+RH*(2`)"0D)("H@:68@=&AIPHA(`D)"0D)8V]N M=&EN=64["B$@"0D)"7T*(2`)"0D)+RH*(2`)"0D)("H@:68@=&AE('!R;V-E M7!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-I9VQIF4I('L*(2`)"0D)"6)I M9W!R;V,@/2!P.PHA(`D)"0D)8FEGF4["B$@"0D)"7T*("`) M"0E]"B$@"0D):68@*&)I9W!R;V,@(3T@3E5,3"D@>PHA(`D)"0EK:6QL<')O M8RAB:6=PRelease-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message