Date: Wed, 19 Jan 2000 22:58:46 -0800 From: Jason Evans <jasone@canonware.com> To: Bruce Evans <bde@zeta.org.au> Cc: Alfred Perlstein <bright@wintelcom.net>, 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> In-Reply-To: <Pine.BSF.4.21.0001201741580.2347-100000@alphplex.bde.org>; from bde@zeta.org.au on Thu, Jan 20, 2000 at 05:50:09PM %2B1100 References: <20000119210539.F20191@fw.wintelcom.net> <Pine.BSF.4.21.0001201741580.2347-100000@alphplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jan 20, 2000 at 05:50:09PM +1100, Bruce Evans wrote: > On Wed, 19 Jan 2000, Alfred Perlstein wrote: > > > * Jason Evans <jasone@FreeBSD.org> [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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000119225846.W27689>