Received: by mail.netbsd.org (Postfix, from userid 605) id 3F1D514A181; Sat, 23 Apr 2011 06:29:08 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 4CDFF14A180 for ; Sat, 23 Apr 2011 06:29:07 +0000 (UTC) X-Virus-Scanned: amavisd-new at NetBSD.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.NetBSD.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id T38gOQAK9pnd for ; Sat, 23 Apr 2011 06:29:06 +0000 (UTC) Received: from cvs.netbsd.org (cvs.NetBSD.org [IPv6:2001:4f8:3:7:2e0:81ff:fe30:95bd]) by mail.netbsd.org (Postfix) with ESMTP id 8BEE114A16D for ; Sat, 23 Apr 2011 06:29:06 +0000 (UTC) Received: by cvs.netbsd.org (Postfix, from userid 500) id 685C9175DD; Sat, 23 Apr 2011 06:29:06 +0000 (UTC) MIME-Version: 1.0 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Date: Sat, 23 Apr 2011 06:29:06 +0000 From: "matthew green" Subject: CVS commit: src/sys/dev/raidframe To: source-changes@NetBSD.org X-Mailer: log_accum Message-Id: <20110423062906.685C9175DD@cvs.netbsd.org> Sender: source-changes-owner@NetBSD.org List-Id: source-changes.NetBSD.org Precedence: bulk Reply-To: source-changes-d@NetBSD.org Mail-Reply-To: "matthew green" Mail-Followup-To: source-changes-d@NetBSD.org Module Name: src Committed By: mrg Date: Sat Apr 23 06:29:06 UTC 2011 Modified Files: src/sys/dev/raidframe: rf_driver.c rf_engine.c rf_netbsdkintf.c rf_paritymap.c rf_raid.h rf_states.c Log Message: convert the iodone_lock to a mutex, and use a condvar for signalling. this only handles the smallest use of old simple_lock/tsleep/wakeup APIs inside raidframe, and it points out that cv(9)'s have only one wait channel per cv, whereas each tsleep() caller can specify a different wait channel. this change removes the difference between normal raidio and waiting for IO during shutdown. i've tested this one 3 systems, ran atf, and had mlelstv and rmind review the change. To generate a diff of this commit: cvs rdiff -u -r1.122 -r1.123 src/sys/dev/raidframe/rf_driver.c cvs rdiff -u -r1.41 -r1.42 src/sys/dev/raidframe/rf_engine.c cvs rdiff -u -r1.284 -r1.285 src/sys/dev/raidframe/rf_netbsdkintf.c cvs rdiff -u -r1.6 -r1.7 src/sys/dev/raidframe/rf_paritymap.c cvs rdiff -u -r1.38 -r1.39 src/sys/dev/raidframe/rf_raid.h cvs rdiff -u -r1.44 -r1.45 src/sys/dev/raidframe/rf_states.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.