Messages in this thread | | | Date | Wed, 23 Jun 1999 21:10:58 -0400 (EDT) | From | Alexander Viro <> | Subject | Re: RFC: BSD system call revoke? |
| |
On Thu, 24 Jun 1999, Bernd Kaindl wrote:
> > Basically the idea is to ruin the file completely, and the only > > f_op operation doable to the file is close(). All others yield > > -EIO. > > May also be possible, we just should use better stubs like in char/tty_io.c > > > Also, less multiprocessing hazards at the change of f_op, when > > compared to going in and calling filp_close() at all files which > > get same "kill" treatment... > > I also think so, i'm interested what Al Viro is saying about the f_op.
Oh, look - revoke() thread again ;-) Dunno... ->f_op *may* be the right solution, but I didn't look at it too hard. BSD solution is cleaner, but then it involves additional check on all pathes (they do it on something between our dcache and inode layers marking the vnode as bad; not too fine for our setup, since way too may places rely on (a) ability to pick the inode with iget() and (b) assumption that inode is never, ever unhashed while in use.) We *might* get out alive if we would guarantee that if inode is marked bad it would prevent the appearance of the new copy until it will become clean. Will require non-trivial playing with fs/inode.c, but it may be doable...
- 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/
| |