Re: Improving the Unix API

Jason Thorpe (thorpej@nas.nasa.gov)
Sun, 27 Jun 1999 17:51:06 -0700


On Sun, 27 Jun 1999 20:43:28 -0400 (EDT)
Alexander Viro <viro@math.psu.edu> 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 <thorpej@nas.nasa.gov>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/