From owner-cvs-all Wed Jan 19 23: 0:12 2000 Delivered-To: cvs-all@freebsd.org Received: from canonware.com (canonware.com [207.20.242.18]) by hub.freebsd.org (Postfix) with SMTP id 909E715381 for ; Wed, 19 Jan 2000 23:00:08 -0800 (PST) (envelope-from jasone@canonware.com) Received: (qmail 44553 invoked by uid 1001); 20 Jan 2000 06:58:46 -0000 Date: Wed, 19 Jan 2000 22:58:46 -0800 From: Jason Evans To: Bruce Evans Cc: Alfred Perlstein , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern vfs_aio.c Message-ID: <20000119225846.W27689@sturm.canonware.com> References: <20000119210539.F20191@fw.wintelcom.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0i In-Reply-To: ; from bde@zeta.org.au on Thu, Jan 20, 2000 at 05:50:09PM +1100 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk On Thu, Jan 20, 2000 at 05:50:09PM +1100, Bruce Evans wrote: > On Wed, 19 Jan 2000, Alfred Perlstein wrote: > > > * Jason Evans [000119 18:23] wrote: > > > jasone 2000/01/19 18:00:00 PST > > > > > > Modified files: > > > sys/kern vfs_aio.c > > > Log: > > > Don't tsleep() while at splbio(). > > > > Unless it fixes some other bug, sleeping with spl raised is perfectly valid. > > And usually necessary to avoid races (Locking 101, part 3: an spl is > not a lock...). However, it may not be necessary in vfs_aio.c, since > the wakeups may only come from other processes and not from interrupt > handlers. vfs_aio.c sleeps outside of an spl'ed section in about 6 > other places, including 2 in very similar code. The person who sent me the patch was convinced that it was a necessary change due to problems he had run into, and he convinced me at the time, though my understanding of the code isn't great. Contrary to a previous statement, I'm going to leave the code as is for now and actually write some test code to try to produce a problem with/without the change. Jason To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message