vn_fullpath()

Matthew Dillon dillon at apollo.backplane.com
Mon Feb 21 13:47:25 PST 2005


:> tree if elements are missing, either directly, or by asking the file
:> system using the above call.  It's the last step from the file back to a
:> parent directory that is the hardest.  Alternatively, we can back off
:> dropping the intermediate nodes and see to what extent that hurts vs.
:> helps.
:
:I seem to recall that DragonFly keeps the intermediate nodes.

    There's no way to backport that, it would be hundreds of man hours of
    work.  DragonFly uses a totally different namecache topology now, one
    that is mandatory and which guarentees the existance of intermediate
    nodes.

    You'd have to implement something similar to libc's getcwd code.  e.g.
    ".." through and scan each directory to find the matching inode if
    the namecache entry is not present.  It actually wouldn't be too hard
    to do.  It wouldn't be efficient, but vn_fullpath() is rarely used
    so it shouldn't be a problem.

					-Matt
					Matthew Dillon 
					<dillon at backplane.com>


More information about the freebsd-hackers mailing list