From owner-FreeBSD-users-jp@jp.freebsd.org  Fri May 11 01:36:17 2001
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id BAA42937;
	Fri, 11 May 2001 01:36:17 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from mail153.nifty.com (mail153.nifty.com [202.248.37.146])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id BAA42932
	for <FreeBSD-users-jp@jp.freebsd.org>; Fri, 11 May 2001 01:36:16 +0900 (JST)
	(envelope-from hiroo@oikumene.gcd.org)
Received: from chrysanthe.oikumene.gcd.org
	by mail153.nifty.com (8.9.3+3.2W/3.7W-10/13/99) with SMTP id BAA19680
	for <FreeBSD-users-jp@jp.freebsd.org>; Fri, 11 May 2001 01:36:15 +0900
Received: (qmail 53215 invoked from network); 10 May 2001 16:36:14 -0000
Received: from chrysanthe.oikumene.gcd.org (HELO localhost) (@192.168.0.12)
  by chrysanthe.oikumene.gcd.org with SMTP; 10 May 2001 16:36:14 -0000
To: FreeBSD-users-jp@jp.freebsd.org
From: Hiroo ONO (=?iso-2022-jp?B?GyRCPi5MbjQyQDgbKEI=?=)
 <hiroo@oikumene.gcd.org>
In-Reply-To: <8666fawqnx.wl@bougainvillea.FromTo.Cc>
References: <20010509083927.64A9.ML@tokyo-club.com>
	<20010509225516C.hiroo@oikumene.gcd.org>
	<8666fawqnx.wl@bougainvillea.FromTo.Cc>
X-Mailer: Mew version 1.94.1 on Emacs 20.7 / Mule 4.0 (HANANOEN)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <20010511013613O.hiroo@oikumene.gcd.org>
Date: Fri, 11 May 2001 01:36:13 +0900
X-Dispatcher: imput version 20000228(IM140)
Lines: 72
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+010328
X-Sequence: FreeBSD-users-jp 61364
Subject: [FreeBSD-users-jp 61364] Re: pmap_collect
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: hiroo@oikumene.gcd.org

$B>.Ln42@8$G$9(B

$B;d$b$o$+$C$F$$$J$$$G=q$$$F$$$k$N$G$"$l$G$9$,!D(B

From: Tatsumi Hosokawa <hosokawa@FreeBSD.org>
Date: Wed, 09 May 2001 23:19:46 +0900

> maxusers $B$rA}$d$7$?$i=P$J$/$J$k$H$+!"(B
> $B$=$N<j$N$b$N$@$C$?$j$7$F!D!#(B

$ # Set the number of PV entries per process.  Increasing this can
$ # stop panics related to heavy use of shared memory. 

$B$H$"$k$N$G!"(B

> $B!t(B $B$A$J$_$K(B maxusers $B0J30$KA}$d$7$?$N$O(B SYSVSHM $B4X78$H(B 

$B$NJ}$,8z$$$F$$$?$j$7$^$;$s$+$M!#$H;W$C$?$1$I!"(B

/sys $B0J2<$r(B grep PMAP_SHPGPERPROC $B$7$F$_$?$H$3$m(B ($BAjJQ$o$i$:$*$=$i$/(B 4
$B7n8eH>$N(B 4-stable) $B!"(B
    /sys/alpha/alpha/pmap.c
    /sys/i386/i386/pmap.c

$B$G!"(B
/sys/i386/i386/pmap.c:  pv_entry_max = PMAP_SHPGPERPROC * maxproc + vm_page_array_size;
$B$H$$$&;H$o$l$+$?$r$7$F$$$^$9!#:Y@n$5$s$N$*$C$7$c$kDL$j!"(B
maxusers $B$rA}$d$7$?$N$G!"(Bmaxproc $B$,A}$($F8z2L$,$G$F$$$k$N$G$7$g$&!#(B
% /sys/conf/param.c:#define       NPROC (20 + 16 * MAXUSERS)
% /sys/conf/param.c:int   maxproc = NPROC;                        /* maximum # of processes */

$B>0!"(Bpmap.c $B$NKAF,$K(B
 *      Manages physical address maps.
$B$H=q$$$F$"$j$^$9!#(B

$B7o$N%a%C%;!<%8$r=PNO$7$F$$$k$N$b(B
/sys/i386/i386/pmap.c:          printf("pmap_collect: collecting pv entries -- suggest increasing PMAP_SHPGPERPROC\n");
$B$G$9$M!#(Bpmap_collect() $B$,8F$P$l$?$iJ86g$r$$$&$3$H$K$7$F$$$k$_$?$$$G$9!#(B
$B$G!"(B/sys $B0J2<$G(B pmap_collect() $B$r8F$s$G$$$k$N$O!"(B/sys/vm/vm_pageout.c $B$@$1!#(B

static void
vm_pageout_scan(int pass)
{
	$B!D(B $BKAF,$G(B $B!D(B
        /*
         * Do whatever cleanup that the pmap code can.
         */
        pmap_collect();
	$B!D(B
	$B!D(B
}

$B$5$i$K$3$$$D$O!"(B
static void vm_pageout() $B$K$F!"(B

        while (TRUE) {
		 $B!D(B
                if (vm_pages_needed) {
		     $B!D(B
                } else {
                        if (error && !vm_pages_needed) {
				$B!D(B
                                continue;
                        }
                }
		$B!D(B
                vm_pageout_scan(pass);
		$B!D(B
        }

$B$H$"$k$N$G!"$3$N$"$?$j$N=hM}$r>\$7$/$_$l$P!"$J$s$G$G$F$/$k$+$O$o$+$j$=$&!#(B
$B$G!"(Bvm_pageout() $B$,$I$3$+$i8F$P$l$F$$$k$+$ODI$$@Z$l$^$;$s$G$7$?!#(B
