Skip site navigation (1)Skip section navigation (2)
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>