From owner-freebsd-current@FreeBSD.ORG Tue May 19 03:07:20 2009 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 12405106566C; Tue, 19 May 2009 03:07:20 +0000 (UTC) (envelope-from ben@wanderview.com) Received: from mail.wanderview.com (mail.wanderview.com [66.92.166.102]) by mx1.freebsd.org (Postfix) with ESMTP id 863168FC15; Tue, 19 May 2009 03:07:19 +0000 (UTC) (envelope-from ben@wanderview.com) Received: from harkness.in.wanderview.com (harkness.in.wanderview.com [10.76.10.150]) (authenticated bits=0) by mail.wanderview.com (8.14.3/8.14.3) with ESMTP id n4J37EC9018708 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 19 May 2009 03:07:14 GMT (envelope-from ben@wanderview.com) Message-Id: <68B339AA-75CF-41FC-9E09-81D20D6F1FBA@wanderview.com> From: Ben Kelly To: Kip Macy In-Reply-To: <3c1674c90905181945g179173b9rb064e8b37ba7148@mail.gmail.com> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v935.3) Date: Mon, 18 May 2009 23:07:13 -0400 References: <20090518145614.GF82547@egr.msu.edu> <3c1674c90905181659g1d20f0f1w3f623966ae4440ec@mail.gmail.com> <20090519012202.GR82547@egr.msu.edu> <3c1674c90905181826p787a346cie90429324444a9c4@mail.gmail.com> <1F20825F-BD11-40D1-9024-07F6E707DD08@wanderview.com> <3c1674c90905181945g179173b9rb064e8b37ba7148@mail.gmail.com> X-Mailer: Apple Mail (2.935.3) X-Spam-Score: -1.44 () ALL_TRUSTED X-Scanned-By: MIMEDefang 2.64 on 10.76.20.1 Cc: Adam McDougall , current@freebsd.org, Larry Rosenman Subject: Re: Fatal trap 12: page fault panic with recent kernel with ZFS 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: Tue, 19 May 2009 03:07:20 -0000 On May 18, 2009, at 10:45 PM, Kip Macy wrote: > On Mon, May 18, 2009 at 7:34 PM, Ben Kelly wrote: >> On May 18, 2009, at 9:26 PM, Kip Macy wrote: >> On the low memory front it seems like the arc needs a way to tell >> the pager >> to mark some vnodes inactive. I've seen many cases where the arc >> size >> greatly exceeded the target, but it couldn't evict any memory >> because all >> its buffers were still referenced. This seems to behave a little >> better >> with code that increments vm_pageout_deficit and signals the >> pageout daemon >> when the arc is too far above its target. The normal buffer cache >> seems to >> do this as well when its low on memory. > > > Good point. Patches welcome. Otherwise I'll look in to it when I get > the chance. I do some of that in this patch: http://www.wanderview.com/svn/public/misc/zfs/zfs_kmem_limit.diff But I trigger it based on kmem thresholds. See arc_reclaim_pages(). I can try to put together a smaller patch tomorrow evening that signals the pager based on size vs. c target. The main reason I didn't implement it in my previous patch was because I was concerned with the arc being prevented from growing at all once its been shrunk. It only grows when size exceeds its current target by a certain amount. This may require some careful balancing or hysteresis or something. Thanks. - Ben