vn_fullpath() again

Igor Shmukler shmukler at mail.ru
Tue Sep 6 08:27:37 PDT 2005


Perhaps, I do not get it or maybe you are do not getting my point.

There are times when resolving would not be possible or a name returned is not necessarily the one used when file was first accessed. We have discussed it here and everyone agreed on that. The hardlinks or files unlinked while vnode is still open are corner cases. The unlink is a bit more difficult to deal with, but hardlinks are probably not a big issue. As long as we can get A name, we may not even need to know THE name.

I am pleasantly surprised to know that fabric of the universe is not MSDOS. :)


> Igor Shmukler <shmukler at mail.ru> writes:
> > Dag-Erling SmЬrgrav <des at des.no> writes:
> > > Igor Shmukler <shmukler at mail.ru> writes:
> > > > You are correct about the Unix file system organization, but does it
> > > > mean reliable vnode to fullname conversation is not possible?
> > > Yes.  Get over it.
> > Well, I do not think it is a Yes. I very much think it is a No. You
> > should have continued reading my email 'til the middle or even
> > farther.
> 
> I did.  You just don't get it.  A file may be associated with zero,
> one or more names and none of these names are more correct or
> authoritative than any of the others.  If a user does 'ln /bin/ls
> /tmp' (assuming /bin and /tmp are on the same filesystem), it may be
> obvious to you that /bin/ls is the "real name" is /tmp/ls is just an
> alias, but it is not obvious to the kernel.  In fact, the kernel is
> unable to see any difference at all between these two names.
> 
> Storing the name that was used to access a file in the vnode does not
> solve anything, because the vnode is shared by all users of that file,
> regardless of which name they used to access it, and there is no
> guarantee that the name that was used to access a file two seconds ago
> still references the same file, or any file at all; the file may have
> been renamed or deleted, or a new filesystem may have been mounted
> that covers the namespace that file was in.
> 
> In summary: THERE IS NO WAY TO UNIQUELY AND RELIABLY MAP A VNODE BACK
> TO A NAME, and I wish people would stop insisting that there must be.
> All the world is not MS-DOS.
> 
> DES
> -- 
> Dag-Erling SmЬrgrav - des at des.no
> 


Играй, общайся!  Скачай новую версию М-Агента http://r.mail.ru/cln2659/agent.mail.ru



More information about the freebsd-hackers mailing list