cvs commit: src/sys/dev/random randomdev.c

John Baldwin jhb at FreeBSD.org
Thu Apr 15 11:44:58 PDT 2004


On Thursday 15 April 2004 03:32 am, Mike Silbersack wrote:
> On Tue, 13 Apr 2004, John Baldwin wrote:
> > You should drop the lock before uiomove().  If the uio can possibly
> > reference user memory, then uiomove() will do a copyout() which can fault
> > and thus sleep if the page is in swap.
> >
> > --
> > John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
>
> I'm going to have a similar problem in sendfile when I try to de-giantify
> it, and I'm sure read / write will have issues as well... will WITNESS
> catch this potential problem?

Not currently.  One could add a WITNESS_WARN() check to uiomove() fairly 
easily though to force witness to catch this.

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the cvs-src mailing list