From owner-freebsd-hackers Thu Mar 8 23:49:30 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from mr200.netcologne.de (mr200.netcologne.de [194.8.194.109]) by hub.freebsd.org (Postfix) with ESMTP id AED7337B719 for ; Thu, 8 Mar 2001 23:49:26 -0800 (PST) (envelope-from pherman@frenchfries.net) Received: from husten.security.at12.de (dial-194-8-195-149.netcologne.de [194.8.195.149]) by mr200.netcologne.de (Mirapoint) with ESMTP id ACH09626; Fri, 9 Mar 2001 08:49:10 +0100 (CET) Received: from localhost (localhost.security.at12.de [127.0.0.1]) by husten.security.at12.de (8.11.3/8.11.2) with ESMTP id f297n1E61116; Fri, 9 Mar 2001 08:49:01 +0100 (CET) (envelope-from pherman@frenchfries.net) Date: Fri, 9 Mar 2001 08:49:00 +0100 (CET) From: Paul Herman To: Matt Dillon Cc: Jesper Skriver , Dan Phoenix , Subject: Re: systat -vmstat or iostat IO help In-Reply-To: <200103090126.f291QLO05885@earth.backplane.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hi Matt, [...great comments on the VM writeup from the handbook...] On Thu, 8 Mar 2001, Matt Dillon wrote: > This type of load is visible by noting the amount of page scanning > the system does (the 'sr' field in vmstat) and the number of reactivations > (the 're' field in vmstat). A reactivation occurs when the system has > moved a page (typically) to the Inactive or Cache queue, but then some > program accesses it again and forces the system to take a VM fault and put > the page back into the Active queue. About a year ago, I was looking through the VM code, and saw that the 're' field in vmstat is just Cache reactivations, and not both Inactive & Cache. I just figured it was how it was supposed to be. Could it be that 're' should include *all* reactivations? If so, would I be correct in suggesting: Index: vm_page.c =================================================================== RCS file: /home/ncvs/src/sys/vm/vm_page.c,v retrieving revision 1.147.2.6 diff -u -r1.147.2.6 vm_page.c --- vm_page.c 2001/03/03 23:06:09 1.147.2.6 +++ vm_page.c 2001/03/09 07:36:13 @@ -990,7 +990,8 @@ s = splvm(); if (m->queue != PQ_ACTIVE) { - if ((m->queue - m->pc) == PQ_CACHE) + if ((m->queue - m->pc) == PQ_CACHE || + (m->queue - m->pc) == PQ_INACTIVE) cnt.v_reactivated++; vm_page_unqueue(m); ...or maybe even just something like ( (m->queue - m->pc) != PQ_FREE ) -Paul. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message