Re: what is our answer to ZFS?

From: Anton Altaparmakov
Date: Tue Nov 22 2005 - 14:25:16 EST

On Tue, 22 Nov 2005, Theodore Ts'o wrote:
> On Tue, Nov 22, 2005 at 04:55:08PM +0000, Anton Altaparmakov wrote:
> > > That assumption is probably made because that's what POSIX and Single
> > > Unix Specification define: "The st_ino and st_dev fields taken together
> > > uniquely identify the file within the system." Don't blame code that
> > > follows standards for breaking.
> >
> > The standards are insufficient however. For example dealing with named
> > streams or extended attributes if exposed as "normal files" would
> > naturally have the same st_ino (given they are the same inode as the
> > normal file data) and st_dev fields.
> Um, but that's why even Solaris's openat(2) proposal doesn't expose
> streams or extended attributes as "normal files". The answer is that
> you can't just expose named streams or extended attributes as "normal
> files" without screwing yourself.

Reiser4 does I believe...

> Also, I haven't checked to see what Solaris does, but technically
> their UFS implementation does actually use separate inodes for their
> named streams, so stat(2) could return separate inode numbers for the
> named streams. (In fact, if you take a Solaris UFS filesystem with
> extended attributs, and run it on a Solaris 8 fsck, the directory
> containing named streams/extended attributes will show up in
> lost+found.)

I was not talking about Solaris/UFS. NTFS has named streams and extended
attributes and both are stored as separate attribute records inside the
same inode as the data attribute. (A bit simplified as multiple inodes
can be in use for one "file" when an inode's attributes become large than
an inode - in that case attributes are either moved whole to a new inode
and/or are chopped up in bits and each bit goes to a different inode.)

Best regards,

Anton Altaparmakov <aia21 at> (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer / IRC: #ntfs on
WWW: &
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at