From owner-svn-src-all@FreeBSD.ORG Fri Aug 29 19:59:00 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C137B250; Fri, 29 Aug 2014 19:59:00 +0000 (UTC) Received: from smtp1.multiplay.co.uk (smtp1.multiplay.co.uk [85.236.96.35]) by mx1.freebsd.org (Postfix) with ESMTP id 804EA1E56; Fri, 29 Aug 2014 19:59:00 +0000 (UTC) Received: by smtp1.multiplay.co.uk (Postfix, from userid 65534) id AE28820E7088A; Fri, 29 Aug 2014 19:58:59 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.multiplay.co.uk X-Spam-Level: X-Spam-Status: No, score=0.9 required=8.0 tests=AWL,BAYES_00,DOS_OE_TO_MX, FSL_HELO_NON_FQDN_1,RDNS_DYNAMIC,STOX_REPLY_TYPE autolearn=no version=3.3.1 Received: from r2d2 (82-69-141-170.dsl.in-addr.zen.co.uk [82.69.141.170]) by smtp1.multiplay.co.uk (Postfix) with ESMTP id 19DBA20E70885; Fri, 29 Aug 2014 19:58:58 +0000 (UTC) Message-ID: <93F9465BF50A428BA687DD1EA4A7B455@multiplay.co.uk> From: "Steven Hartland" To: "Alan Cox" , "Peter Wemm" References: <201408281950.s7SJo90I047213@svn.freebsd.org> <20140828211508.GK46031@over-yonder.net> <53FFAD79.7070106@rice.edu> <1617817.cOUOX4x8n2@overcee.wemm.org> <4A4B2C2D36064FD9840E3603D39E58E0@multiplay.co.uk> <5400B052.6030103@rice.edu> Subject: Re: svn commit: r270759 - in head/sys: cddl/compat/opensolaris/kern cddl/compat/opensolaris/sys cddl/contrib/opensolaris/uts/common/fs/zfs vm Date: Fri, 29 Aug 2014 20:58:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.5931 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Dmitry Morozovsky , "Matthew D. Fuller" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 Aug 2014 19:59:00 -0000 ----- Original Message ----- From: "Alan Cox" > You didn't really address Peter's initial technical issue. Peter > correctly observed that cache pages are just another flavor of free > pages. Whenever the VM system is checking the number of free pages > against any of the thresholds, it always uses the sum of v_cache_count > and v_free_count. So, to anyone familiar with the VM system, like > Peter, what you've done, which is to derive a threshold from > v_free_target but only compare v_free_count to that threshold, looks > highly suspect. > > That said, I can easily believe that your patch works better than the > existing code, because it is closer in spirit to my interpretation of > what the Solaris code does. Specifically, I believe that the Solaris > code starts trimming the ARC before the Solaris page daemon starts > writing dirty pages to secondary storage. Now, you've made FreeBSD do > the same. However, you've expressed it in a way that looks broken. > > To wrap up, I think that you can easily write this in a way that > simultaneously behaves like Solaris and doesn't look wrong to a VM > expert. More details in my last reply on this but in short it seems this has already been tried and it didn't work. I'd be interested in what domain experts think about why that is? In the mean time I've asked Karl to see if he could retest with this change to confirm counting cache pages along with free does indeed still cause a problem. For those that want to catch up on what has already tested see the original PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=187594 Regards Steve