From owner-freebsd-current@FreeBSD.ORG Wed May 23 18:05:14 2012 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C98C5106566C for ; Wed, 23 May 2012 18:05:14 +0000 (UTC) (envelope-from maksim.yevmenkin@gmail.com) Received: from mail-pb0-f54.google.com (mail-pb0-f54.google.com [209.85.160.54]) by mx1.freebsd.org (Postfix) with ESMTP id A06318FC08 for ; Wed, 23 May 2012 18:05:14 +0000 (UTC) Received: by pbbro2 with SMTP id ro2so11060924pbb.13 for ; Wed, 23 May 2012 11:05:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=qZ0QttLtzAL+3KtukmXdZVCPWG4DPI52cIpB1D/F/j0=; b=Qs8VM3oqX5zjzNnbJDKGocyZbRYxnEWBdLDGZn2ni0aKevZeN24G5l0bmvIF1YYY17 34e7Oir7+IsZRMyjsxiY1Gg/l7XuBc1qoSHd1L8TDhJPfjnFqh0JGE2FhQxh7Ik3w6/C 3+TaA23pih53a/xWBZxemm+nJvdszygHZ268nuu+BNoDeCfcoey9pffwrhZ8lh7xJmWV 6dMP5HC51jD8S07Cbrjf9hw1E4Wu37CvX/IKn+Fh6TTNrnaMJ/YPpuQ7dzVHyM7PMahX DHnU5wQpXPN3OnCkbJg1I674AMfraHKeO/uJA+x5lFRjKDTGJCZrmQLm1FdkK2fmCpAl yJJg== MIME-Version: 1.0 Received: by 10.68.225.6 with SMTP id rg6mr12847388pbc.100.1337796314039; Wed, 23 May 2012 11:05:14 -0700 (PDT) Received: by 10.68.2.74 with HTTP; Wed, 23 May 2012 11:05:14 -0700 (PDT) Date: Wed, 23 May 2012 11:05:14 -0700 Message-ID: From: Maksim Yevmenkin To: current@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 Cc: Subject: RFC: [PATCH] disabling buckets under "low memory" X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 May 2012 18:05:14 -0000 hello, would anyone object to the following patch? === Index: uma_core.c =================================================================== --- uma_core.c (revision 616) +++ uma_core.c (working copy) @@ -267,10 +267,7 @@ static void bucket_enable(void) { - if (cnt.v_free_count < cnt.v_free_min) - bucketdisable = 1; - else - bucketdisable = 0; + bucketdisable = vm_page_count_min(); } === i've observed situation where per-cpu buckets were disabled while there were enough free cached pages. basically, cnt.v_free_count was sitting stable at a value lower than cnt.v_free_min and that caused massive performance drop. tuning down vm.v_free_min sysctl immediately helped. thanks, max