simplifying linux_emul_convpath()
Robert Watson
rwatson at freebsd.org
Wed Jan 14 12:14:13 PST 2004
On Thu, 15 Jan 2004, Bruce Evans wrote:
> > That inode numbers are subject to collision is a practical reality with
> > the existence of globally scalable distributed file systems. Many file
> > formats, APIs, and ABIs assume a 32-bit inode number; however, distributed
> > systems like AFS support hundreds of thousands, if not millions, of
> > concurrent users and computer systems. Expecting each user/computer to
>
> It's a practical reality that file systems with inode numbers >= 2^32
> cannot work in FreeBSD now.
So what ends up happening is what Coda and Arla do: take the 96-bit unique
identifier (viceid or fid), hash it to a somewhat unique value, and stick
the result in the vattr returned by VOP_GETATTR(). And sometimes
applications just get confused. Of course, many of those applications were
quite capable of getting confused before -- unless you hold a file open,
you can't prevent its inode number from being reused if the file is
deleted and a new one created.
Robert N M Watson FreeBSD Core Team, TrustedBSD Projects
robert at fledge.watson.org Senior Research Scientist, McAfee Research
More information about the freebsd-current
mailing list