From owner-cvs-all@FreeBSD.ORG Thu Apr 15 11:55:13 2004 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9C29816A4CE; Thu, 15 Apr 2004 11:55:13 -0700 (PDT) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3807A43D31; Thu, 15 Apr 2004 11:55:13 -0700 (PDT) (envelope-from robert@fledge.watson.org) Received: from fledge.watson.org (localhost [127.0.0.1]) by fledge.watson.org (8.12.10/8.12.10) with ESMTP id i3FIsVPq001463; Thu, 15 Apr 2004 14:54:31 -0400 (EDT) (envelope-from robert@fledge.watson.org) Received: from localhost (robert@localhost)i3FIsVli001460; Thu, 15 Apr 2004 14:54:31 -0400 (EDT) (envelope-from robert@fledge.watson.org) Date: Thu, 15 Apr 2004 14:54:31 -0400 (EDT) From: Robert Watson X-Sender: robert@fledge.watson.org To: John Baldwin In-Reply-To: <200404151435.25450.jhb@FreeBSD.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: cvs-src@FreeBSD.org cc: Mike Silbersack cc: src-committers@FreeBSD.org cc: Mark Murray cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/random randomdev.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Apr 2004 18:55:13 -0000 On Thu, 15 Apr 2004, John Baldwin wrote: > 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 <>< 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. We also need to generate sleep warnings it M_TRYWAIT is passed to the mbuf allocator, which I believe we currently don't do. Also, did we ever re-add the sleep warning to the process tracing code? Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Senior Research Scientist, McAfee Research