Subject: Re: metahook(9)
To: None <tls@rek.tjls.com>
From: Elad Efrat <elad@NetBSD.org>
List: tech-kern
Date: 06/17/2006 01:23:35
Thor Lancelot Simon wrote:

> No.  An abstraction that works with "some" filesystems is a bad abstraction.

I agree. Introducing regression in functionality is also bad.

> But if, because of the design of the thing, it doesn't
> work with filesystems that don't look enough like normal filesystems, when
> by using a better abstraction, it could, that's not a great idea.

Who said it doesn't work? did you try it? I said that no attempt has
been made to make it work -- which is true. I don't have an environment
to test it in.

Did the relevant parts to our discussion worked for NFS? I believe so.

> Is it too painful to use file handles?

Let's see. Right now we pass fsid/fileid from struct vattr. To get
a vattr we need VOP_GETATTR() on a vp. We can get a file handle from
a vp using vptofh. So far so good.

The problem is with file-systems that simply don't have a vptofh.
It's left as an exercise to the reader to find out what those are.
(hint: we'll be introducing functionality regression)

Do you know for sure that we cannot use the fsid/fileid we get from
VOP_GETATTR() on NFS file-systems?

(sorry, but I'm not too deeply familiar with file-system internals..)

-e.

-- 
Elad Efrat