From owner-freebsd-hackers Sun Jun 27 17:52: 7 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from lestat.nas.nasa.gov (lestat.nas.nasa.gov [129.99.50.29]) by hub.freebsd.org (Postfix) with ESMTP id 474D114D21 for ; Sun, 27 Jun 1999 17:51:54 -0700 (PDT) (envelope-from thorpej@lestat.nas.nasa.gov) Received: from lestat (localhost [127.0.0.1]) by lestat.nas.nasa.gov (8.8.8/8.6.12) with ESMTP id RAA07365; Sun, 27 Jun 1999 17:51:07 -0700 (PDT) Message-Id: <199906280051.RAA07365@lestat.nas.nasa.gov> To: Alexander Viro Cc: der Mouse , Francois-Rene Rideau , FreeBSD Hackers , NetBSD Kernel , Linux Kernel Subject: Re: Improving the Unix API Reply-To: Jason Thorpe From: Jason Thorpe Date: Sun, 27 Jun 1999 17:51:06 -0700 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Sun, 27 Jun 1999 20:43:28 -0400 (EDT) Alexander Viro wrote: > Forced revoke()? But then there is mmap() and IIRC revoke() on *BSD > doesn't unmap the stuff. Oh, shit, there is such thing as pending > unlink... Does vgone() force it? It doesn't unmap the region, but it doesn't allow any more page faults from that backing vnode (the pager will get an error from the file system, and thus send a SIGSEGV to the process), and no dirty pages can be cleaned to that vnode. I mean, you wouldn't invalidate any buffers the user read the file into when the file was revoke()'d, would you? :-) Regarding unlink()... those aren't operations on vnodes. Those are operations on the filesystem namespace, and are thus (correctly) unaffected. -- Jason R. Thorpe To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message