newer vnode ops

Matthew Dillon dillon at
Sat Apr 1 14:04:58 PST 2006

:As I was bashing away at nfs_vnops.c, I noticed that there is a replacement
:for lookup and a comment w.r.t. new vnode ops. Are these doable now?
:(I'm wondering if I can do the new ones or should bash away on the old
: stuff for creating/deleting stuff?)

    Yup.  You should be able to completely get rid of the old namespace
    VOP's by implementing only the newer ones.  The kernel only uses the
    VOP_N*() versions, but filesystems which do not implement the new 
    versions (which is nearly all of them at the moment) will drop down
    into compatibility routines in kern/vfs_default.c which call the 
    old versions.  ONLY the compatibility code, and possibly code within
    a particular VFS, calls the old functions.

    In order to convert a filesystem, you must convert all the vop_old*
    vnodeops to the new versions, and you have to convert vop_old_lookup
    *LAST* because all the compatibility routines for the other vops
    will still try to use vop_old_lookup.

:btw, if anyone is interested in seeing what I do to hook into my newer
:nfs client, just email and I can pass along the "bits-de-jur" nfs_vnops.c.
:(Not useful for anything yet, though:-)
:Thanks in advance for any info, rick

					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>

More information about the Kernel mailing list