From owner-svn-src-user@freebsd.org Thu Oct 27 00:08:03 2016 Return-Path: <owner-svn-src-user@freebsd.org> Delivered-To: svn-src-user@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7DCAFC22013 for <svn-src-user@mailman.ysv.freebsd.org>; Thu, 27 Oct 2016 00:08:03 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2DCACD0A; Thu, 27 Oct 2016 00:08:03 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9R082tU088370; Thu, 27 Oct 2016 00:08:02 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9R082KT088369; Thu, 27 Oct 2016 00:08:02 GMT (envelope-from markj@FreeBSD.org) Message-Id: <201610270008.u9R082KT088369@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston <markj@FreeBSD.org> Date: Thu, 27 Oct 2016 00:08:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r307980 - user/alc/PQ_LAUNDRY/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" <svn-src-user.freebsd.org> List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-user>, <mailto:svn-src-user-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/svn-src-user/> List-Post: <mailto:svn-src-user@freebsd.org> List-Help: <mailto:svn-src-user-request@freebsd.org?subject=help> List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-user>, <mailto:svn-src-user-request@freebsd.org?subject=subscribe> X-List-Received-Date: Thu, 27 Oct 2016 00:08:03 -0000 Author: markj Date: Thu Oct 27 00:08:02 2016 New Revision: 307980 URL: https://svnweb.freebsd.org/changeset/base/307980 Log: Use a defined constant for the pagedaemon's sleep interval. Reviewed by: alc Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Modified: user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c ============================================================================== --- user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Wed Oct 26 23:40:07 2016 (r307979) +++ user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c Thu Oct 27 00:08:02 2016 (r307980) @@ -154,11 +154,9 @@ static struct kproc_desc vm_kp = { SYSINIT(vmdaemon, SI_SUB_KTHREAD_VM, SI_ORDER_FIRST, kproc_start, &vm_kp); #endif -/* Sleep intervals for pagedaemon threads, in subdivisions of one second. */ -#define VM_LAUNDER_INTERVAL 10 -#define VM_INACT_SCAN_INTERVAL 2 - -#define VM_LAUNDER_RATE (VM_LAUNDER_INTERVAL / VM_INACT_SCAN_INTERVAL) +/* Pagedaemon activity rates, in subdivisions of one second. */ +#define VM_LAUNDER_RATE 10 +#define VM_INACT_SCAN_RATE 2 int vm_pageout_deficit; /* Estimated number of pages deficit */ u_int vm_pageout_wakeup_thresh; @@ -1148,7 +1146,7 @@ vm_pageout_laundry_worker(void *arg) */ if (shortfall > 0) { in_shortfall = true; - shortfall_cycle = VM_LAUNDER_RATE; + shortfall_cycle = VM_LAUNDER_RATE / VM_INACT_SCAN_RATE; target = shortfall; } else if (!in_shortfall) goto trybackground; @@ -1210,7 +1208,7 @@ trybackground: target = 0; } launder = vm_background_launder_rate * PAGE_SIZE / 1024; - launder /= VM_LAUNDER_INTERVAL; + launder /= VM_LAUNDER_RATE; if (launder > target) launder = target; } @@ -1224,7 +1222,7 @@ dolaundry: */ target -= min(vm_pageout_launder(domain, launder, in_shortfall), target); - pause("laundp", hz / VM_LAUNDER_INTERVAL); + pause("laundp", hz / VM_LAUNDER_RATE); } /* @@ -1975,7 +1973,7 @@ vm_pageout_worker(void *arg) */ mtx_unlock(&vm_page_queue_free_mtx); if (pass >= 1) - pause("psleep", hz / 2); + pause("psleep", hz / VM_INACT_SCAN_RATE); pass++; } else { /*