From owner-freebsd-stable@FreeBSD.ORG Sun Nov 27 20:48:57 2005 Return-Path: X-Original-To: stable@FreeBSD.ORG Delivered-To: freebsd-stable@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8701016A43B; Sun, 27 Nov 2005 20:48:57 +0000 (GMT) (envelope-from sos@deepcore.dk) Received: from spider.deepcore.dk (cpe.atm2-0-53484.0x50a6c9a6.abnxx9.customer.tele.dk [80.166.201.166]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1244343D5E; Sun, 27 Nov 2005 20:48:39 +0000 (GMT) (envelope-from sos@deepcore.dk) Received: from [194.192.25.142] (spider.deepcore.dk [194.192.25.142]) by spider.deepcore.dk (8.13.4/8.13.4) with ESMTP id jARKmX32005068; Sun, 27 Nov 2005 21:48:36 +0100 (CET) (envelope-from sos@deepcore.dk) Message-ID: <438A1BA1.1010407@deepcore.dk> Date: Sun, 27 Nov 2005 21:48:33 +0100 From: =?ISO-8859-1?Q?S=F8ren_Schmidt?= User-Agent: Mozilla Thunderbird 1.0.6 (X11/20051013) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Michael Butler References: <438A116C.3010803@protected-networks.net> In-Reply-To: <438A116C.3010803@protected-networks.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-mail-scanned: by DeepCore Virus & Spam killer v1.16 Cc: stable@FreeBSD.ORG, =?ISO-8859-1?Q?S=F8ren_Schmidt?= Subject: Re: ata (raid) patches X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Nov 2005 20:48:57 -0000 Michael Butler wrote: > 1) the ata-raid driver currently leaks ata_composite and ata_request > structures into "neverland" in a mirrored configuration. This can be > observed using "sysctl -a | grep ^ata_" and noting the increasing > "in-use" count as time goes on. Eventually, this causes the kernel to > run out of memory. This is fixed by tracking the request counts on each > composite request. Looks pretty much on the spot, I'll look this one over and get it committed once I'm satisfied with it fixing the bug, thanks a bunch for hunting this one down ! > 2) another part of this patch is to ata-queue where a channel lock is > asserted in a (hopefully rare) rebuild process even if the dependencies > flag is set (we're waiting for a read). Moving the test for a dependency > outside of the lock saves waiting on it when nothing can be done. A > small nit with near negligible impact but, when you're waiting for a > rebuild ... I dont think you can measure this actually, but it doesn't hurt at least to move the lock outside. > 3) another part of this patch is to ata-raid where the choice of drive > from which to read favours one side of a mirror even when both drives > are near the block(s) we want. Because the mirror is on another channel > on the Highpoint controller, it performs (marginally :-() better when we > toggle between them. Hmm, well, depends on what sort of behavior one wants to optimise for. I have a few other patches for optimisations but havn't decided what to eventually use yet. Guess its time for me to run some tests on this.. I'll look into get this integrated, again thanks for digging in and doing the hard work of finding the problem(s) !! -Søren