From owner-cvs-src Tue Feb 25 20:49:18 2003 Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 65D6B37B401; Tue, 25 Feb 2003 20:49:16 -0800 (PST) Received: from cain.gsoft.com.au (genesi.lnk.telstra.net [139.130.136.161]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F4DB43FAF; Tue, 25 Feb 2003 20:49:13 -0800 (PST) (envelope-from doconnor@gsoft.com.au) Received: from [127.0.0.1] (localhost [127.0.0.1]) by cain.gsoft.com.au (8.12.4/8.12.6) with ESMTP id h1Q4n8js004689; Wed, 26 Feb 2003 15:19:08 +1030 (CST) (envelope-from doconnor@gsoft.com.au) X-Authentication-Warning: cain.gsoft.com.au: Host localhost [127.0.0.1] claimed to be [127.0.0.1] Subject: Re: cvs commit: src/sys/dev/aac aac.c aac_cam.c aac_disk.c aacvar.h From: "Daniel O'Connor" To: Scott Long Cc: src-committers@FreeBSD.ORG, cvs-src@FreeBSD.ORG, cvs-all@FreeBSD.ORG In-Reply-To: <200302260446.h1Q4kLO6042833@repoman.freebsd.org> References: <200302260446.h1Q4kLO6042833@repoman.freebsd.org> Content-Type: text/plain Organization: Message-Id: <1046234946.45422.98.camel@chowder.gsoft.com.au> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.2.2 Date: 26 Feb 2003 15:19:07 +1030 Content-Transfer-Encoding: 7bit X-Spam-Score: -1 () CARRIAGE_RETURNS,IN_REP_TO,QUOTED_EMAIL_TEXT,REFERENCES,SPAM_PHRASE_00_01 X-Scanned-By: MIMEDefang 2.16 (www . roaringpenguin . com / mimedefang) Sender: owner-cvs-src@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Wed, 2003-02-26 at 15:16, Scott Long wrote: > - the mutex aac_io_lock protects the main codepaths which handle queues and > hardware registers. Only one acquire/release is done in the top-half and > the taskqueue. This mutex also applies to the userland command path and > CAM data path. > - Move the taskqueue to the new Giant-free version. > - Register the disk device with DISKFLAG_NOGIANT so the top-half processing > runs without Giant. > - Move the dynamic command allocator to the worker thread to avoid locking > issues with bus_dmamem_alloc(). > > This gives about 20% improvement in most of my benchmarks. Are the tests on an SMP machine? -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 9A8C 569F 685A D928 5140 AE4B 319B 41F4 5D17 FDD5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-src" in the body of the message